ETH Price: $3,894.45 (+0.26%)

Contract

0xEfbdd2ca166B193075Efe8530a612c5daa10012a
 

Overview

ETH Balance

0 ETH

Eth Value

$0.00

Multichain Info

No addresses found
Transaction Hash
Method
Block
From
To
Transfer152918862022-08-07 0:10:08861 days ago1659831008IN
KickICO: Old Token 1
0 ETH0.000153752.5625
Transfer126123022021-06-11 8:54:301283 days ago1623401670IN
KickICO: Old Token 1
0 ETH0.0022360811.00000134
Transfer123120012021-04-25 21:57:181329 days ago1619387838IN
KickICO: Old Token 1
0 ETH0.0113836856
Transfer122480172021-04-16 0:47:121339 days ago1618534032IN
KickICO: Old Token 1
0 ETH0.0178896988.0000016
Transfer117157722021-01-24 2:52:381421 days ago1611456758IN
KickICO: Old Token 1
0 ETH0.002959249.32
Transfer111305162020-10-26 6:55:301511 days ago1603695330IN
KickICO: Old Token 1
0 ETH0.0037937163.22857164
Transfer108881032020-09-18 19:39:141548 days ago1600457954IN
KickICO: Old Token 1
0 ETH0.03611218152.20000123
Transfer106809922020-08-18 1:21:201580 days ago1597713680IN
KickICO: Old Token 1
0 ETH0.003660.00000204
Transfer101161612020-05-22 14:29:221668 days ago1590157762IN
KickICO: Old Token 1
0 ETH0.0022237
Transfer100811292020-05-17 3:29:231673 days ago1589686163IN
KickICO: Old Token 1
0 ETH0.0016227
Transfer100654232020-05-14 16:42:021675 days ago1589474522IN
KickICO: Old Token 1
0 ETH0.00252942.15
Transfer100653812020-05-14 16:31:151675 days ago1589473875IN
KickICO: Old Token 1
0 ETH0.0051970986.61817753
Transfer100651172020-05-14 15:33:281675 days ago1589470408IN
KickICO: Old Token 1
0 ETH0.0017819929.69999974
Approve94601752020-02-11 6:57:201769 days ago1581404240IN
KickICO: Old Token 1
0 ETH0.000175934
Transfer94601692020-02-11 6:54:181769 days ago1581404058IN
KickICO: Old Token 1
0 ETH0.000114091.8
Transfer94601392020-02-11 6:48:411769 days ago1581403721IN
KickICO: Old Token 1
0 ETH0.00022331.8
Approve94601302020-02-11 6:46:091769 days ago1581403569IN
KickICO: Old Token 1
0 ETH0.000175884
Transfer94601042020-02-11 6:41:091769 days ago1581403269IN
KickICO: Old Token 1
0 ETH0.0036012225
Transfer94600062020-02-11 6:20:061769 days ago1581402006IN
KickICO: Old Token 1
0 ETH0.005931725
Transfer80849512019-07-04 12:48:051991 days ago1562244485IN
KickICO: Old Token 1
0 ETH0.000610
Transfer79629532019-06-15 11:47:502010 days ago1560599270IN
KickICO: Old Token 1
0 ETH0.000369376.15625
Transfer78995112019-06-05 13:28:492020 days ago1559741329IN
KickICO: Old Token 1
0 ETH0.0007944113.24029849
Transfer78429102019-05-27 17:00:042028 days ago1558976404IN
KickICO: Old Token 1
0 ETH0.00112218.7
Transfer75488812019-04-11 20:30:002074 days ago1555014600IN
KickICO: Old Token 1
0 ETH0.000025891
Transfer75485072019-04-11 19:05:162074 days ago1555009516IN
KickICO: Old Token 1
0 ETH0.000245381
View all transactions

View more zero value Internal Transactions in Advanced View mode

Advanced mode:
Loading...
Loading

Contract Source Code Verified (Exact Match)

Contract Name:
CSToken

Compiler Version
v0.4.16+commit.d7661dd9

Optimization Enabled:
Yes with 200 runs

Other Settings:
default evmVersion
/**
 *Submitted for verification at Etherscan.io on 2017-08-28
*/

pragma solidity ^0.4.2;


contract owned {
	address public owner;

	function owned() {
		owner = msg.sender;
	}

	function changeOwner(address newOwner) onlyOwner {
		owner = newOwner;
	}

	modifier onlyOwner {
		require(msg.sender == owner);
		_;
	}
}


contract tokenRecipient {function receiveApproval(address _from, uint256 _value, address _token, bytes _extraData);}


contract Utils {
	/**
		constructor
	*/
	function Utils() {
	}

	// validates an address - currently only checks that it isn't null
	modifier validAddress(address _address) {
		require(_address != 0x0);
		_;
	}

	// verifies that the address is different than this contract address
	modifier notThis(address _address) {
		require(_address != address(this));
		_;
	}

	// Overflow protected math functions

	/**
		@dev returns the sum of _x and _y, asserts if the calculation overflows

		@param _x   value 1
		@param _y   value 2

		@return sum
	*/
	function safeAdd(uint256 _x, uint256 _y) internal returns (uint256) {
		uint256 z = _x + _y;
		assert(z >= _x);
		return z;
	}

	/**
		@dev returns the difference of _x minus _y, asserts if the subtraction results in a negative number

		@param _x   minuend
		@param _y   subtrahend

		@return difference
	*/
	function safeSub(uint256 _x, uint256 _y) internal returns (uint256) {
		assert(_x >= _y);
		return _x - _y;
	}
}


