ERC-20
Overview
Max Total Supply
262,400,200.68681729 KC
Holders
10,239
Market
Onchain Market Cap
$0.00
Circulating Supply Market Cap
-
Other Info
Token Contract (WITH 8 Decimals)
Balance
9,393.00294 KCValue
$0.00Loading...
Loading
Loading...
Loading
Loading...
Loading
# | Exchange | Pair | Price | 24H Volume | % Volume |
---|
Similar Match Source Code This contract matches the deployed Bytecode of the Source Code for Contract 0xEfbdd2ca...daa10012a The constructor portion of the code might be different and could alter the actual behaviour of the contract
Contract Name:
CSToken
Compiler Version
v0.4.16+commit.d7661dd9
Optimization Enabled:
Yes with 200 runs
Other Settings:
default evmVersion
Contract Source Code (Solidity)
/** *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
- No Contract Security Audit Submitted- Submit Audit Here
[{"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"}]
Contract Creation Code
606060405260408051908101604052600981527f546f6b656e20302e310000000000000000000000000000000000000000000000602082015260019080516200004d92916020019062000b62565b5060408051908101604052600881527f4b69636b436f696e000000000000000000000000000000000000000000000000602082015260029080516200009792916020019062000b62565b5060408051908101604052600281527f4b4300000000000000000000000000000000000000000000000000000000000060208201526003908051620000e192916020019062000b62565b5060048054600860ff19918216179091556000600555600e805461ffff19166001908117909155601080549092161761ff001916905534156200012357600080fd5b5b5b5b60008054600160a060020a03191633600160a060020a03161790555b5b60008054600160a060020a03191633600160a060020a0316179055600980546001810162000172838262000be8565b916000526020600020906003020160005b60606040519081016040908152600080835260208301819052908201529190508151815560208201518160010155604082015160029091015550506009805460018101620001d2838262000be8565b916000526020600020906003020160005b606060405190810160409081526359f83b908252601e6020830152600090820152919050815181556020820151816001015560408201516002909101555050600980546001810162000236838262000be8565b916000526020600020906003020160005b60606040519081016040908152635a1fc89082526014602083015260009082015291905081518155602082015181600101556040820151600290910155505060098054600181016200029a838262000be8565b916000526020600020906003020160005b60606040519081016040908152635a48a7108252600a60208301526000908201529190508151815560208201518160010155604082015160029091015550506009805460018101620002fe838262000be8565b916000526020600020906003020160005b60606040519081016040908152635a718590825260056020830152600090820152919050815181556020820151816001015560408201516002909101555050600980546001810162000362838262000be8565b916000526020600020906003020160005b60606040519081016040908152635a966f908252600a60208301526000908201529190508151815560208201518160010155604082015160029091015550506009805460018101620003c6838262000be8565b916000526020600020906003020160005b60606040519081016040908152635abf4e1082526014602083015260009082015291905081518155602082015181600101556040820151600290910155505060098054600181016200042a838262000be8565b916000526020600020906003020160005b60606040519081016040908152635ae6db108252601e602083015260009082015291905081518155602082015181600101556040820151600290910155505060098054600181016200048e838262000be8565b916000526020600020906003020160005b60606040519081016040908152635b0fb9908252603260208301526000908201529190508151815560208201518160010155604082015160029091015550506009805460018101620004f2838262000be8565b916000526020600020906003020160005b60606040519081016040908152635b3746908252601e6020830152600090820152919050815181556020820151816001015560408201516002909101555050600980546001810162000556838262000be8565b916000526020600020906003020160005b60606040519081016040908152635b6025108252601460208301526000908201529190508151815560208201518160010155604082015160029091015550506009805460018101620005ba838262000be8565b916000526020600020906003020160005b60606040519081016040908152635b8903908252600a602083015260009082015291905081518155602082015181600101556040820151600290910155505060098054600181016200061e838262000be8565b916000526020600020906003020160005b60606040519081016040908152635bb09090825260056020830152600090820152919050815181556020820151816001015560408201516002909101555050600980546001810162000682838262000be8565b916000526020600020906003020160005b60606040519081016040908152635bd96f108252600a60208301526000908201529190508151815560208201518160010155604082015160029091015550506009805460018101620006e6838262000be8565b916000526020600020906003020160005b60606040519081016040908152635c00fc1082526014602083015260009082015291905081518155602082015181600101556040820151600290910155505060098054600181016200074a838262000be8565b916000526020600020906003020160005b60606040519081016040908152635c29da908252601e60208301526000908201529190508151815560208201518160010155604082015160029091015550506009805460018101620007ae838262000be8565b916000526020600020906003020160005b60606040519081016040908152635c52b9108252603c6020830152600090820152919050815181556020820151816001015560408201516002909101555050600980546001810162000812838262000be8565b916000526020600020906003020160005b60606040519081016040908152635c77a3108252601e6020830152600090820152919050815181556020820151816001015560408201516002909101555050600980546001810162000876838262000be8565b916000526020600020906003020160005b60606040519081016040908152635ca081908252601460208301526000908201529190508151815560208201518160010155604082015160029091015550506009805460018101620008da838262000be8565b916000526020600020906003020160005b60606040519081016040908152635cc80e908252600a602083015260009082015291905081518155602082015181600101556040820151600290910155505060098054600181016200093e838262000be8565b916000526020600020906003020160005b60606040519081016040908152635cf125508252601460208301526000908201529190508151815560208201518160010155604082015160029091015550506009805460018101620009a2838262000be8565b916000526020600020906003020160005b60606040519081016040908152635d187a108252601e6020830152600090820152919050815181556020820151816001015560408201516002909101555050600980546001810162000a06838262000be8565b916000526020600020906003020160005b60606040519081016040908152635d415890825260146020830152600090820152919050815181556020820151816001015560408201516002909101555050600980546001810162000a6a838262000be8565b916000526020600020906003020160005b60606040519081016040908152635d6a37108252600a6020830152600090820152919050815181556020820151816001015560408201516002909101555050600980546001810162000ace838262000be8565b916000526020600020906003020160005b60606040519081016040908152635d91c4108252600560208301526000908201529190508151815560208201518160010155604082015181600201555050507ff4cd1f8571e8d9c97ffcb81558807ab73f9803d54de5da6a0420593c82a4a9f030604051600160a060020a03909116815260200160405180910390a15b62000c72565b828054600181600116156101000203166002900490600052602060002090601f016020900481019282601f1062000ba557805160ff191683800117855562000bd5565b8280016001018555821562000bd5579182015b8281111562000bd557825182559160200191906001019062000bb8565b5b5062000be492915062000c1d565b5090565b81548183558181151162000c175760030281600302836000526020600020918201910162000c17919062000c41565b5b505050565b62000c3e91905b8082111562000be4576000815560010162000c24565b5090565b90565b62000c3e91905b8082111562000be457600080825560018201819055600282015560030162000c48565b5090565b90565b611a378062000c826000396000f300606060405236156101515763ffffffff7c0100000000000000000000000000000000000000000000000000000000600035041663037ca6c4811461016457806306fdde0314610179578063095ea7b3146102045780631608f18f1461023a57806318160ddd1461025457806323a36d2b1461027957806323b872dd146102a05780632cf86006146102dc578063313ce567146102f45780635a3b7e421461031d57806370a08231146103a8578063867904b4146103d95780638d37f52c146103fd5780638da5cb5b1461041557806395d89b4114610444578063a24835d1146104cf578063a6f9dae1146104f3578063a9059cbb14610514578063bef97c871461054a578063cae9ca5114610571578063d294cb0f146105ea578063d8ab92081461061b578063dd62ed3e1461064d578063e27f023614610684578063ea6ca182146106b8578063ec530de6146106dc575b341561015c57600080fd5b5b600080fd5b005b341561016f57600080fd5b610162610701565b005b341561018457600080fd5b61018c61072f565b60405160208082528190810183818151815260200191508051906020019080838360005b838110156101c95780820151818401525b6020016101b0565b50505050905090810190601f1680156101f65780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b341561020f57600080fd5b610226600160a060020a03600435166024356107cd565b604051901515815260200160405180910390f35b341561024557600080fd5b610162600435151561083a565b005b341561025f57600080fd5b610267610867565b60405190815260200160405180910390f35b341561028457600080fd5b610162600160a060020a036004351660243560443561086e565b005b34156102ab57600080fd5b610226600160a060020a036004358116906024351660443561094a565b604051901515815260200160405180910390f35b34156102e757600080fd5b610162600435610b08565b005b34156102ff57600080fd5b610307610c5b565b60405160ff909116815260200160405180910390f35b341561032857600080fd5b61018c610c64565b60405160208082528190810183818151815260200191508051906020019080838360005b838110156101c95780820151818401525b6020016101b0565b50505050905090810190601f1680156101f65780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b34156103b357600080fd5b610267600160a060020a0360043516610d02565b60405190815260200160405180910390f35b34156103e457600080fd5b610162600160a060020a0360043516602435610d21565b005b341561040857600080fd5b610162600435610e3a565b005b341561042057600080fd5b610428610e94565b604051600160a060020a03909116815260200160405180910390f35b341561044f57600080fd5b61018c610ea3565b60405160208082528190810183818151815260200191508051906020019080838360005b838110156101c95780820151818401525b6020016101b0565b50505050905090810190601f1680156101f65780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b34156104da57600080fd5b610162600160a060020a0360043516602435610f41565b005b34156104fe57600080fd5b610162600160a060020a036004351661104b565b005b341561051f57600080fd5b610226600160a060020a0360043516602435611093565b604051901515815260200160405180910390f35b341561055557600080fd5b610226611205565b604051901515815260200160405180910390f35b341561057c57600080fd5b61022660048035600160a060020a03169060248035919060649060443590810190830135806020601f8201819004810201604051908101604052818152929190602084018383808284375094965061120e95505050505050565b604051901515815260200160405180910390f35b34156105f557600080fd5b610267600160a060020a0360043516611342565b60405190815260200160405180910390f35b341561062657600080fd5b610428600435611378565b604051600160a060020a03909116815260200160405180910390f35b341561065857600080fd5b610267600160a060020a03600435811690602435166113aa565b60405190815260200160405180910390f35b341561068f57600080fd5b610267600160a060020a03600435166024356113d7565b60405190815260200160405180910390f35b34156106c357600080fd5b610162600160a060020a03600435166024356113f4565b005b34156106e757600080fd5b610267611430565b60405190815260200160405180910390f35b60005433600160a060020a0390811691161461071c57600080fd5b6010805461ff0019166101001790555b5b565b60028054600181600116156101000203166002900480601f0160208091040260200160405190810160405280929190818152602001828054600181600116156101000203166002900480156107c55780601f1061079a576101008083540402835291602001916107c5565b820191906000526020600020905b8154815290600101906020018083116107a857829003601f168201915b505050505081565b600160a060020a033381166000818152600a6020908152604080832094871680845294909152808220859055909291907f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b9259085905190815260200160405180910390a35060015b92915050565b60005433600160a060020a0390811691161461085557600080fd5b6010805460ff191682151790555b5b50565b6005545b90565b60005433600160a060020a0390811691161461088957600080fd5b428111156108a9576000546108a990600160a060020a0316848385611437565b5b600160a060020a0383166000908152600660205260409081902080548401905560058054840190557f9386c90217c323f58030f9dadcbc938f807a940f4ff41cd4cead9562f5da7dc39083905190815260200160405180910390a161090e836114b6565b82600160a060020a031630600160a060020a03166000805160206119ec8339815191528460405190815260200160405180910390a35b5b505050565b60105460009060ff16151561095b57fe5b61096484611542565b600e5460098054909161ffff1690811061097a57fe5b906000526020600020906003020160005b505442106109a55761099c84611661565b6109a583611661565b5b816109b085611342565b10156109bb57600080fd5b600160a060020a038085166000908152600a6020908152604080832033909416835292905220548211156109ee57600080fd5b600160a060020a038085166000908152600660205260408082208054869003905591851681522054610a209083611945565b600160a060020a03808516600090815260066020908152604080832094909455878316808352600a825284832033909416835292815283822080548790039055918152600d90915290812054118015610a915750600160a060020a0384166000908152600d60205260409020544290115b15610abd57600160a060020a0384166000908152600d6020526040902054610abd908590859085611437565b5b610ac7836114b6565b82600160a060020a031684600160a060020a03166000805160206119ec8339815191528460405190815260200160405180910390a35060015b5b9392505050565b600e546009805460009261ffff16908110610b1f57fe5b906000526020600020906003020160005b5054421015610b3e57600080fd5b60008211610b4b57600080fd5b600e5460098054849261ffff16908110610b6157fe5b906000526020600020906003020160005b5060020154600b5491019250821115610b8b57600b5491505b600e5460098054909161ffff16908110610ba157fe5b906000526020600020906003020160005b506002015490505b81811015610c0257610bf9600b82815481101515610bd457fe5b906000526020600020900160005b9054906101000a9004600160a060020a0316611661565b5b600101610bba565b600b54821415610c2957600e805461ffff8082166001011661ffff19909116179055610c56565b600e5460098054849261ffff16908110610c3f57fe5b906000526020600020906003020160005b50600201555b5b5050565b60045460ff1681565b60018054600181600116156101000203166002900480601f0160208091040260200160405190810160405280929190818152602001828054600181600116156101000203166002900480156107c55780601f1061079a576101008083540402835291602001916107c5565b820191906000526020600020905b8154815290600101906020018083116107a857829003601f168201915b505050505081565b600160a060020a0381166000908152600660205260409020545b919050565b60005433600160a060020a03908116911614610d3c57600080fd5b81600160a060020a0381161515610d5257600080fd5b8230600160a060020a031681600160a060020a031614151515610d7457600080fd5b610d8060055484611945565b600555600160a060020a038416600090815260066020526040902054610da69084611945565b600160a060020a038516600090815260066020526040902055610dc8846114b6565b7f9386c90217c323f58030f9dadcbc938f807a940f4ff41cd4cead9562f5da7dc38360405190815260200160405180910390a183600160a060020a031630600160a060020a03166000805160206119ec8339815191528560405190815260200160405180910390a35b5b505b505b5050565b60005433600160a060020a03908116911614610e5557600080fd5b601054610100900460ff1615610e6a57600080fd5b6008805460018101610e7c8382611976565b916000526020600020900160005b50829055505b5b50565b600054600160a060020a031681565b60038054600181600116156101000203166002900480601f0160208091040260200160405190810160405280929190818152602001828054600181600116156101000203166002900480156107c55780601f1061079a576101008083540402835291602001916107c5565b820191906000526020600020905b8154815290600101906020018083116107a857829003601f168201915b505050505081565b610f4a33611542565b81600160a060020a031633600160a060020a03161480610f78575060005433600160a060020a039081169116145b1515610f8357600080fd5b80610f8d83611342565b1015610f9857600080fd5b600160a060020a038216600090815260066020526040902054610fbb908261195f565b600160a060020a038316600090815260066020526040902055600554610fe1908261195f565b600555600160a060020a033081169083166000805160206119ec8339815191528360405190815260200160405180910390a37f9a1b418bc061a5d80270261562e6986a35d995f8051145f277be16103abd34538160405190815260200160405180910390a15b5050565b60005433600160a060020a0390811691161461106657600080fd5b6000805473ffffffffffffffffffffffffffffffffffffffff1916600160a060020a0383161790555b5b50565b60105460009060ff1615156110a457fe5b6110ad33611542565b600e5460098054909161ffff169081106110c357fe5b906000526020600020906003020160005b505442106110ee576110e533611661565b6110ee83611661565b5b816110f933611342565b101561110457600080fd5b600160a060020a033316600090815260066020908152604080832080548690039055600d9091528120541180156111535750600160a060020a0333166000908152600d60205260409020544290115b1561117f5733600160a060020a0381166000908152600d602052604090205461117f9190859085611437565b5b600160a060020a0383166000908152600660205260409020546111a39083611945565b600160a060020a0384166000908152600660205260409020556111c5836114b6565b82600160a060020a031633600160a060020a03166000805160206119ec8339815191528460405190815260200160405180910390a35060015b5b92915050565b60105460ff1681565b60008361121b81856107cd565b156113395780600160a060020a0316638f4ffcb1338630876040518563ffffffff167c01000000000000000000000000000000000000000000000000000000000281526004018085600160a060020a0316600160a060020a0316815260200184815260200183600160a060020a0316600160a060020a0316815260200180602001828103825283818151815260200191508051906020019080838360005b838110156112d25780820151818401525b6020016112b9565b50505050905090810190601f1680156112ff5780820380516001836020036101000a031916815260200191505b5095505050505050600060405180830381600087803b151561132057600080fd5b6102c65a03f1151561133157600080fd5b505050600191505b5b509392505050565b600160a060020a03811660008181526007602090815260408083208380528252808320549383526006909152902054035b919050565b600b80548290811061138657fe5b906000526020600020900160005b915054906101000a9004600160a060020a031681565b600160a060020a038083166000908152600a60209081526040808320938516835292905220545b92915050565b600760209081526000928352604080842090915290825290205481565b60005433600160a060020a0390811691161461140f57600080fd5b600160a060020a0382166000908152600d602052604090208190555b5b5050565b600b545b90565b600160a060020a0383811660008181526007602090815260408083208380529091528082208054860190558582529081902080548501905590918616907f46a1749a7648b704d1ad3fe33741b13174a4b1641db362e808d00eab7250d10690849086905191825260208201526040908101905180910390a35b50505050565b600160a060020a0381166000908152600c602052604090205460ff16151561086357600160a060020a0381166000908152600c60205260409020805460ff19166001908117909155600b8054909181016115108382611976565b916000526020600020900160005b8154600160a060020a038086166101009390930a92830292021916179055505b5b50565b600160a060020a0381166000908152600760209081526040808320838052909152812054151561157157610c56565b5060005b600854811015610c56574260088281548110151561158f57fe5b906000526020600020900160005b5054101561165357600160a060020a038216600090815260076020526040812060088054919291849081106115ce57fe5b906000526020600020900160005b505481526020808201929092526040908101600090812054600160a060020a03861680835260078086528484208480528087529484208054939093039092558252909252600880548391908590811061163157fe5b906000526020600020900160005b505481526020810191909152604001600020555b5b600101611575565b5b5050565b600e54600160a060020a0382166000908152600f60205260408120549091829161ffff909116901061169257610944565b600e54600980546103e89261ffff169081106116aa57fe5b906000526020600020906003020160005b5060010154600160a060020a038516600090815260066020526040902054028115156116e357fe5b600160a060020a03808616600081815260066020526040908190208054959094049485019093559294503016906000805160206119ec8339815191529085905190815260200160405180910390a37f9386c90217c323f58030f9dadcbc938f807a940f4ff41cd4cead9562f5da7dc38260405190815260200160405180910390a161177060055483611945565b600555600160a060020a0383166000908152600760209081526040808320838052909152812054111561191b57600e54600980546103e89261ffff169081106117b557fe5b906000526020600020906003020160005b5060010154600160a060020a0385166000908152600760209081526040808320838052909152902054028115156117f957fe5b600160a060020a03851660009081526007602090815260408083208380529091528120805493909204909201905590505b60085481101561191b57600e54600980546103e89261ffff1690811061184c57fe5b906000526020600020906003020160005b5060010154600160a060020a0385166000908152600760205260408120600880549192918690811061188b57fe5b906000526020600020900160005b5054815260200190815260200160002054028115156118b457fe5b046007600085600160a060020a0316600160a060020a0316815260200190815260200160002060006008848154811015156118eb57fe5b906000526020600020900160005b505481526020810191909152604001600020805490910190555b60010161182a565b5b600e54600160a060020a0384166000908152600f6020526040902061ffff90911690555b505050565b60008282018381101561195457fe5b8091505b5092915050565b60008183101561196b57fe5b508082035b92915050565b815481835581811511610944576000838152602090206109449181019083016119ca565b5b505050565b815481835581811511610944576000838152602090206109449181019083016119ca565b5b505050565b61086b91905b808211156119e457600081556001016119d0565b5090565b905600ddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3efa165627a7a7230582051d50aa285e195edae4771702454d4527b0b5f02d3b5f70ca5d39956b88770f80029
Deployed Bytecode
0x606060405236156101515763ffffffff7c0100000000000000000000000000000000000000000000000000000000600035041663037ca6c4811461016457806306fdde0314610179578063095ea7b3146102045780631608f18f1461023a57806318160ddd1461025457806323a36d2b1461027957806323b872dd146102a05780632cf86006146102dc578063313ce567146102f45780635a3b7e421461031d57806370a08231146103a8578063867904b4146103d95780638d37f52c146103fd5780638da5cb5b1461041557806395d89b4114610444578063a24835d1146104cf578063a6f9dae1146104f3578063a9059cbb14610514578063bef97c871461054a578063cae9ca5114610571578063d294cb0f146105ea578063d8ab92081461061b578063dd62ed3e1461064d578063e27f023614610684578063ea6ca182146106b8578063ec530de6146106dc575b341561015c57600080fd5b5b600080fd5b005b341561016f57600080fd5b610162610701565b005b341561018457600080fd5b61018c61072f565b60405160208082528190810183818151815260200191508051906020019080838360005b838110156101c95780820151818401525b6020016101b0565b50505050905090810190601f1680156101f65780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b341561020f57600080fd5b610226600160a060020a03600435166024356107cd565b604051901515815260200160405180910390f35b341561024557600080fd5b610162600435151561083a565b005b341561025f57600080fd5b610267610867565b60405190815260200160405180910390f35b341561028457600080fd5b610162600160a060020a036004351660243560443561086e565b005b34156102ab57600080fd5b610226600160a060020a036004358116906024351660443561094a565b604051901515815260200160405180910390f35b34156102e757600080fd5b610162600435610b08565b005b34156102ff57600080fd5b610307610c5b565b60405160ff909116815260200160405180910390f35b341561032857600080fd5b61018c610c64565b60405160208082528190810183818151815260200191508051906020019080838360005b838110156101c95780820151818401525b6020016101b0565b50505050905090810190601f1680156101f65780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b34156103b357600080fd5b610267600160a060020a0360043516610d02565b60405190815260200160405180910390f35b34156103e457600080fd5b610162600160a060020a0360043516602435610d21565b005b341561040857600080fd5b610162600435610e3a565b005b341561042057600080fd5b610428610e94565b604051600160a060020a03909116815260200160405180910390f35b341561044f57600080fd5b61018c610ea3565b60405160208082528190810183818151815260200191508051906020019080838360005b838110156101c95780820151818401525b6020016101b0565b50505050905090810190601f1680156101f65780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b34156104da57600080fd5b610162600160a060020a0360043516602435610f41565b005b34156104fe57600080fd5b610162600160a060020a036004351661104b565b005b341561051f57600080fd5b610226600160a060020a0360043516602435611093565b604051901515815260200160405180910390f35b341561055557600080fd5b610226611205565b604051901515815260200160405180910390f35b341561057c57600080fd5b61022660048035600160a060020a03169060248035919060649060443590810190830135806020601f8201819004810201604051908101604052818152929190602084018383808284375094965061120e95505050505050565b604051901515815260200160405180910390f35b34156105f557600080fd5b610267600160a060020a0360043516611342565b60405190815260200160405180910390f35b341561062657600080fd5b610428600435611378565b604051600160a060020a03909116815260200160405180910390f35b341561065857600080fd5b610267600160a060020a03600435811690602435166113aa565b60405190815260200160405180910390f35b341561068f57600080fd5b610267600160a060020a03600435166024356113d7565b60405190815260200160405180910390f35b34156106c357600080fd5b610162600160a060020a03600435166024356113f4565b005b34156106e757600080fd5b610267611430565b60405190815260200160405180910390f35b60005433600160a060020a0390811691161461071c57600080fd5b6010805461ff0019166101001790555b5b565b60028054600181600116156101000203166002900480601f0160208091040260200160405190810160405280929190818152602001828054600181600116156101000203166002900480156107c55780601f1061079a576101008083540402835291602001916107c5565b820191906000526020600020905b8154815290600101906020018083116107a857829003601f168201915b505050505081565b600160a060020a033381166000818152600a6020908152604080832094871680845294909152808220859055909291907f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b9259085905190815260200160405180910390a35060015b92915050565b60005433600160a060020a0390811691161461085557600080fd5b6010805460ff191682151790555b5b50565b6005545b90565b60005433600160a060020a0390811691161461088957600080fd5b428111156108a9576000546108a990600160a060020a0316848385611437565b5b600160a060020a0383166000908152600660205260409081902080548401905560058054840190557f9386c90217c323f58030f9dadcbc938f807a940f4ff41cd4cead9562f5da7dc39083905190815260200160405180910390a161090e836114b6565b82600160a060020a031630600160a060020a03166000805160206119ec8339815191528460405190815260200160405180910390a35b5b505050565b60105460009060ff16151561095b57fe5b61096484611542565b600e5460098054909161ffff1690811061097a57fe5b906000526020600020906003020160005b505442106109a55761099c84611661565b6109a583611661565b5b816109b085611342565b10156109bb57600080fd5b600160a060020a038085166000908152600a6020908152604080832033909416835292905220548211156109ee57600080fd5b600160a060020a038085166000908152600660205260408082208054869003905591851681522054610a209083611945565b600160a060020a03808516600090815260066020908152604080832094909455878316808352600a825284832033909416835292815283822080548790039055918152600d90915290812054118015610a915750600160a060020a0384166000908152600d60205260409020544290115b15610abd57600160a060020a0384166000908152600d6020526040902054610abd908590859085611437565b5b610ac7836114b6565b82600160a060020a031684600160a060020a03166000805160206119ec8339815191528460405190815260200160405180910390a35060015b5b9392505050565b600e546009805460009261ffff16908110610b1f57fe5b906000526020600020906003020160005b5054421015610b3e57600080fd5b60008211610b4b57600080fd5b600e5460098054849261ffff16908110610b6157fe5b906000526020600020906003020160005b5060020154600b5491019250821115610b8b57600b5491505b600e5460098054909161ffff16908110610ba157fe5b906000526020600020906003020160005b506002015490505b81811015610c0257610bf9600b82815481101515610bd457fe5b906000526020600020900160005b9054906101000a9004600160a060020a0316611661565b5b600101610bba565b600b54821415610c2957600e805461ffff8082166001011661ffff19909116179055610c56565b600e5460098054849261ffff16908110610c3f57fe5b906000526020600020906003020160005b50600201555b5b5050565b60045460ff1681565b60018054600181600116156101000203166002900480601f0160208091040260200160405190810160405280929190818152602001828054600181600116156101000203166002900480156107c55780601f1061079a576101008083540402835291602001916107c5565b820191906000526020600020905b8154815290600101906020018083116107a857829003601f168201915b505050505081565b600160a060020a0381166000908152600660205260409020545b919050565b60005433600160a060020a03908116911614610d3c57600080fd5b81600160a060020a0381161515610d5257600080fd5b8230600160a060020a031681600160a060020a031614151515610d7457600080fd5b610d8060055484611945565b600555600160a060020a038416600090815260066020526040902054610da69084611945565b600160a060020a038516600090815260066020526040902055610dc8846114b6565b7f9386c90217c323f58030f9dadcbc938f807a940f4ff41cd4cead9562f5da7dc38360405190815260200160405180910390a183600160a060020a031630600160a060020a03166000805160206119ec8339815191528560405190815260200160405180910390a35b5b505b505b5050565b60005433600160a060020a03908116911614610e5557600080fd5b601054610100900460ff1615610e6a57600080fd5b6008805460018101610e7c8382611976565b916000526020600020900160005b50829055505b5b50565b600054600160a060020a031681565b60038054600181600116156101000203166002900480601f0160208091040260200160405190810160405280929190818152602001828054600181600116156101000203166002900480156107c55780601f1061079a576101008083540402835291602001916107c5565b820191906000526020600020905b8154815290600101906020018083116107a857829003601f168201915b505050505081565b610f4a33611542565b81600160a060020a031633600160a060020a03161480610f78575060005433600160a060020a039081169116145b1515610f8357600080fd5b80610f8d83611342565b1015610f9857600080fd5b600160a060020a038216600090815260066020526040902054610fbb908261195f565b600160a060020a038316600090815260066020526040902055600554610fe1908261195f565b600555600160a060020a033081169083166000805160206119ec8339815191528360405190815260200160405180910390a37f9a1b418bc061a5d80270261562e6986a35d995f8051145f277be16103abd34538160405190815260200160405180910390a15b5050565b60005433600160a060020a0390811691161461106657600080fd5b6000805473ffffffffffffffffffffffffffffffffffffffff1916600160a060020a0383161790555b5b50565b60105460009060ff1615156110a457fe5b6110ad33611542565b600e5460098054909161ffff169081106110c357fe5b906000526020600020906003020160005b505442106110ee576110e533611661565b6110ee83611661565b5b816110f933611342565b101561110457600080fd5b600160a060020a033316600090815260066020908152604080832080548690039055600d9091528120541180156111535750600160a060020a0333166000908152600d60205260409020544290115b1561117f5733600160a060020a0381166000908152600d602052604090205461117f9190859085611437565b5b600160a060020a0383166000908152600660205260409020546111a39083611945565b600160a060020a0384166000908152600660205260409020556111c5836114b6565b82600160a060020a031633600160a060020a03166000805160206119ec8339815191528460405190815260200160405180910390a35060015b5b92915050565b60105460ff1681565b60008361121b81856107cd565b156113395780600160a060020a0316638f4ffcb1338630876040518563ffffffff167c01000000000000000000000000000000000000000000000000000000000281526004018085600160a060020a0316600160a060020a0316815260200184815260200183600160a060020a0316600160a060020a0316815260200180602001828103825283818151815260200191508051906020019080838360005b838110156112d25780820151818401525b6020016112b9565b50505050905090810190601f1680156112ff5780820380516001836020036101000a031916815260200191505b5095505050505050600060405180830381600087803b151561132057600080fd5b6102c65a03f1151561133157600080fd5b505050600191505b5b509392505050565b600160a060020a03811660008181526007602090815260408083208380528252808320549383526006909152902054035b919050565b600b80548290811061138657fe5b906000526020600020900160005b915054906101000a9004600160a060020a031681565b600160a060020a038083166000908152600a60209081526040808320938516835292905220545b92915050565b600760209081526000928352604080842090915290825290205481565b60005433600160a060020a0390811691161461140f57600080fd5b600160a060020a0382166000908152600d602052604090208190555b5b5050565b600b545b90565b600160a060020a0383811660008181526007602090815260408083208380529091528082208054860190558582529081902080548501905590918616907f46a1749a7648b704d1ad3fe33741b13174a4b1641db362e808d00eab7250d10690849086905191825260208201526040908101905180910390a35b50505050565b600160a060020a0381166000908152600c602052604090205460ff16151561086357600160a060020a0381166000908152600c60205260409020805460ff19166001908117909155600b8054909181016115108382611976565b916000526020600020900160005b8154600160a060020a038086166101009390930a92830292021916179055505b5b50565b600160a060020a0381166000908152600760209081526040808320838052909152812054151561157157610c56565b5060005b600854811015610c56574260088281548110151561158f57fe5b906000526020600020900160005b5054101561165357600160a060020a038216600090815260076020526040812060088054919291849081106115ce57fe5b906000526020600020900160005b505481526020808201929092526040908101600090812054600160a060020a03861680835260078086528484208480528087529484208054939093039092558252909252600880548391908590811061163157fe5b906000526020600020900160005b505481526020810191909152604001600020555b5b600101611575565b5b5050565b600e54600160a060020a0382166000908152600f60205260408120549091829161ffff909116901061169257610944565b600e54600980546103e89261ffff169081106116aa57fe5b906000526020600020906003020160005b5060010154600160a060020a038516600090815260066020526040902054028115156116e357fe5b600160a060020a03808616600081815260066020526040908190208054959094049485019093559294503016906000805160206119ec8339815191529085905190815260200160405180910390a37f9386c90217c323f58030f9dadcbc938f807a940f4ff41cd4cead9562f5da7dc38260405190815260200160405180910390a161177060055483611945565b600555600160a060020a0383166000908152600760209081526040808320838052909152812054111561191b57600e54600980546103e89261ffff169081106117b557fe5b906000526020600020906003020160005b5060010154600160a060020a0385166000908152600760209081526040808320838052909152902054028115156117f957fe5b600160a060020a03851660009081526007602090815260408083208380529091528120805493909204909201905590505b60085481101561191b57600e54600980546103e89261ffff1690811061184c57fe5b906000526020600020906003020160005b5060010154600160a060020a0385166000908152600760205260408120600880549192918690811061188b57fe5b906000526020600020900160005b5054815260200190815260200160002054028115156118b457fe5b046007600085600160a060020a0316600160a060020a0316815260200190815260200160002060006008848154811015156118eb57fe5b906000526020600020900160005b505481526020810191909152604001600020805490910190555b60010161182a565b5b600e54600160a060020a0384166000908152600f6020526040902061ffff90911690555b505050565b60008282018381101561195457fe5b8091505b5092915050565b60008183101561196b57fe5b508082035b92915050565b815481835581811511610944576000838152602090206109449181019083016119ca565b5b505050565b815481835581811511610944576000838152602090206109449181019083016119ca565b5b505050565b61086b91905b808211156119e457600081556001016119d0565b5090565b905600ddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3efa165627a7a7230582051d50aa285e195edae4771702454d4527b0b5f02d3b5f70ca5d39956b88770f80029
Swarm Source
bzzr://51d50aa285e195edae4771702454d4527b0b5f02d3b5f70ca5d39956b88770f8
Loading...
Loading
Loading...
Loading
[ Download: CSV Export ]
[ Download: CSV Export ]
A token is a representation of an on-chain or off-chain asset. The token page shows information such as price, total supply, holders, transfers and social links. Learn more about this page in our Knowledge Base.