More Info
Private Name Tags
ContractCreator
Latest 25 from a total of 453 transactions
Transaction Hash |
Method
|
Block
|
From
|
To
|
|||||
---|---|---|---|---|---|---|---|---|---|
Update Token Per... | 8473185 | 2000 days ago | IN | 0 ETH | 0.00005704 | ||||
Update Token Per... | 8440197 | 2006 days ago | IN | 0 ETH | 0.00028522 | ||||
Update Token Per... | 8421259 | 2009 days ago | IN | 0 ETH | 0.00008556 | ||||
Update Token Per... | 8407028 | 2011 days ago | IN | 0 ETH | 0.00022817 | ||||
Update Token Per... | 8393633 | 2013 days ago | IN | 0 ETH | 0.00019965 | ||||
Update Token Per... | 8375406 | 2016 days ago | IN | 0 ETH | 0.00003137 | ||||
Update Token Per... | 8357210 | 2019 days ago | IN | 0 ETH | 0.00002852 | ||||
Update Token Per... | 8353502 | 2019 days ago | IN | 0 ETH | 0.00045635 | ||||
Update Token Per... | 8349984 | 2020 days ago | IN | 0 ETH | 0.00034226 | ||||
Update Token Per... | 8349719 | 2020 days ago | IN | 0 ETH | 0.00005704 | ||||
Update Token Per... | 8315611 | 2025 days ago | IN | 0 ETH | 0.00015687 | ||||
Update Token Per... | 8299473 | 2027 days ago | IN | 0 ETH | 0.00003422 | ||||
Update Token Per... | 8296532 | 2028 days ago | IN | 0 ETH | 0.00002852 | ||||
Update Token Per... | 8275005 | 2031 days ago | IN | 0 ETH | 0.00057044 | ||||
Update Token Per... | 8232084 | 2038 days ago | IN | 0 ETH | 0.00002852 | ||||
Update Token Per... | 8219777 | 2040 days ago | IN | 0 ETH | 0.00057044 | ||||
Update Token Per... | 8205322 | 2042 days ago | IN | 0 ETH | 0.00011408 | ||||
Update Token Per... | 8175749 | 2047 days ago | IN | 0 ETH | 0.00008556 | ||||
Update Token Per... | 8169041 | 2048 days ago | IN | 0 ETH | 0.00005704 | ||||
Update Token Per... | 8163197 | 2049 days ago | IN | 0 ETH | 0.00071305 | ||||
Update Token Per... | 8162947 | 2049 days ago | IN | 0 ETH | 0.00057044 | ||||
Update Token Per... | 8154484 | 2050 days ago | IN | 0 ETH | 0.00003137 | ||||
Update Token Per... | 8152428 | 2050 days ago | IN | 0 ETH | 0.00012834 | ||||
Update Token Per... | 8148637 | 2051 days ago | IN | 0 ETH | 0.00016257 | ||||
Update Token Per... | 8128074 | 2054 days ago | IN | 0 ETH | 0.00008556 |
Latest 1 internal transaction
Advanced mode:
Parent Transaction Hash | Block |
From
|
To
|
|||
---|---|---|---|---|---|---|
6587206 | 2312 days ago | 0.02982235 ETH |
Loading...
Loading
Contract Source Code Verified (Exact Match)
Contract Name:
DOCTokenSale
Compiler Version
v0.4.19+commit.c4cbbb05
Optimization Enabled:
No with 200 runs
Other Settings:
default evmVersion
Contract Source Code (Solidity)
/** *Submitted for verification at Etherscan.io on 2018-07-22 */ pragma solidity ^0.4.19; library SafeMath { function add(uint a, uint b) internal pure returns (uint c) { c = a + b; require(c >= a); } function sub(uint a, uint b) internal pure returns (uint c) { require(b <= a); c = a - b; } function mul(uint a, uint b) internal pure returns (uint c) { c = a * b; require(a == 0 || c / a == b); } function div(uint a, uint b) internal pure returns (uint c) { require(b > 0); c = a / b; } } contract Owned { address public owner; address public proposedOwner = address(0); event OwnershipTransferInitiated(address indexed _proposedOwner); event OwnershipTransferCompleted(address indexed _newOwner); event OwnershipTransferCanceled(); function Owned() public { owner = msg.sender; } modifier onlyOwner() { require(isOwner(msg.sender)); _; } function isOwner(address _address) public view returns (bool) { return (_address == owner); } function initiateOwnershipTransfer(address _proposedOwner) public onlyOwner returns (bool) { require(_proposedOwner != address(0)); require(_proposedOwner != address(this)); require(_proposedOwner != owner); proposedOwner = _proposedOwner; OwnershipTransferInitiated(proposedOwner); return true; } function cancelOwnershipTransfer() public onlyOwner returns (bool) { //if proposedOwner address already address(0) then it will return true. if (proposedOwner == address(0)) { return true; } //if not then first it will do address(0( then it will return true. proposedOwner = address(0); OwnershipTransferCanceled(); return true; } function completeOwnershipTransfer() public returns (bool) { require(msg.sender == proposedOwner); owner = msg.sender; proposedOwner = address(0); OwnershipTransferCompleted(owner); return true; } } contract TokenTransfer { // minimal subset of ERC20 function transfer(address _to, uint256 _value) public returns (bool success); function decimals() public view returns (uint8 tokenDecimals); function balanceOf(address _owner) public view returns (uint256 balance); } contract FlexibleTokenSale is Owned { using SafeMath for uint256; // // Lifecycle // bool public suspended; // // Pricing // uint256 public tokenPrice; uint256 public tokenPerEther; uint256 public contributionMin; uint256 public tokenConversionFactor; // // Wallets // address public walletAddress; // // Token // TokenTransfer token; // // Counters // uint256 public totalTokensSold; uint256 public totalEtherCollected; // // Price Update Address // address public priceUpdateAddress; // // Events // event Initialized(); event TokenPriceUpdated(uint256 _newValue); event TokenPerEtherUpdated(uint256 _newValue); event TokenMinUpdated(uint256 _newValue); event WalletAddressUpdated(address indexed _newAddress); event SaleSuspended(); event SaleResumed(); event TokensPurchased(address indexed _beneficiary, uint256 _cost, uint256 _tokens); event TokensReclaimed(uint256 _amount); event PriceAddressUpdated(address indexed _newAddress); function FlexibleTokenSale(address _tokenAddress,address _walletAddress,uint _tokenPerEther,address _priceUpdateAddress) public Owned() { require(_walletAddress != address(0)); require(_walletAddress != address(this)); require(address(token) == address(0)); require(address(_tokenAddress) != address(0)); require(address(_tokenAddress) != address(this)); require(address(_tokenAddress) != address(walletAddress)); walletAddress = _walletAddress; priceUpdateAddress = _priceUpdateAddress; token = TokenTransfer(_tokenAddress); suspended = false; tokenPrice = 100; tokenPerEther = _tokenPerEther; contributionMin = 5 * 10**18;//minimum 5 DOC token totalTokensSold = 0; totalEtherCollected = 0; // This factor is used when converting cost <-> tokens. // 18 is because of the ETH -> Wei conversion. // 2 because toekn price and etherPerToken Price are expressed as 100 for $1.00 and 100000 for $1000.00 (with 2 decimals). tokenConversionFactor = 10**(uint256(18).sub(token.decimals()).add(2)); assert(tokenConversionFactor > 0); } // // Owner Configuation // // Allows the owner to change the wallet address which is used for collecting // ether received during the token sale. function setWalletAddress(address _walletAddress) external onlyOwner returns(bool) { require(_walletAddress != address(0)); require(_walletAddress != address(this)); require(_walletAddress != address(token)); require(isOwner(_walletAddress) == false); walletAddress = _walletAddress; WalletAddressUpdated(_walletAddress); return true; } //set token price in between $1 to $1000, pass 111 for $1.11, 100000 for $1000 function setTokenPrice(uint _tokenPrice) external onlyOwner returns (bool) { require(_tokenPrice >= 100 && _tokenPrice <= 100000); tokenPrice=_tokenPrice; TokenPriceUpdated(_tokenPrice); return true; } function setMinToken(uint256 _minToken) external onlyOwner returns(bool) { require(_minToken > 0); contributionMin = _minToken; TokenMinUpdated(_minToken); return true; } // Allows the owner to suspend the sale until it is manually resumed at a later time. function suspend() external onlyOwner returns(bool) { if (suspended == true) { return false; } suspended = true; SaleSuspended(); return true; } // Allows the owner to resume the sale. function resume() external onlyOwner returns(bool) { if (suspended == false) { return false; } suspended = false; SaleResumed(); return true; } // // Contributions // // Default payable function which can be used to purchase tokens. function () payable public { buyTokens(msg.sender); } // Allows the caller to purchase tokens for a specific beneficiary (proxy purchase). function buyTokens(address _beneficiary) public payable returns (uint256) { require(!suspended); require(address(token) != address(0)); require(_beneficiary != address(0)); require(_beneficiary != address(this)); require(_beneficiary != address(token)); // We don't want to allow the wallet collecting ETH to // directly be used to purchase tokens. require(msg.sender != address(walletAddress)); // Check how many tokens are still available for sale. uint256 saleBalance = token.balanceOf(address(this)); assert(saleBalance > 0); return buyTokensInternal(_beneficiary); } function updateTokenPerEther(uint _etherPrice) public returns(bool){ require(_etherPrice > 0); require(msg.sender == priceUpdateAddress || msg.sender == owner); tokenPerEther=_etherPrice; TokenPerEtherUpdated(_etherPrice); return true; } function updatePriceAddress(address _newAddress) public onlyOwner returns(bool){ require(_newAddress != address(0)); priceUpdateAddress=_newAddress; PriceAddressUpdated(_newAddress); return true; } function buyTokensInternal(address _beneficiary) internal returns (uint256) { // Calculate how many tokens the contributor could purchase based on ETH received. uint256 tokens =msg.value.mul(tokenPerEther.mul(100).div(tokenPrice)).div(tokenConversionFactor); require(tokens >= contributionMin); // This is the actual amount of ETH that can be sent to the wallet. uint256 contribution =msg.value; walletAddress.transfer(contribution); totalEtherCollected = totalEtherCollected.add(contribution); // Update our stats counters. totalTokensSold = totalTokensSold.add(tokens); // Transfer tokens to the beneficiary. require(token.transfer(_beneficiary, tokens)); TokensPurchased(_beneficiary, msg.value, tokens); return tokens; } // Allows the owner to take back the tokens that are assigned to the sale contract. function reclaimTokens() external onlyOwner returns (bool) { uint256 tokens = token.balanceOf(address(this)); if (tokens == 0) { return false; } require(token.transfer(owner, tokens)); TokensReclaimed(tokens); return true; } } contract DOCTokenSaleConfig { address WALLET_ADDRESS = 0x347364f2bc343f6c676620d09eb9c37431dbee60; address TOKEN_ADDRESS = 0xede3fe45d0c671f21ed10eb7bcd0a85ec9f8418e; address UPDATE_PRICE_ADDRESS = 0x29b997d4b41b9840e60b86f32be029382b14bdcd; uint ETHER_PRICE = 46500;//set current ether price. if current price 1000.00 then write 100000 } contract DOCTokenSale is FlexibleTokenSale, DOCTokenSaleConfig { function DOCTokenSale() public FlexibleTokenSale(TOKEN_ADDRESS,WALLET_ADDRESS,ETHER_PRICE,UPDATE_PRICE_ADDRESS) { } }
Contract Security Audit
- No Contract Security Audit Submitted- Submit Audit Here
[{"constant":false,"inputs":[],"name":"resume","outputs":[{"name":"","type":"bool"}],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[],"name":"cancelOwnershipTransfer","outputs":[{"name":"","type":"bool"}],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[{"name":"_address","type":"address"}],"name":"isOwner","outputs":[{"name":"","type":"bool"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"tokenPerEther","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[],"name":"reclaimTokens","outputs":[{"name":"","type":"bool"}],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[],"name":"tokenConversionFactor","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"_minToken","type":"uint256"}],"name":"setMinToken","outputs":[{"name":"","type":"bool"}],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[],"name":"totalTokensSold","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"_tokenPrice","type":"uint256"}],"name":"setTokenPrice","outputs":[{"name":"","type":"bool"}],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[],"name":"walletAddress","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"_newAddress","type":"address"}],"name":"updatePriceAddress","outputs":[{"name":"","type":"bool"}],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[],"name":"suspended","outputs":[{"name":"","type":"bool"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"tokenPrice","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"owner","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"priceUpdateAddress","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"_walletAddress","type":"address"}],"name":"setWalletAddress","outputs":[{"name":"","type":"bool"}],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"name":"_etherPrice","type":"uint256"}],"name":"updateTokenPerEther","outputs":[{"name":"","type":"bool"}],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[],"name":"contributionMin","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"_proposedOwner","type":"address"}],"name":"initiateOwnershipTransfer","outputs":[{"name":"","type":"bool"}],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[],"name":"totalEtherCollected","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"proposedOwner","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[],"name":"suspend","outputs":[{"name":"","type":"bool"}],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[],"name":"completeOwnershipTransfer","outputs":[{"name":"","type":"bool"}],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"name":"_beneficiary","type":"address"}],"name":"buyTokens","outputs":[{"name":"","type":"uint256"}],"payable":true,"stateMutability":"payable","type":"function"},{"inputs":[],"payable":false,"stateMutability":"nonpayable","type":"constructor"},{"payable":true,"stateMutability":"payable","type":"fallback"},{"anonymous":false,"inputs":[],"name":"Initialized","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"name":"_newValue","type":"uint256"}],"name":"TokenPriceUpdated","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"name":"_newValue","type":"uint256"}],"name":"TokenPerEtherUpdated","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"name":"_newValue","type":"uint256"}],"name":"TokenMinUpdated","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"name":"_newAddress","type":"address"}],"name":"WalletAddressUpdated","type":"event"},{"anonymous":false,"inputs":[],"name":"SaleSuspended","type":"event"},{"anonymous":false,"inputs":[],"name":"SaleResumed","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"name":"_beneficiary","type":"address"},{"indexed":false,"name":"_cost","type":"uint256"},{"indexed":false,"name":"_tokens","type":"uint256"}],"name":"TokensPurchased","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"name":"_amount","type":"uint256"}],"name":"TokensReclaimed","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"name":"_newAddress","type":"address"}],"name":"PriceAddressUpdated","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"name":"_proposedOwner","type":"address"}],"name":"OwnershipTransferInitiated","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"name":"_newOwner","type":"address"}],"name":"OwnershipTransferCompleted","type":"event"},{"anonymous":false,"inputs":[],"name":"OwnershipTransferCanceled","type":"event"}]
Contract Creation Code
60606040526000600160006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555073347364f2bc343f6c676620d09eb9c37431dbee60600b60006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555073ede3fe45d0c671f21ed10eb7bcd0a85ec9f8418e600c60006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055507329b997d4b41b9840e60b86f32be029382b14bdcd600d60006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555061b5a4600e5534156200015757600080fd5b600c60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16600b60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16600e54600d60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16336000806101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550600073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff16141515156200024057600080fd5b3073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff16141515156200027c57600080fd5b600073ffffffffffffffffffffffffffffffffffffffff16600760009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16141515620002da57600080fd5b600073ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff16141515156200031757600080fd5b3073ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff16141515156200035357600080fd5b600660009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff1614151515620003b157600080fd5b82600660006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555080600a60006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555083600760006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055506000600160146101000a81548160ff021916908315150217905550606460028190555081600381905550674563918244f4000060048190555060006008819055506000600981905550620005b1600262000594600760009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663313ce5676000604051602001526040518163ffffffff167c0100000000000000000000000000000000000000000000000000000000028152600401602060405180830381600087803b15156200055657600080fd5b6102c65a03f115156200056857600080fd5b5050506040518051905060ff166012620005d36401000000000262001918179091906401000000009004565b620005f064010000000002620018fc179091906401000000009004565b600a0a6005819055506000600554111515620005c957fe5b505050506200060d565b6000828211151515620005e557600080fd5b818303905092915050565b600081830190508281101515156200060757600080fd5b92915050565b611960806200061d6000396000f30060606040526004361061013e576000357c0100000000000000000000000000000000000000000000000000000000900463ffffffff168063046f7da21461014a57806323452b9c146101775780632f54bf6e146101a45780632f77dba4146101f55780633c54caa51461021e57806353105fbc1461024b5780635558e1c31461027457806363b20117146102af5780636a61e5fc146102d85780636ad5b3ea146103135780636e8a6d1214610368578063702efdf3146103b95780637ff9b596146103e65780638da5cb5b1461040f5780639d8f4c2714610464578063ac1a386a146104b9578063b7dfc8a51461050a578063bcc13d1d14610545578063c0b6f5611461056e578063c7a02061146105bf578063d153b60c146105e8578063e6400bbe1461063d578063e71a78111461066a578063ec8ac4d814610697575b610147336106d9565b50005b341561015557600080fd5b61015d610986565b604051808215151515815260200191505060405180910390f35b341561018257600080fd5b61018a610a10565b604051808215151515815260200191505060405180910390f35b34156101af57600080fd5b6101db600480803573ffffffffffffffffffffffffffffffffffffffff16906020019091905050610afc565b604051808215151515815260200191505060405180910390f35b341561020057600080fd5b610208610b55565b6040518082815260200191505060405180910390f35b341561022957600080fd5b610231610b5b565b604051808215151515815260200191505060405180910390f35b341561025657600080fd5b61025e610dba565b6040518082815260200191505060405180910390f35b341561027f57600080fd5b6102956004808035906020019091905050610dc0565b604051808215151515815260200191505060405180910390f35b34156102ba57600080fd5b6102c2610e2c565b6040518082815260200191505060405180910390f35b34156102e357600080fd5b6102f96004808035906020019091905050610e32565b604051808215151515815260200191505060405180910390f35b341561031e57600080fd5b610326610eae565b604051808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b341561037357600080fd5b61039f600480803573ffffffffffffffffffffffffffffffffffffffff16906020019091905050610ed4565b604051808215151515815260200191505060405180910390f35b34156103c457600080fd5b6103cc610fb3565b604051808215151515815260200191505060405180910390f35b34156103f157600080fd5b6103f9610fc6565b6040518082815260200191505060405180910390f35b341561041a57600080fd5b610422610fcc565b604051808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b341561046f57600080fd5b610477610ff1565b604051808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b34156104c457600080fd5b6104f0600480803573ffffffffffffffffffffffffffffffffffffffff16906020019091905050611017565b604051808215151515815260200191505060405180910390f35b341561051557600080fd5b61052b60048080359060200190919050506111a9565b604051808215151515815260200191505060405180910390f35b341561055057600080fd5b6105586112b3565b6040518082815260200191505060405180910390f35b341561057957600080fd5b6105a5600480803573ffffffffffffffffffffffffffffffffffffffff169060200190919050506112b9565b604051808215151515815260200191505060405180910390f35b34156105ca57600080fd5b6105d2611451565b6040518082815260200191505060405180910390f35b34156105f357600080fd5b6105fb611457565b604051808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b341561064857600080fd5b61065061147d565b604051808215151515815260200191505060405180910390f35b341561067557600080fd5b61067d611506565b604051808215151515815260200191505060405180910390f35b6106c3600480803573ffffffffffffffffffffffffffffffffffffffff169060200190919050506106d9565b6040518082815260200191505060405180910390f35b600080600160149054906101000a900460ff161515156106f857600080fd5b600073ffffffffffffffffffffffffffffffffffffffff16600760009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff161415151561075657600080fd5b600073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff161415151561079257600080fd5b3073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff16141515156107cd57600080fd5b600760009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff161415151561082a57600080fd5b600660009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff161415151561088757600080fd5b600760009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166370a08231306000604051602001526040518263ffffffff167c0100000000000000000000000000000000000000000000000000000000028152600401808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001915050602060405180830381600087803b151561094c57600080fd5b6102c65a03f1151561095d57600080fd5b50505060405180519050905060008111151561097557fe5b61097e83611651565b915050919050565b600061099133610afc565b151561099c57600080fd5b60001515600160149054906101000a900460ff16151514156109c15760009050610a0d565b6000600160146101000a81548160ff0219169083151502179055507fbcbdbf400d5c713d9679ffa947f717848591ab5a7d1608c49119db603c4942cb60405160405180910390a1600190505b90565b6000610a1b33610afc565b1515610a2657600080fd5b600073ffffffffffffffffffffffffffffffffffffffff16600160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff161415610a865760019050610af9565b6000600160006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055507f670699162ea7ba4de638b5a57c2148aed9ee8bd69740a5e6a7db727e3886c88b60405160405180910390a1600190505b90565b60008060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff16149050919050565b60035481565b600080610b6733610afc565b1515610b7257600080fd5b600760009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166370a08231306000604051602001526040518263ffffffff167c0100000000000000000000000000000000000000000000000000000000028152600401808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001915050602060405180830381600087803b1515610c3757600080fd5b6102c65a03f11515610c4857600080fd5b5050506040518051905090506000811415610c665760009150610db6565b600760009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663a9059cbb6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff16836000604051602001526040518363ffffffff167c0100000000000000000000000000000000000000000000000000000000028152600401808373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200182815260200192505050602060405180830381600087803b1515610d5457600080fd5b6102c65a03f11515610d6557600080fd5b505050604051805190501515610d7a57600080fd5b7fbce3cc672456937708767d1642a17cacb1962753bd5cff46c8dbd377906a6b4b816040518082815260200191505060405180910390a1600191505b5090565b60055481565b6000610dcb33610afc565b1515610dd657600080fd5b600082111515610de557600080fd5b816004819055507f838a23ac9e96487355a252492b0598f7ff9a62dc533be533083f9d87d8ed8281826040518082815260200191505060405180910390a160019050919050565b60085481565b6000610e3d33610afc565b1515610e4857600080fd5b60648210158015610e5c5750620186a08211155b1515610e6757600080fd5b816002819055507f6b361c807733cc94a3b7bda39c1c94dcc0511e91aa47b0f7f918068e93976890826040518082815260200191505060405180910390a160019050919050565b600660009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b6000610edf33610afc565b1515610eea57600080fd5b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff1614151515610f2657600080fd5b81600a60006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055508173ffffffffffffffffffffffffffffffffffffffff167ff06d2ea62202cdc3fe76575c895b2d6e5463556b289a3e1eb5fd135bb81c556160405160405180910390a260019050919050565b600160149054906101000a900460ff1681565b60025481565b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b600a60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b600061102233610afc565b151561102d57600080fd5b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff161415151561106957600080fd5b3073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff16141515156110a457600080fd5b600760009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff161415151561110157600080fd5b6000151561110e83610afc565b151514151561111c57600080fd5b81600660006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055508173ffffffffffffffffffffffffffffffffffffffff167f0428ca271a7bee83fddcf583de5ba0a5a69f42cbe32587b07bb38925ed96de8d60405160405180910390a260019050919050565b600080821115156111b957600080fd5b600a60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff16148061126157506000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff16145b151561126c57600080fd5b816003819055507f448ac9d0b6fa10af70a395b7ea0e2959f605b9c71e08569ba806bf8a4f417ea3826040518082815260200191505060405180910390a160019050919050565b60045481565b60006112c433610afc565b15156112cf57600080fd5b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff161415151561130b57600080fd5b3073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff161415151561134657600080fd5b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff16141515156113a257600080fd5b81600160006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550600160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff167f20f5afdf40bf7b43c89031a5d4369a30b159e512d164aa46124bcb706b4a1caf60405160405180910390a260019050919050565b60095481565b600160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b600061148833610afc565b151561149357600080fd5b60011515600160149054906101000a900460ff16151514156114b85760009050611503565b60018060146101000a81548160ff0219169083151502179055507fe14916b4c867f32e91547d295f9b845b805d5b8c813daa3adbc1597f80a0c5eb60405160405180910390a1600190505b90565b6000600160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614151561156457600080fd5b336000806101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055506000600160006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055506000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff167f624adc4c72536289dd9d5439ccdeccd8923cb9af95fb626b21935447c77b840760405160405180910390a26001905090565b60008060006116a660055461169861168960025461167b60646003546118a790919063ffffffff16565b6118d890919063ffffffff16565b346118a790919063ffffffff16565b6118d890919063ffffffff16565b915060045482101515156116b957600080fd5b349050600660009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166108fc829081150290604051600060405180830381858888f19350505050151561171e57600080fd5b611733816009546118fc90919063ffffffff16565b60098190555061174e826008546118fc90919063ffffffff16565b600881905550600760009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663a9059cbb85846000604051602001526040518363ffffffff167c0100000000000000000000000000000000000000000000000000000000028152600401808373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200182815260200192505050602060405180830381600087803b151561182157600080fd5b6102c65a03f1151561183257600080fd5b50505060405180519050151561184757600080fd5b8373ffffffffffffffffffffffffffffffffffffffff167f8fafebcaf9d154343dad25669bfa277f4fbacd7ac6b0c4fed522580e040a0f333484604051808381526020018281526020019250505060405180910390a28192505050919050565b6000818302905060008314806118c757508183828115156118c457fe5b04145b15156118d257600080fd5b92915050565b600080821115156118e857600080fd5b81838115156118f357fe5b04905092915050565b6000818301905082811015151561191257600080fd5b92915050565b600082821115151561192957600080fd5b8183039050929150505600a165627a7a72305820de8ba7c99c062f5237e5364cbb331056836c3d998137670049ef79aca151927f0029
Deployed Bytecode
0x60606040526004361061013e576000357c0100000000000000000000000000000000000000000000000000000000900463ffffffff168063046f7da21461014a57806323452b9c146101775780632f54bf6e146101a45780632f77dba4146101f55780633c54caa51461021e57806353105fbc1461024b5780635558e1c31461027457806363b20117146102af5780636a61e5fc146102d85780636ad5b3ea146103135780636e8a6d1214610368578063702efdf3146103b95780637ff9b596146103e65780638da5cb5b1461040f5780639d8f4c2714610464578063ac1a386a146104b9578063b7dfc8a51461050a578063bcc13d1d14610545578063c0b6f5611461056e578063c7a02061146105bf578063d153b60c146105e8578063e6400bbe1461063d578063e71a78111461066a578063ec8ac4d814610697575b610147336106d9565b50005b341561015557600080fd5b61015d610986565b604051808215151515815260200191505060405180910390f35b341561018257600080fd5b61018a610a10565b604051808215151515815260200191505060405180910390f35b34156101af57600080fd5b6101db600480803573ffffffffffffffffffffffffffffffffffffffff16906020019091905050610afc565b604051808215151515815260200191505060405180910390f35b341561020057600080fd5b610208610b55565b6040518082815260200191505060405180910390f35b341561022957600080fd5b610231610b5b565b604051808215151515815260200191505060405180910390f35b341561025657600080fd5b61025e610dba565b6040518082815260200191505060405180910390f35b341561027f57600080fd5b6102956004808035906020019091905050610dc0565b604051808215151515815260200191505060405180910390f35b34156102ba57600080fd5b6102c2610e2c565b6040518082815260200191505060405180910390f35b34156102e357600080fd5b6102f96004808035906020019091905050610e32565b604051808215151515815260200191505060405180910390f35b341561031e57600080fd5b610326610eae565b604051808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b341561037357600080fd5b61039f600480803573ffffffffffffffffffffffffffffffffffffffff16906020019091905050610ed4565b604051808215151515815260200191505060405180910390f35b34156103c457600080fd5b6103cc610fb3565b604051808215151515815260200191505060405180910390f35b34156103f157600080fd5b6103f9610fc6565b6040518082815260200191505060405180910390f35b341561041a57600080fd5b610422610fcc565b604051808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b341561046f57600080fd5b610477610ff1565b604051808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b34156104c457600080fd5b6104f0600480803573ffffffffffffffffffffffffffffffffffffffff16906020019091905050611017565b604051808215151515815260200191505060405180910390f35b341561051557600080fd5b61052b60048080359060200190919050506111a9565b604051808215151515815260200191505060405180910390f35b341561055057600080fd5b6105586112b3565b6040518082815260200191505060405180910390f35b341561057957600080fd5b6105a5600480803573ffffffffffffffffffffffffffffffffffffffff169060200190919050506112b9565b604051808215151515815260200191505060405180910390f35b34156105ca57600080fd5b6105d2611451565b6040518082815260200191505060405180910390f35b34156105f357600080fd5b6105fb611457565b604051808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b341561064857600080fd5b61065061147d565b604051808215151515815260200191505060405180910390f35b341561067557600080fd5b61067d611506565b604051808215151515815260200191505060405180910390f35b6106c3600480803573ffffffffffffffffffffffffffffffffffffffff169060200190919050506106d9565b6040518082815260200191505060405180910390f35b600080600160149054906101000a900460ff161515156106f857600080fd5b600073ffffffffffffffffffffffffffffffffffffffff16600760009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff161415151561075657600080fd5b600073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff161415151561079257600080fd5b3073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff16141515156107cd57600080fd5b600760009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff161415151561082a57600080fd5b600660009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff161415151561088757600080fd5b600760009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166370a08231306000604051602001526040518263ffffffff167c0100000000000000000000000000000000000000000000000000000000028152600401808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001915050602060405180830381600087803b151561094c57600080fd5b6102c65a03f1151561095d57600080fd5b50505060405180519050905060008111151561097557fe5b61097e83611651565b915050919050565b600061099133610afc565b151561099c57600080fd5b60001515600160149054906101000a900460ff16151514156109c15760009050610a0d565b6000600160146101000a81548160ff0219169083151502179055507fbcbdbf400d5c713d9679ffa947f717848591ab5a7d1608c49119db603c4942cb60405160405180910390a1600190505b90565b6000610a1b33610afc565b1515610a2657600080fd5b600073ffffffffffffffffffffffffffffffffffffffff16600160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff161415610a865760019050610af9565b6000600160006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055507f670699162ea7ba4de638b5a57c2148aed9ee8bd69740a5e6a7db727e3886c88b60405160405180910390a1600190505b90565b60008060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff16149050919050565b60035481565b600080610b6733610afc565b1515610b7257600080fd5b600760009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166370a08231306000604051602001526040518263ffffffff167c0100000000000000000000000000000000000000000000000000000000028152600401808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001915050602060405180830381600087803b1515610c3757600080fd5b6102c65a03f11515610c4857600080fd5b5050506040518051905090506000811415610c665760009150610db6565b600760009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663a9059cbb6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff16836000604051602001526040518363ffffffff167c0100000000000000000000000000000000000000000000000000000000028152600401808373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200182815260200192505050602060405180830381600087803b1515610d5457600080fd5b6102c65a03f11515610d6557600080fd5b505050604051805190501515610d7a57600080fd5b7fbce3cc672456937708767d1642a17cacb1962753bd5cff46c8dbd377906a6b4b816040518082815260200191505060405180910390a1600191505b5090565b60055481565b6000610dcb33610afc565b1515610dd657600080fd5b600082111515610de557600080fd5b816004819055507f838a23ac9e96487355a252492b0598f7ff9a62dc533be533083f9d87d8ed8281826040518082815260200191505060405180910390a160019050919050565b60085481565b6000610e3d33610afc565b1515610e4857600080fd5b60648210158015610e5c5750620186a08211155b1515610e6757600080fd5b816002819055507f6b361c807733cc94a3b7bda39c1c94dcc0511e91aa47b0f7f918068e93976890826040518082815260200191505060405180910390a160019050919050565b600660009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b6000610edf33610afc565b1515610eea57600080fd5b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff1614151515610f2657600080fd5b81600a60006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055508173ffffffffffffffffffffffffffffffffffffffff167ff06d2ea62202cdc3fe76575c895b2d6e5463556b289a3e1eb5fd135bb81c556160405160405180910390a260019050919050565b600160149054906101000a900460ff1681565b60025481565b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b600a60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b600061102233610afc565b151561102d57600080fd5b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff161415151561106957600080fd5b3073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff16141515156110a457600080fd5b600760009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff161415151561110157600080fd5b6000151561110e83610afc565b151514151561111c57600080fd5b81600660006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055508173ffffffffffffffffffffffffffffffffffffffff167f0428ca271a7bee83fddcf583de5ba0a5a69f42cbe32587b07bb38925ed96de8d60405160405180910390a260019050919050565b600080821115156111b957600080fd5b600a60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff16148061126157506000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff16145b151561126c57600080fd5b816003819055507f448ac9d0b6fa10af70a395b7ea0e2959f605b9c71e08569ba806bf8a4f417ea3826040518082815260200191505060405180910390a160019050919050565b60045481565b60006112c433610afc565b15156112cf57600080fd5b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff161415151561130b57600080fd5b3073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff161415151561134657600080fd5b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff16141515156113a257600080fd5b81600160006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550600160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff167f20f5afdf40bf7b43c89031a5d4369a30b159e512d164aa46124bcb706b4a1caf60405160405180910390a260019050919050565b60095481565b600160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b600061148833610afc565b151561149357600080fd5b60011515600160149054906101000a900460ff16151514156114b85760009050611503565b60018060146101000a81548160ff0219169083151502179055507fe14916b4c867f32e91547d295f9b845b805d5b8c813daa3adbc1597f80a0c5eb60405160405180910390a1600190505b90565b6000600160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614151561156457600080fd5b336000806101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055506000600160006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055506000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff167f624adc4c72536289dd9d5439ccdeccd8923cb9af95fb626b21935447c77b840760405160405180910390a26001905090565b60008060006116a660055461169861168960025461167b60646003546118a790919063ffffffff16565b6118d890919063ffffffff16565b346118a790919063ffffffff16565b6118d890919063ffffffff16565b915060045482101515156116b957600080fd5b349050600660009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166108fc829081150290604051600060405180830381858888f19350505050151561171e57600080fd5b611733816009546118fc90919063ffffffff16565b60098190555061174e826008546118fc90919063ffffffff16565b600881905550600760009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663a9059cbb85846000604051602001526040518363ffffffff167c0100000000000000000000000000000000000000000000000000000000028152600401808373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200182815260200192505050602060405180830381600087803b151561182157600080fd5b6102c65a03f1151561183257600080fd5b50505060405180519050151561184757600080fd5b8373ffffffffffffffffffffffffffffffffffffffff167f8fafebcaf9d154343dad25669bfa277f4fbacd7ac6b0c4fed522580e040a0f333484604051808381526020018281526020019250505060405180910390a28192505050919050565b6000818302905060008314806118c757508183828115156118c457fe5b04145b15156118d257600080fd5b92915050565b600080821115156118e857600080fd5b81838115156118f357fe5b04905092915050565b6000818301905082811015151561191257600080fd5b92915050565b600082821115151561192957600080fd5b8183039050929150505600a165627a7a72305820de8ba7c99c062f5237e5364cbb331056836c3d998137670049ef79aca151927f0029
Swarm Source
bzzr://de8ba7c99c062f5237e5364cbb331056836c3d998137670049ef79aca151927f
Loading...
Loading
Loading...
Loading
Multichain Portfolio | 31 Chains
Chain | Token | Portfolio % | Price | Amount | Value |
---|
Loading...
Loading
[ Download: CSV Export ]
[ 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.