contract CSToken is owned, Utils {
	struct Dividend {uint256 time; uint256 tenThousandth; uint256 countComplete;}

	/* Public variables of the token */
	string public standard = 'Token 0.1';

	string public name = 'KickCoin';

	string public symbol = 'KC';

	uint8 public decimals = 8;

	uint256 _totalSupply = 0;

	/* This creates an array with all balances */
	mapping (address => uint256) balances;

	mapping (address => mapping (uint256 => uint256)) public agingBalanceOf;

	uint[] agingTimes;

	Dividend[] dividends;

	mapping (address => mapping (address => uint256)) allowed;
	/* This generates a public event on the blockchain that will notify clients */
	event Transfer(address indexed from, address indexed to, uint256 value);

	event AgingTransfer(address indexed from, address indexed to, uint256 value, uint256 agingTime);

	event Approval(address indexed _owner, address indexed _spender, uint256 _value);
	// triggered when the total supply is increased
	event Issuance(uint256 _amount);
	// triggered when the total supply is decreased
	event Destruction(uint256 _amount);

	address[] public addressByIndex;

	mapping (address => bool) addressAddedToIndex;

	mapping (address => uint) agingTimesForPools;

	uint16 currentDividendIndex = 1;

	mapping (address => uint) calculatedDividendsIndex;

	bool public transfersEnabled = true;

	event NewSmartToken(address _token);

	/* Initializes contract with initial supply tokens to the creator of the contract */
	function CSToken() {
		owner = msg.sender;
		// So that the index starts with 1
		dividends.push(Dividend(0, 0, 0));
		// 31.10.2017 09:00:00
		dividends.push(Dividend(1509440400, 30, 0));
		// 30.11.2017 09:00:00
		dividends.push(Dividend(1512032400, 20, 0));
		// 31.12.2017 09:00:00
		dividends.push(Dividend(1514710800, 10, 0));
		// 31.01.2018 09:00:00
		dividends.push(Dividend(1517389200, 5, 0));
		// 28.02.2018 09:00:00
		dividends.push(Dividend(1519808400, 10, 0));
		// 31.03.2018 09:00:00
		dividends.push(Dividend(1522486800, 20, 0));
		// 30.04.2018 09:00:00
		dividends.push(Dividend(1525078800, 30, 0));
		// 31.05.2018 09:00:00
		dividends.push(Dividend(1527757200, 50, 0));
		// 30.06.2018 09:00:00
		dividends.push(Dividend(1530349200, 30, 0));
		// 31.07.2018 09:00:00
		dividends.push(Dividend(1533027600, 20, 0));
		// 31.08.2018 09:00:00
		dividends.push(Dividend(1535706000, 10, 0));
		// 30.09.2018 09:00:00
		dividends.push(Dividend(1538298000, 5, 0));
		// 31.10.2018 09:00:00
		dividends.push(Dividend(1540976400, 10, 0));
		// 30.11.2018 09:00:00
		dividends.push(Dividend(1543568400, 20, 0));
		// 31.12.2018 09:00:00
		dividends.push(Dividend(1546246800, 30, 0));
		// 31.01.2019 09:00:00
		dividends.push(Dividend(1548925200, 60, 0));
		// 28.02.2019 09:00:00
		dividends.push(Dividend(1551344400, 30, 0));
		// 31.03.2019 09:00:00
		dividends.push(Dividend(1554022800, 20, 0));
		// 30.04.2019 09:00:00
		dividends.push(Dividend(1556614800, 10, 0));
		// 31.05.2019 09:00:00
		dividends.push(Dividend(1559307600, 20, 0));
		// 30.06.2019 09:00:00
		dividends.push(Dividend(1561885200, 30, 0));
		// 31.07.2019 09:00:00
		dividends.push(Dividend(1564563600, 20, 0));
		// 31.08.2019 09:00:00
		dividends.push(Dividend(1567242000, 10, 0));
		// 30.09.2019 09:00:00
		dividends.push(Dividend(1569834000, 5, 0));

		NewSmartToken(address(this));
	}

	modifier transfersAllowed {
		assert(transfersEnabled);
		_;
	}

	function totalSupply() constant returns (uint256 totalSupply) {
		totalSupply = _totalSupply;
	}

	function balanceOf(address _owner) constant returns (uint256 balance) {
		return balances[_owner];
	}

	function allowance(address _owner, address _spender) constant returns (uint256 remaining) {
		return allowed[_owner][_spender];
	}

	bool allAgingTimesHasBeenAdded = false;
	function addAgingTime(uint256 time) onlyOwner {
		require(!allAgingTimesHasBeenAdded);
		agingTimes.push(time);
	}

	function allAgingTimesAdded() onlyOwner {
		allAgingTimesHasBeenAdded = true;
	}

	function calculateDividends(uint256 limit) {
		require(now >= dividends[currentDividendIndex].time);
		require(limit > 0);

		limit = dividends[currentDividendIndex].countComplete + limit;

		if (limit > addressByIndex.length) {
			limit = addressByIndex.length;
		}

		for (uint256 i = dividends[currentDividendIndex].countComplete; i < limit; i++) {
			addDividendsForAddress(addressByIndex[i]);
		}
		if (limit == addressByIndex.length) {
			currentDividendIndex++;
		}
		else {
			dividends[currentDividendIndex].countComplete = limit;
		}
	}

	function addDividendsForAddress(address _address) internal {
		// skip calculating dividends, if already calculated for this address
		if (calculatedDividendsIndex[_address] >= currentDividendIndex) return;

		uint256 add = balances[_address] * dividends[currentDividendIndex].tenThousandth / 1000;
		balances[_address] += add;
		Transfer(this, _address, add);
		Issuance(add);
		_totalSupply = safeAdd(_totalSupply, add);

		if (agingBalanceOf[_address][0] > 0) {
			agingBalanceOf[_address][0] += agingBalanceOf[_address][0] * dividends[currentDividendIndex].tenThousandth / 1000;
			for (uint256 k = 0; k < agingTimes.length; k++) {
				agingBalanceOf[_address][agingTimes[k]] += agingBalanceOf[_address][agingTimes[k]] * dividends[currentDividendIndex].tenThousandth / 1000;
			}
		}
		calculatedDividendsIndex[_address] = currentDividendIndex;
	}

	/* Send coins */
	function transfer(address _to, uint256 _value) transfersAllowed returns (bool success) {
		checkMyAging(msg.sender);
		if (now >= dividends[currentDividendIndex].time) {
			addDividendsForAddress(msg.sender);
			addDividendsForAddress(_to);
		}

		require(accountBalance(msg.sender) >= _value);

		// Subtract from the sender
		balances[msg.sender] -= _value;

		if (agingTimesForPools[msg.sender] > 0 && agingTimesForPools[msg.sender] > now) {
			addToAging(msg.sender, _to, agingTimesForPools[msg.sender], _value);
		}

		balances[_to] = safeAdd(balances[_to], _value);

		addIndex(_to);
		Transfer(msg.sender, _to, _value);
		return true;
	}

	function mintToken(address target, uint256 mintedAmount, uint256 agingTime) onlyOwner {
		if (agingTime > now) {
			addToAging(owner, target, agingTime, mintedAmount);
		}

		balances[target] += mintedAmount;

		_totalSupply += mintedAmount;
		Issuance(mintedAmount);
		addIndex(target);
		Transfer(this, target, mintedAmount);
	}

	function addIndex(address _address) internal {
		if (!addressAddedToIndex[_address]) {
			addressAddedToIndex[_address] = true;
			addressByIndex.push(_address);
		}
	}

	function addToAging(address from, address target, uint256 agingTime, uint256 amount) internal {
		agingBalanceOf[target][0] += amount;
		agingBalanceOf[target][agingTime] += amount;
		AgingTransfer(from, target, amount, agingTime);
	}

	/* Allow another contract to spend some tokens in your behalf */
	function approve(address _spender, uint256 _value) returns (bool success) {
		allowed[msg.sender][_spender] = _value;
		Approval(msg.sender, _spender, _value);
		return true;
	}

	/* Approve and then communicate the approved contract in a single tx */
	function approveAndCall(address _spender, uint256 _value, bytes _extraData) returns (bool success) {
		tokenRecipient spender = tokenRecipient(_spender);
		if (approve(_spender, _value)) {
			spender.receiveApproval(msg.sender, _value, this, _extraData);
			return true;
		}
	}

	/* A contract attempts to get the coins */
	function transferFrom(address _from, address _to, uint256 _value) transfersAllowed returns (bool success) {
		checkMyAging(_from);
		if (now >= dividends[currentDividendIndex].time) {
			addDividendsForAddress(_from);
			addDividendsForAddress(_to);
		}
		// Check if the sender has enough
		require(accountBalance(_from) >= _value);

		// Check allowed
		require(_value <= allowed[_from][msg.sender]);

		// Subtract from the sender
		balances[_from] -= _value;
		// Add the same to the recipient
		balances[_to] = safeAdd(balances[_to], _value);

		allowed[_from][msg.sender] -= _value;

		if (agingTimesForPools[_from] > 0 && agingTimesForPools[_from] > now) {
			addToAging(_from, _to, agingTimesForPools[_from], _value);
		}

		addIndex(_to);
		Transfer(_from, _to, _value);
		return true;
	}

	/* This unnamed function is called whenever someone tries to send ether to it */
	function() {
		revert();
		// Prevents accidental sending of ether
	}

	function checkMyAging(address sender) internal {
		if (agingBalanceOf[sender][0] == 0) return;

		for (uint256 k = 0; k < agingTimes.length; k++) {
			if (agingTimes[k] < now) {
				agingBalanceOf[sender][0] -= agingBalanceOf[sender][agingTimes[k]];
				agingBalanceOf[sender][agingTimes[k]] = 0;
			}
		}
	}

	function addAgingTimesForPool(address poolAddress, uint256 agingTime) onlyOwner {
		agingTimesForPools[poolAddress] = agingTime;
	}

	function countAddresses() constant returns (uint256 length) {
		return addressByIndex.length;
	}

	function accountBalance(address _address) constant returns (uint256 balance) {
		return balances[_address] - agingBalanceOf[_address][0];
	}

	function disableTransfers(bool _disable) public onlyOwner {
		transfersEnabled = !_disable;
	}

	function issue(address _to, uint256 _amount) public onlyOwner validAddress(_to) notThis(_to) {
		_totalSupply = safeAdd(_totalSupply, _amount);
		balances[_to] = safeAdd(balances[_to], _amount);

		addIndex(_to);
		Issuance(_amount);
		Transfer(this, _to, _amount);
	}

	function destroy(address _from, uint256 _amount) public {
		checkMyAging(msg.sender);
		// validate input
		require(msg.sender == _from || msg.sender == owner);
		require(accountBalance(_from) >= _amount);

		balances[_from] = safeSub(balances[_from], _amount);
		_totalSupply = safeSub(_totalSupply, _amount);

		Transfer(_from, this, _amount);
		Destruction(_amount);
	}
}

Contract Security Audit

Contract ABI

[{"constant":false,"inputs":[],"name":"allAgingTimesAdded","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[],"name":"name","outputs":[{"name":"","type":"string"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"_spender","type":"address"},{"name":"_value","type":"uint256"}],"name":"approve","outputs":[{"name":"success","type":"bool"}],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"name":"_disable","type":"bool"}],"name":"disableTransfers","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[],"name":"totalSupply","outputs":[{"name":"totalSupply","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"target","type":"address"},{"name":"mintedAmount","type":"uint256"},{"name":"agingTime","type":"uint256"}],"name":"mintToken","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"name":"_from","type":"address"},{"name":"_to","type":"address"},{"name":"_value","type":"uint256"}],"name":"transferFrom","outputs":[{"name":"success","type":"bool"}],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"name":"limit","type":"uint256"}],"name":"calculateDividends","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[],"name":"decimals","outputs":[{"name":"","type":"uint8"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"standard","outputs":[{"name":"","type":"string"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[{"name":"_owner","type":"address"}],"name":"balanceOf","outputs":[{"name":"balance","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"_to","type":"address"},{"name":"_amount","type":"uint256"}],"name":"issue","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"name":"time","type":"uint256"}],"name":"addAgingTime","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[],"name":"owner","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"symbol","outputs":[{"name":"","type":"string"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"_from","type":"address"},{"name":"_amount","type":"uint256"}],"name":"destroy","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"name":"newOwner","type":"address"}],"name":"changeOwner","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"name":"_to","type":"address"},{"name":"_value","type":"uint256"}],"name":"transfer","outputs":[{"name":"success","type":"bool"}],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[],"name":"transfersEnabled","outputs":[{"name":"","type":"bool"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"_spender","type":"address"},{"name":"_value","type":"uint256"},{"name":"_extraData","type":"bytes"}],"name":"approveAndCall","outputs":[{"name":"success","type":"bool"}],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[{"name":"_address","type":"address"}],"name":"accountBalance","outputs":[{"name":"balance","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[{"name":"","type":"uint256"}],"name":"addressByIndex","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[{"name":"_owner","type":"address"},{"name":"_spender","type":"address"}],"name":"allowance","outputs":[{"name":"remaining","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[{"name":"","type":"address"},{"name":"","type":"uint256"}],"name":"agingBalanceOf","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"poolAddress","type":"address"},{"name":"agingTime","type":"uint256"}],"name":"addAgingTimesForPool","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[],"name":"countAddresses","outputs":[{"name":"length","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"inputs":[],"payable":false,"stateMutability":"nonpayable","type":"constructor"},{"payable":false,"stateMutability":"nonpayable","type":"fallback"},{"anonymous":false,"inputs":[{"indexed":true,"name":"from","type":"address"},{"indexed":true,"name":"to","type":"address"},{"indexed":false,"name":"value","type":"uint256"}],"name":"Transfer","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"name":"from","type":"address"},{"indexed":true,"name":"to","type":"address"},{"indexed":false,"name":"value","type":"uint256"},{"indexed":false,"name":"agingTime","type":"uint256"}],"name":"AgingTransfer","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"name":"_owner","type":"address"},{"indexed":true,"name":"_spender","type":"address"},{"indexed":false,"name":"_value","type":"uint256"}],"name":"Approval","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"name":"_amount","type":"uint256"}],"name":"Issuance","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"name":"_amount","type":"uint256"}],"name":"Destruction","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"name":"_token","type":"address"}],"name":"NewSmartToken","type":"event"}]

606060405260408051908101604052600981527f546f6b656e20302e310000000000000000000000000000000000000000000000602082015260019080516200004d92916020019062000b62565b5060408051908101604052600881527f4b69636b436f696e000000000000000000000000000000000000000000000000602082015260029080516200009792916020019062000b62565b5060408051908101604052600281527f4b4300000000000000000000000000000000000000000000000000000000000060208201526003908051620000e192916020019062000b62565b5060048054600860ff19918216179091556000600555600e805461ffff19166001908117909155601080549092161761ff001916905534156200012357600080fd5b5b5b5b60008054600160a060020a03191633600160a060020a03161790555b5b60008054600160a060020a03191633600160a060020a0316179055600980546001810162000172838262000be8565b916000526020600020906003020160005b60606040519081016040908152600080835260208301819052908201529190508151815560208201518160010155604082015160029091015550506009805460018101620001d2838262000be8565b916000526020600020906003020160005b606060405190810160409081526359f83b908252601e6020830152600090820152919050815181556020820151816001015560408201516002909101555050600980546001810162000236838262000be8565b916000526020600020906003020160005b60606040519081016040908152635a1fc89082526014602083015260009082015291905081518155602082015181600101556040820151600290910155505060098054600181016200029a838262000be8565b916000526020600020906003020160005b60606040519081016040908152635a48a7108252600a60208301526000908201529190508151815560208201518160010155604082015160029091015550506009805460018101620002fe838262000be8565b916000526020600020906003020160005b60606040519081016040908152635a718590825260056020830152600090820152919050815181556020820151816001015560408201516002909101555050600980546001810162000362838262000be8565b916000526020600020906003020160005b60606040519081016040908152635a966f908252600a60208301526000908201529190508151815560208201518160010155604082015160029091015550506009805460018101620003c6838262000be8565b916000526020600020906003020160005b60606040519081016040908152635abf4e1082526014602083015260009082015291905081518155602082015181600101556040820151600290910155505060098054600181016200042a838262000be8565b916000526020600020906003020160005b60606040519081016040908152635ae6db108252601e602083015260009082015291905081518155602082015181600101556040820151600290910155505060098054600181016200048e838262000be8565b916000526020600020906003020160005b60606040519081016040908152635b0fb9908252603260208301526000908201529190508151815560208201518160010155604082015160029091015550506009805460018101620004f2838262000be8565b916000526020600020906003020160005b60606040519081016040908152635b3746908252601e6020830152600090820152919050815181556020820151816001015560408201516002909101555050600980546001810162000556838262000be8565b916000526020600020906003020160005b60606040519081016040908152635b6025108252601460208301526000908201529190508151815560208201518160010155604082015160029091015550506009805460018101620005ba838262000be8565b916000526020600020906003020160005b60606040519081016040908152635b8903908252600a602083015260009082015291905081518155602082015181600101556040820151600290910155505060098054600181016200061e838262000be8565b916000526020600020906003020160005b60606040519081016040908152635bb09090825260056020830152600090820152919050815181556020820151816001015560408201516002909101555050600980546001810162000682838262000be8565b916000526020600020906003020160005b60606040519081016040908152635bd96f108252600a60208301526000908201529190508151815560208201518160010155604082015160029091015550506009805460018101620006e6838262000be8565b916000526020600020906003020160005b60606040519081016040908152635c00fc1082526014602083015260009082015291905081518155602082015181600101556040820151600290910155505060098054600181016200074a838262000be8565b916000526020600020906003020160005b60606040519081016040908152635c29da908252601e60208301526000908201529190508151815560208201518160010155604082015160029091015550506009805460018101620007ae838262000be8565b916000526020600020906003020160005b60606040519081016040908152635c52b9108252603c6020830152600090820152919050815181556020820151816001015560408201516002909101555050600980546001810162000812838262000be8565b916000526020600020906003020160005b60606040519081016040908152635c77a3108252601e6020830152600090820152919050815181556020820151816001015560408201516002909101555050600980546001810162000876838262000be8565b916000526020600020906003020160005b60606040519081016040908152635ca081908252601460208301526000908201529190508151815560208201518160010155604082015160029091015550506009805460018101620008da838262000be8565b916000526020600020906003020160005b60606040519081016040908152635cc80e908252600a602083015260009082015291905081518155602082015181600101556040820151600290910155505060098054600181016200093e838262000be8565b916000526020600020906003020160005b60606040519081016040908152635cf125508252601460208301526000908201529190508151815560208201518160010155604082015160029091015550506009805460018101620009a2838262000be8565b916000526020600020906003020160005b60606040519081016040908152635d187a108252601e6020830152600090820152919050815181556020820151816001015560408201516002909101555050600980546001810162000a06838262000be8565b916000526020600020906003020160005b60606040519081016040908152635d415890825260146020830152600090820152919050815181556020820151816001015560408201516002909101555050600980546001810162000a6a838262000be8565b916000526020600020906003020160005b60606040519081016040908152635d6a37108252600a6020830152600090820152919050815181556020820151816001015560408201516002909101555050600980546001810162000ace838262000be8565b916000526020600020906003020160005b60606040519081016040908152635d91c4108252600560208301526000908201529190508151815560208201518160010155604082015181600201555050507ff4cd1f8571e8d9c97ffcb81558807ab73f9803d54de5da6a0420593c82a4a9f030604051600160a060020a03909116815260200160405180910390a15b62000c72565b828054600181600116156101000203166002900490600052602060002090601f016020900481019282601f1062000ba557805160ff191683800117855562000bd5565b8280016001018555821562000bd5579182015b8281111562000bd557825182559160200191906001019062000bb8565b5b5062000be492915062000c1d565b5090565b81548183558181151162000c175760030281600302836000526020600020918201910162000c17919062000c41565b5b505050565b62000c3e91905b8082111562000be4576000815560010162000c24565b5090565b90565b62000c3e91905b8082111562000be457600080825560018201819055600282015560030162000c48565b5090565b90565b611a378062000c826000396000f300606060405236156101515763ffffffff7c0100000000000000000000000000000000000000000000000000000000600035041663037ca6c4811461016457806306fdde0314610179578063095ea7b3146102045780631608f18f1461023a57806318160ddd1461025457806323a36d2b1461027957806323b872dd146102a05780632cf86006146102dc578063313ce567146102f45780635a3b7e421461031d57806370a08231146103a8578063867904b4146103d95780638d37f52c146103fd5780638da5cb5b1461041557806395d89b4114610444578063a24835d1146104cf578063a6f9dae1146104f3578063a9059cbb14610514578063bef97c871461054a578063cae9ca5114610571578063d294cb0f146105ea578063d8ab92081461061b578063dd62ed3e1461064d578063e27f023614610684578063ea6ca182146106b8578063ec530de6146106dc575b341561015c57600080fd5b5b600080fd5b005b341561016f57600080fd5b610162610701565b005b341561018457600080fd5b61018c61072f565b60405160208082528190810183818151815260200191508051906020019080838360005b838110156101c95780820151818401525b6020016101b0565b50505050905090810190601f1680156101f65780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b341561020f57600080fd5b610226600160a060020a03600435166024356107cd565b604051901515815260200160405180910390f35b341561024557600080fd5b610162600435151561083a565b005b341561025f57600080fd5b610267610867565b60405190815260200160405180910390f35b341561028457600080fd5b610162600160a060020a036004351660243560443561086e565b005b34156102ab57600080fd5b610226600160a060020a036004358116906024351660443561094a565b604051901515815260200160405180910390f35b34156102e757600080fd5b610162600435610b08565b005b34156102ff57600080fd5b610307610c5b565b60405160ff909116815260200160405180910390f35b341561032857600080fd5b61018c610c64565b60405160208082528190810183818151815260200191508051906020019080838360005b838110156101c95780820151818401525b6020016101b0565b50505050905090810190601f1680156101f65780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b34156103b357600080fd5b610267600160a060020a0360043516610d02565b60405190815260200160405180910390f35b34156103e457600080fd5b610162600160a060020a0360043516602435610d21565b005b341561040857600080fd5b610162600435610e3a565b005b341561042057600080fd5b610428610e94565b604051600160a060020a03909116815260200160405180910390f35b341561044f57600080fd5b61018c610ea3565b60405160208082528190810183818151815260200191508051906020019080838360005b838110156101c95780820151818401525b6020016101b0565b50505050905090810190601f1680156101f65780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b34156104da57600080fd5b610162600160a060020a0360043516602435610f41565b005b34156104fe57600080fd5b610162600160a060020a036004351661104b565b005b341561051f57600080fd5b610226600160a060020a0360043516602435611093565b604051901515815260200160405180910390f35b341561055557600080fd5b610226611205565b604051901515815260200160405180910390f35b341561057c57600080fd5b61022660048035600160a060020a03169060248035919060649060443590810190830135806020601f8201819004810201604051908101604052818152929190602084018383808284375094965061120e95505050505050565b604051901515815260200160405180910390f35b34156105f557600080fd5b610267600160a060020a0360043516611342565b60405190815260200160405180910390f35b341561062657600080fd5b610428600435611378565b604051600160a060020a03909116815260200160405180910390f35b341561065857600080fd5b610267600160a060020a03600435811690602435166113aa565b60405190815260200160405180910390f35b341561068f57600080fd5b610267600160a060020a03600435166024356113d7565b60405190815260200160405180910390f35b34156106c357600080fd5b610162600160a060020a03600435166024356113f4565b005b34156106e757600080fd5b610267611430565b60405190815260200160405180910390f35b60005433600160a060020a0390811691161461071c57600080fd5b6010805461ff0019166101001790555b5b565b60028054600181600116156101000203166002900480601f0160208091040260200160405190810160405280929190818152602001828054600181600116156101000203166002900480156107c55780601f1061079a576101008083540402835291602001916107c5565b820191906000526020600020905b8154815290600101906020018083116107a857829003601f168201915b505050505081565b600160a060020a033381166000818152600a6020908152604080832094871680845294909152808220859055909291907f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b9259085905190815260200160405180910390a35060015b92915050565b60005433600160a060020a0390811691161461085557600080fd5b6010805460ff191682151790555b5b50565b6005545b90565b60005433600160a060020a0390811691161461088957600080fd5b428111156108a9576000546108a990600160a060020a0316848385611437565b5b600160a060020a0383166000908152600660205260409081902080548401905560058054840190557f9386c90217c323f58030f9dadcbc938f807a940f4ff41cd4cead9562f5da7dc39083905190815260200160405180910390a161090e836114b6565b82600160a060020a031630600160a060020a03166000805160206119ec8339815191528460405190815260200160405180910390a35b5b505050565b60105460009060ff16151561095b57fe5b61096484611542565b600e5460098054909161ffff1690811061097a57fe5b906000526020600020906003020160005b505442106109a55761099c84611661565b6109a583611661565b5b816109b085611342565b10156109bb57600080fd5b600160a060020a038085166000908152600a6020908152604080832033909416835292905220548211156109ee57600080fd5b600160a060020a038085166000908152600660205260408082208054869003905591851681522054610a209083611945565b600160a060020a03808516600090815260066020908152604080832094909455878316808352600a825284832033909416835292815283822080548790039055918152600d90915290812054118015610a915750600160a060020a0384166000908152600d60205260409020544290115b15610abd57600160a060020a0384166000908152600d6020526040902054610abd908590859085611437565b5b610ac7836114b6565b82600160a060020a031684600160a060020a03166000805160206119ec8339815191528460405190815260200160405180910390a35060015b5b9392505050565b600e546009805460009261ffff16908110610b1f57fe5b906000526020600020906003020160005b5054421015610b3e57600080fd5b60008211610b4b57600080fd5b600e5460098054849261ffff16908110610b6157fe5b906000526020600020906003020160005b5060020154600b5491019250821115610b8b57600b5491505b600e5460098054909161ffff16908110610ba157fe5b906000526020600020906003020160005b506002015490505b81811015610c0257610bf9600b82815481101515610bd457fe5b906000526020600020900160005b9054906101000a9004600160a060020a0316611661565b5b600101610bba565b600b54821415610c2957600e805461ffff8082166001011661ffff19909116179055610c56565b600e5460098054849261ffff16908110610c3f57fe5b906000526020600020906003020160005b50600201555b5b5050565b60045460ff1681565b60018054600181600116156101000203166002900480601f0160208091040260200160405190810160405280929190818152602001828054600181600116156101000203166002900480156107c55780601f1061079a576101008083540402835291602001916107c5565b820191906000526020600020905b8154815290600101906020018083116107a857829003601f168201915b505050505081565b600160a060020a0381166000908152600660205260409020545b919050565b60005433600160a060020a03908116911614610d3c57600080fd5b81600160a060020a0381161515610d5257600080fd5b8230600160a060020a031681600160a060020a031614151515610d7457600080fd5b610d8060055484611945565b600555600160a060020a038416600090815260066020526040902054610da69084611945565b600160a060020a038516600090815260066020526040902055610dc8846114b6565b7f9386c90217c323f58030f9dadcbc938f807a940f4ff41cd4cead9562f5da7dc38360405190815260200160405180910390a183600160a060020a031630600160a060020a03166000805160206119ec8339815191528560405190815260200160405180910390a35b5b505b505b5050565b60005433600160a060020a03908116911614610e5557600080fd5b601054610100900460ff1615610e6a57600080fd5b6008805460018101610e7c8382611976565b916000526020600020900160005b50829055505b5b50565b600054600160a060020a031681565b60038054600181600116156101000203166002900480601f0160208091040260200160405190810160405280929190818152602001828054600181600116156101000203166002900480156107c55780601f1061079a576101008083540402835291602001916107c5565b820191906000526020600020905b8154815290600101906020018083116107a857829003601f168201915b505050505081565b610f4a33611542565b81600160a060020a031633600160a060020a03161480610f78575060005433600160a060020a039081169116145b1515610f8357600080fd5b80610f8d83611342565b1015610f9857600080fd5b600160a060020a038216600090815260066020526040902054610fbb908261195f565b600160a060020a038316600090815260066020526040902055600554610fe1908261195f565b600555600160a060020a033081169083166000805160206119ec8339815191528360405190815260200160405180910390a37f9a1b418bc061a5d80270261562e6986a35d995f8051145f277be16103abd34538160405190815260200160405180910390a15b5050565b60005433600160a060020a0390811691161461106657600080fd5b6000805473ffffffffffffffffffffffffffffffffffffffff1916600160a060020a0383161790555b5b50565b60105460009060ff1615156110a457fe5b6110ad33611542565b600e5460098054909161ffff169081106110c357fe5b906000526020600020906003020160005b505442106110ee576110e533611661565b6110ee83611661565b5b816110f933611342565b101561110457600080fd5b600160a060020a033316600090815260066020908152604080832080548690039055600d9091528120541180156111535750600160a060020a0333166000908152600d60205260409020544290115b1561117f5733600160a060020a0381166000908152600d602052604090205461117f9190859085611437565b5b600160a060020a0383166000908152600660205260409020546111a39083611945565b600160a060020a0384166000908152600660205260409020556111c5836114b6565b82600160a060020a031633600160a060020a03166000805160206119ec8339815191528460405190815260200160405180910390a35060015b5b92915050565b60105460ff1681565b60008361121b81856107cd565b156113395780600160a060020a0316638f4ffcb1338630876040518563ffffffff167c01000000000000000000000000000000000000000000000000000000000281526004018085600160a060020a0316600160a060020a0316815260200184815260200183600160a060020a0316600160a060020a0316815260200180602001828103825283818151815260200191508051906020019080838360005b838110156112d25780820151818401525b6020016112b9565b50505050905090810190601f1680156112ff5780820380516001836020036101000a031916815260200191505b5095505050505050600060405180830381600087803b151561132057600080fd5b6102c65a03f1151561133157600080fd5b505050600191505b5b509392505050565b600160a060020a03811660008181526007602090815260408083208380528252808320549383526006909152902054035b919050565b600b80548290811061138657fe5b906000526020600020900160005b915054906101000a9004600160a060020a031681565b600160a060020a038083166000908152600a60209081526040808320938516835292905220545b92915050565b600760209081526000928352604080842090915290825290205481565b60005433600160a060020a0390811691161461140f57600080fd5b600160a060020a0382166000908152600d602052604090208190555b5b5050565b600b545b90565b600160a060020a0383811660008181526007602090815260408083208380529091528082208054860190558582529081902080548501905590918616907f46a1749a7648b704d1ad3fe33741b13174a4b1641db362e808d00eab7250d10690849086905191825260208201526040908101905180910390a35b50505050565b600160a060020a0381166000908152600c602052604090205460ff16151561086357600160a060020a0381166000908152600c60205260409020805460ff19166001908117909155600b8054909181016115108382611976565b916000526020600020900160005b8154600160a060020a038086166101009390930a92830292021916179055505b5b50565b600160a060020a0381166000908152600760209081526040808320838052909152812054151561157157610c56565b5060005b600854811015610c56574260088281548110151561158f57fe5b906000526020600020900160005b5054101561165357600160a060020a038216600090815260076020526040812060088054919291849081106115ce57fe5b906000526020600020900160005b505481526020808201929092526040908101600090812054600160a060020a03861680835260078086528484208480528087529484208054939093039092558252909252600880548391908590811061163157fe5b906000526020600020900160005b505481526020810191909152604001600020555b5b600101611575565b5b5050565b600e54600160a060020a0382166000908152600f60205260408120549091829161ffff909116901061169257610944565b600e54600980546103e89261ffff169081106116aa57fe5b906000526020600020906003020160005b5060010154600160a060020a038516600090815260066020526040902054028115156116e357fe5b600160a060020a03808616600081815260066020526040908190208054959094049485019093559294503016906000805160206119ec8339815191529085905190815260200160405180910390a37f9386c90217c323f58030f9dadcbc938f807a940f4ff41cd4cead9562f5da7dc38260405190815260200160405180910390a161177060055483611945565b600555600160a060020a0383166000908152600760209081526040808320838052909152812054111561191b57600e54600980546103e89261ffff169081106117b557fe5b906000526020600020906003020160005b5060010154600160a060020a0385166000908152600760209081526040808320838052909152902054028115156117f957fe5b600160a060020a03851660009081526007602090815260408083208380529091528120805493909204909201905590505b60085481101561191b57600e54600980546103e89261ffff1690811061184c57fe5b906000526020600020906003020160005b5060010154600160a060020a0385166000908152600760205260408120600880549192918690811061188b57fe5b906000526020600020900160005b5054815260200190815260200160002054028115156118b457fe5b046007600085600160a060020a0316600160a060020a0316815260200190815260200160002060006008848154811015156118eb57fe5b906000526020600020900160005b505481526020810191909152604001600020805490910190555b60010161182a565b5b600e54600160a060020a0384166000908152600f6020526040902061ffff90911690555b505050565b60008282018381101561195457fe5b8091505b5092915050565b60008183101561196b57fe5b508082035b92915050565b815481835581811511610944576000838152602090206109449181019083016119ca565b5b505050565b815481835581811511610944576000838152602090206109449181019083016119ca565b5b505050565b61086b91905b808211156119e457600081556001016119d0565b5090565b905600ddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3efa165627a7a7230582051d50aa285e195edae4771702454d4527b0b5f02d3b5f70ca5d39956b88770f80029

Deployed Bytecode

0x606060405236156101515763ffffffff7c0100000000000000000000000000000000000000000000000000000000600035041663037ca6c4811461016457806306fdde0314610179578063095ea7b3146102045780631608f18f1461023a57806318160ddd1461025457806323a36d2b1461027957806323b872dd146102a05780632cf86006146102dc578063313ce567146102f45780635a3b7e421461031d57806370a08231146103a8578063867904b4146103d95780638d37f52c146103fd5780638da5cb5b1461041557806395d89b4114610444578063a24835d1146104cf578063a6f9dae1146104f3578063a9059cbb14610514578063bef97c871461054a578063cae9ca5114610571578063d294cb0f146105ea578063d8ab92081461061b578063dd62ed3e1461064d578063e27f023614610684578063ea6ca182146106b8578063ec530de6146106dc575b341561015c57600080fd5b5b600080fd5b005b341561016f57600080fd5b610162610701565b005b341561018457600080fd5b61018c61072f565b60405160208082528190810183818151815260200191508051906020019080838360005b838110156101c95780820151818401525b6020016101b0565b50505050905090810190601f1680156101f65780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b341561020f57600080fd5b610226600160a060020a03600435166024356107cd565b604051901515815260200160405180910390f35b341561024557600080fd5b610162600435151561083a565b005b341561025f57600080fd5b610267610867565b60405190815260200160405180910390f35b341561028457600080fd5b610162600160a060020a036004351660243560443561086e565b005b34156102ab57600080fd5b610226600160a060020a036004358116906024351660443561094a565b604051901515815260200160405180910390f35b34156102e757600080fd5b610162600435610b08565b005b34156102ff57600080fd5b610307610c5b565b60405160ff909116815260200160405180910390f35b341561032857600080fd5b61018c610c64565b60405160208082528190810183818151815260200191508051906020019080838360005b838110156101c95780820151818401525b6020016101b0565b50505050905090810190601f1680156101f65780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b34156103b357600080fd5b610267600160a060020a0360043516610d02565b60405190815260200160405180910390f35b34156103e457600080fd5b610162600160a060020a0360043516602435610d21565b005b341561040857600080fd5b610162600435610e3a565b005b341561042057600080fd5b610428610e94565b604051600160a060020a03909116815260200160405180910390f35b341561044f57600080fd5b61018c610ea3565b60405160208082528190810183818151815260200191508051906020019080838360005b838110156101c95780820151818401525b6020016101b0565b50505050905090810190601f1680156101f65780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b34156104da57600080fd5b610162600160a060020a0360043516602435610f41565b005b34156104fe57600080fd5b610162600160a060020a036004351661104b565b005b341561051f57600080fd5b610226600160a060020a0360043516602435611093565b604051901515815260200160405180910390f35b341561055557600080fd5b610226611205565b604051901515815260200160405180910390f35b341561057c57600080fd5b61022660048035600160a060020a03169060248035919060649060443590810190830135806020601f8201819004810201604051908101604052818152929190602084018383808284375094965061120e95505050505050565b604051901515815260200160405180910390f35b34156105f557600080fd5b610267600160a060020a0360043516611342565b60405190815260200160405180910390f35b341561062657600080fd5b610428600435611378565b604051600160a060020a03909116815260200160405180910390f35b341561065857600080fd5b610267600160a060020a03600435811690602435166113aa565b60405190815260200160405180910390f35b341561068f57600080fd5b610267600160a060020a03600435166024356113d7565b60405190815260200160405180910390f35b34156106c357600080fd5b610162600160a060020a03600435166024356113f4565b005b34156106e757600080fd5b610267611430565b60405190815260200160405180910390f35b60005433600160a060020a0390811691161461071c57600080fd5b6010805461ff0019166101001790555b5b565b60028054600181600116156101000203166002900480601f0160208091040260200160405190810160405280929190818152602001828054600181600116156101000203166002900480156107c55780601f1061079a576101008083540402835291602001916107c5565b820191906000526020600020905b8154815290600101906020018083116107a857829003601f168201915b505050505081565b600160a060020a033381166000818152600a6020908152604080832094871680845294909152808220859055909291907f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b9259085905190815260200160405180910390a35060015b92915050565b60005433600160a060020a0390811691161461085557600080fd5b6010805460ff191682151790555b5b50565b6005545b90565b60005433600160a060020a0390811691161461088957600080fd5b428111156108a9576000546108a990600160a060020a0316848385611437565b5b600160a060020a0383166000908152600660205260409081902080548401905560058054840190557f9386c90217c323f58030f9dadcbc938f807a940f4ff41cd4cead9562f5da7dc39083905190815260200160405180910390a161090e836114b6565b82600160a060020a031630600160a060020a03166000805160206119ec8339815191528460405190815260200160405180910390a35b5b505050565b60105460009060ff16151561095b57fe5b61096484611542565b600e5460098054909161ffff1690811061097a57fe5b906000526020600020906003020160005b505442106109a55761099c84611661565b6109a583611661565b5b816109b085611342565b10156109bb57600080fd5b600160a060020a038085166000908152600a6020908152604080832033909416835292905220548211156109ee57600080fd5b600160a060020a038085166000908152600660205260408082208054869003905591851681522054610a209083611945565b600160a060020a03808516600090815260066020908152604080832094909455878316808352600a825284832033909416835292815283822080548790039055918152600d90915290812054118015610a915750600160a060020a0384166000908152600d60205260409020544290115b15610abd57600160a060020a0384166000908152600d6020526040902054610abd908590859085611437565b5b610ac7836114b6565b82600160a060020a031684600160a060020a03166000805160206119ec8339815191528460405190815260200160405180910390a35060015b5b9392505050565b600e546009805460009261ffff16908110610b1f57fe5b906000526020600020906003020160005b5054421015610b3e57600080fd5b60008211610b4b57600080fd5b600e5460098054849261ffff16908110610b6157fe5b906000526020600020906003020160005b5060020154600b5491019250821115610b8b57600b5491505b600e5460098054909161ffff16908110610ba157fe5b906000526020600020906003020160005b506002015490505b81811015610c0257610bf9600b82815481101515610bd457fe5b906000526020600020900160005b9054906101000a9004600160a060020a0316611661565b5b600101610bba565b600b54821415610c2957600e805461ffff8082166001011661ffff19909116179055610c56565b600e5460098054849261ffff16908110610c3f57fe5b906000526020600020906003020160005b50600201555b5b5050565b60045460ff1681565b60018054600181600116156101000203166002900480601f0160208091040260200160405190810160405280929190818152602001828054600181600116156101000203166002900480156107c55780601f1061079a576101008083540402835291602001916107c5565b820191906000526020600020905b8154815290600101906020018083116107a857829003601f168201915b505050505081565b600160a060020a0381166000908152600660205260409020545b919050565b60005433600160a060020a03908116911614610d3c57600080fd5b81600160a060020a0381161515610d5257600080fd5b8230600160a060020a031681600160a060020a031614151515610d7457600080fd5b610d8060055484611945565b600555600160a060020a038416600090815260066020526040902054610da69084611945565b600160a060020a038516600090815260066020526040902055610dc8846114b6565b7f9386c90217c323f58030f9dadcbc938f807a940f4ff41cd4cead9562f5da7dc38360405190815260200160405180910390a183600160a060020a031630600160a060020a03166000805160206119ec8339815191528560405190815260200160405180910390a35b5b505b505b5050565b60005433600160a060020a03908116911614610e5557600080fd5b601054610100900460ff1615610e6a57600080fd5b6008805460018101610e7c8382611976565b916000526020600020900160005b50829055505b5b50565b600054600160a060020a031681565b60038054600181600116156101000203166002900480601f0160208091040260200160405190810160405280929190818152602001828054600181600116156101000203166002900480156107c55780601f1061079a576101008083540402835291602001916107c5565b820191906000526020600020905b8154815290600101906020018083116107a857829003601f168201915b505050505081565b610f4a33611542565b81600160a060020a031633600160a060020a03161480610f78575060005433600160a060020a039081169116145b1515610f8357600080fd5b80610f8d83611342565b1015610f9857600080fd5b600160a060020a038216600090815260066020526040902054610fbb908261195f565b600160a060020a038316600090815260066020526040902055600554610fe1908261195f565b600555600160a060020a033081169083166000805160206119ec8339815191528360405190815260200160405180910390a37f9a1b418bc061a5d80270261562e6986a35d995f8051145f277be16103abd34538160405190815260200160405180910390a15b5050565b60005433600160a060020a0390811691161461106657600080fd5b6000805473ffffffffffffffffffffffffffffffffffffffff1916600160a060020a0383161790555b5b50565b60105460009060ff1615156110a457fe5b6110ad33611542565b600e5460098054909161ffff169081106110c357fe5b906000526020600020906003020160005b505442106110ee576110e533611661565b6110ee83611661565b5b816110f933611342565b101561110457600080fd5b600160a060020a033316600090815260066020908152604080832080548690039055600d9091528120541180156111535750600160a060020a0333166000908152600d60205260409020544290115b1561117f5733600160a060020a0381166000908152600d602052604090205461117f9190859085611437565b5b600160a060020a0383166000908152600660205260409020546111a39083611945565b600160a060020a0384166000908152600660205260409020556111c5836114b6565b82600160a060020a031633600160a060020a03166000805160206119ec8339815191528460405190815260200160405180910390a35060015b5b92915050565b60105460ff1681565b60008361121b81856107cd565b156113395780600160a060020a0316638f4ffcb1338630876040518563ffffffff167c01000000000000000000000000000000000000000000000000000000000281526004018085600160a060020a0316600160a060020a0316815260200184815260200183600160a060020a0316600160a060020a0316815260200180602001828103825283818151815260200191508051906020019080838360005b838110156112d25780820151818401525b6020016112b9565b50505050905090810190601f1680156112ff5780820380516001836020036101000a031916815260200191505b5095505050505050600060405180830381600087803b151561132057600080fd5b6102c65a03f1151561133157600080fd5b505050600191505b5b509392505050565b600160a060020a03811660008181526007602090815260408083208380528252808320549383526006909152902054035b919050565b600b80548290811061138657fe5b906000526020600020900160005b915054906101000a9004600160a060020a031681565b600160a060020a038083166000908152600a60209081526040808320938516835292905220545b92915050565b600760209081526000928352604080842090915290825290205481565b60005433600160a060020a0390811691161461140f57600080fd5b600160a060020a0382166000908152600d602052604090208190555b5b5050565b600b545b90565b600160a060020a0383811660008181526007602090815260408083208380529091528082208054860190558582529081902080548501905590918616907f46a1749a7648b704d1ad3fe33741b13174a4b1641db362e808d00eab7250d10690849086905191825260208201526040908101905180910390a35b50505050565b600160a060020a0381166000908152600c602052604090205460ff16151561086357600160a060020a0381166000908152600c60205260409020805460ff19166001908117909155600b8054909181016115108382611976565b916000526020600020900160005b8154600160a060020a038086166101009390930a92830292021916179055505b5b50565b600160a060020a0381166000908152600760209081526040808320838052909152812054151561157157610c56565b5060005b600854811015610c56574260088281548110151561158f57fe5b906000526020600020900160005b5054101561165357600160a060020a038216600090815260076020526040812060088054919291849081106115ce57fe5b906000526020600020900160005b505481526020808201929092526040908101600090812054600160a060020a03861680835260078086528484208480528087529484208054939093039092558252909252600880548391908590811061163157fe5b906000526020600020900160005b505481526020810191909152604001600020555b5b600101611575565b5b5050565b600e54600160a060020a0382166000908152600f60205260408120549091829161ffff909116901061169257610944565b600e54600980546103e89261ffff169081106116aa57fe5b906000526020600020906003020160005b5060010154600160a060020a038516600090815260066020526040902054028115156116e357fe5b600160a060020a03808616600081815260066020526040908190208054959094049485019093559294503016906000805160206119ec8339815191529085905190815260200160405180910390a37f9386c90217c323f58030f9dadcbc938f807a940f4ff41cd4cead9562f5da7dc38260405190815260200160405180910390a161177060055483611945565b600555600160a060020a0383166000908152600760209081526040808320838052909152812054111561191b57600e54600980546103e89261ffff169081106117b557fe5b906000526020600020906003020160005b5060010154600160a060020a0385166000908152600760209081526040808320838052909152902054028115156117f957fe5b600160a060020a03851660009081526007602090815260408083208380529091528120805493909204909201905590505b60085481101561191b57600e54600980546103e89261ffff1690811061184c57fe5b906000526020600020906003020160005b5060010154600160a060020a0385166000908152600760205260408120600880549192918690811061188b57fe5b906000526020600020900160005b5054815260200190815260200160002054028115156118b457fe5b046007600085600160a060020a0316600160a060020a0316815260200190815260200160002060006008848154811015156118eb57fe5b906000526020600020900160005b505481526020810191909152604001600020805490910190555b60010161182a565b5b600e54600160a060020a0384166000908152600f6020526040902061ffff90911690555b505050565b60008282018381101561195457fe5b8091505b5092915050565b60008183101561196b57fe5b508082035b92915050565b815481835581811511610944576000838152602090206109449181019083016119ca565b5b505050565b815481835581811511610944576000838152602090206109449181019083016119ca565b5b505050565b61086b91905b808211156119e457600081556001016119d0565b5090565b905600ddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3efa165627a7a7230582051d50aa285e195edae4771702454d4527b0b5f02d3b5f70ca5d39956b88770f80029

Swarm Source

bzzr://51d50aa285e195edae4771702454d4527b0b5f02d3b5f70ca5d39956b88770f8

Block Transaction Difficulty Gas Used Reward
View All Blocks Produced

Block Uncle Number Difficulty Gas Used Reward
View All Uncles
Loading...
Loading
Loading...
Loading

Validator Index Block Amount
View All Withdrawals

Transaction Hash Block Value Eth2 PubKey Valid
View All Deposits
Loading...
Loading
[ Download: CSV Export  ]

A contract address hosts a smart contract, which is a set of code stored on the blockchain that runs when predetermined conditions are met. Learn more about addresses in our Knowledge Base.