More Info
Private Name Tags
ContractCreator
TokenTracker
Latest 25 from a total of 11,829 transactions
Transaction Hash |
Method
|
Block
|
From
|
To
|
|||||
---|---|---|---|---|---|---|---|---|---|
Transfer | 9753152 | 1705 days ago | IN | 0 ETH | 0.00002321 | ||||
Transfer | 9697824 | 1714 days ago | IN | 0 ETH | 0.00002321 | ||||
Transfer | 9697803 | 1714 days ago | IN | 0 ETH | 0.00002321 | ||||
Transfer | 9469321 | 1749 days ago | IN | 0 ETH | 0.00023238 | ||||
Transfer | 9434828 | 1754 days ago | IN | 0 ETH | 0.00011607 | ||||
Transfer | 9309554 | 1773 days ago | IN | 0 ETH | 0.00013928 | ||||
Transfer | 9309538 | 1773 days ago | IN | 0 ETH | 0.00013928 | ||||
Transfer | 9309519 | 1773 days ago | IN | 0 ETH | 0.00013928 | ||||
Transfer | 9309465 | 1773 days ago | IN | 0 ETH | 0.00006964 | ||||
Transfer | 9309445 | 1773 days ago | IN | 0 ETH | 0.00016249 | ||||
Transfer | 9309435 | 1773 days ago | IN | 0 ETH | 0.00016249 | ||||
Transfer | 9266569 | 1780 days ago | IN | 0 ETH | 0.00020892 | ||||
Transfer | 9099706 | 1810 days ago | IN | 0 ETH | 0.00015342 | ||||
Transfer | 9084930 | 1813 days ago | IN | 0 ETH | 0.00003341 | ||||
Transfer | 9084904 | 1813 days ago | IN | 0 ETH | 0.00002784 | ||||
Transfer | 9079521 | 1814 days ago | IN | 0 ETH | 0.00002784 | ||||
Transfer | 9079145 | 1814 days ago | IN | 0 ETH | 0.00002784 | ||||
Transfer | 8986164 | 1830 days ago | IN | 0 ETH | 0.00002893 | ||||
Transfer | 8984468 | 1830 days ago | IN | 0 ETH | 0.00003626 | ||||
Transfer | 8843983 | 1853 days ago | IN | 0 ETH | 0.000023 | ||||
Transfer | 8843932 | 1853 days ago | IN | 0 ETH | 0.00002302 | ||||
Transfer | 8691353 | 1878 days ago | IN | 0 ETH | 0.00002417 | ||||
Transfer | 8261361 | 1945 days ago | IN | 0 ETH | 0.00002417 | ||||
Transfer | 8198988 | 1954 days ago | IN | 0 ETH | 0.00002436 | ||||
Transfer | 8171434 | 1958 days ago | IN | 0 ETH | 0.00002417 |
View more zero value Internal Transactions in Advanced View mode
Advanced mode:
Loading...
Loading
Contract Name:
Token
Compiler Version
v0.4.19+commit.c4cbbb05
Optimization Enabled:
Yes with 200 runs
Other Settings:
default evmVersion
Contract Source Code (Solidity)
/** *Submitted for verification at Etherscan.io on 2018-04-25 */ pragma solidity ^0.4.18; library SafeMath { function mul(uint256 a, uint256 b) internal pure returns (uint256) { uint256 c = a * b; assert(a == 0 || c / a == b); return c; } function div(uint256 a, uint256 b) internal pure returns (uint256) { // assert(b > 0); // Solidity automatically throws when dividing by 0 uint256 c = a / b; // assert(a == b * c + a % b); // There is no case in which this doesn't hold return c; } function sub(uint256 a, uint256 b) internal pure returns (uint256) { assert(b <= a); return a - b; } function add(uint256 a, uint256 b) internal pure returns (uint256) { uint256 c = a + b; assert(c >= a); return c; } } contract ApproveAndCallReceiver { function receiveApproval( address _from, uint256 _amount, address _token, bytes _data ) public; } //normal contract. already compiled as bin contract Controlled { /// @notice The address of the controller is the only address that can call /// a function with this modifier modifier onlyController { require(msg.sender == controller); _; } //block for check//bool private initialed = false; address public controller; function Controlled() public { //block for check//require(!initialed); controller = msg.sender; //block for check//initialed = true; } /// @notice Changes the controller of the contract /// @param _newController The new controller of the contract function changeController(address _newController) onlyController public { controller = _newController; } } //abstract contract. used for interface contract TokenController { /// @notice Called when `_owner` sends ether to the MiniMe Token contract /// @param _owner The address that sent the ether to create tokens /// @return True if the ether is accepted, false if it throws function proxyPayment(address _owner) payable public returns(bool); /// @notice Notifies the controller about a token transfer allowing the /// controller to react if desired /// @param _from The origin of the transfer /// @param _to The destination of the transfer /// @param _amount The amount of the transfer /// @return False if the controller does not authorize the transfer function onTransfer(address _from, address _to, uint _amount) public returns(bool); /// @notice Notifies the controller about an approval allowing the /// controller to react if desired /// @param _owner The address that calls `approve()` /// @param _spender The spender in the `approve()` call /// @param _amount The amount in the `approve()` call /// @return False if the controller does not authorize the approval function onApprove(address _owner, address _spender, uint _amount) public returns(bool); } contract ERC20Token { /* This is a slight change to the ERC20 base standard. function totalSupply() constant returns (uint256 supply); is replaced with: uint256 public totalSupply; This automatically creates a getter function for the totalSupply. This is moved to the base contract since public getter functions are not currently recognised as an implementation of the matching abstract function by the compiler. */ /// total amount of tokens uint256 public totalSupply; //function totalSupply() public constant returns (uint256 balance); /// @param _owner The address from which the balance will be retrieved /// @return The balance mapping (address => uint256) public balanceOf; //function balanceOf(address _owner) public constant returns (uint256 balance); /// @notice send `_value` token to `_to` from `msg.sender` /// @param _to The address of the recipient /// @param _value The amount of token to be transferred /// @return Whether the transfer was successful or not function transfer(address _to, uint256 _value) public returns (bool success); /// @notice send `_value` token to `_to` from `_from` on the condition it is approved by `_from` /// @param _from The address of the sender /// @param _to The address of the recipient /// @param _value The amount of token to be transferred /// @return Whether the transfer was successful or not function transferFrom(address _from, address _to, uint256 _value) public returns (bool success); /// @notice `msg.sender` approves `_spender` to spend `_value` tokens /// @param _spender The address of the account able to transfer the tokens /// @param _value The amount of tokens to be approved for transfer /// @return Whether the approval was successful or not function approve(address _spender, uint256 _value) public returns (bool success); /// @param _owner The address of the account owning tokens /// @param _spender The address of the account able to transfer the tokens /// @return Amount of remaining tokens allowed to spent mapping (address => mapping (address => uint256)) public allowance; //function allowance(address _owner, address _spender) public constant returns (uint256 remaining); event Transfer(address indexed _from, address indexed _to, uint256 _value); event Approval(address indexed _owner, address indexed _spender, uint256 _value); } contract TokenI is ERC20Token, Controlled { string public name; //The Token's name: e.g. DigixDAO Tokens uint8 public decimals; //Number of decimals of the smallest unit string public symbol; //An identifier: e.g. REP // ERC20 Methods /// @notice `msg.sender` approves `_spender` to send `_amount` tokens on /// its behalf, and then a function is triggered in the contract that is /// being approved, `_spender`. This allows users to use their tokens to /// interact with contracts in one function call instead of two /// @param _spender The address of the contract able to transfer the tokens /// @param _amount The amount of tokens to be approved for transfer /// @return True if the function call was successful function approveAndCall( address _spender, uint256 _amount, bytes _extraData ) public returns (bool success); // Generate and destroy tokens /// @notice Generates `_amount` tokens that are assigned to `_owner` /// @param _owner The address that will be assigned the new tokens /// @param _amount The quantity of tokens generated /// @return True if the tokens are generated correctly function generateTokens(address _owner, uint _amount) public returns (bool); /// @notice Burns `_amount` tokens from `_owner` /// @param _owner The address that will lose the tokens /// @param _amount The quantity of tokens to burn /// @return True if the tokens are burned correctly function destroyTokens(address _owner, uint _amount) public returns (bool); /// @notice Enables token holders to transfer their tokens freely if true /// @param _transfersEnabled True if transfers are allowed in the clone function enableTransfers(bool _transfersEnabled) public; // Safety Methods /// @notice This method can be used by the controller to extract mistakenly /// sent tokens to this contract. /// @param _token The address of the token contract that you want to recover /// set to 0 in case you want to extract ether. function claimTokens(address _token) public; // Events event ClaimedTokens(address indexed _token, address indexed _controller, uint _amount); } contract Token is TokenI { using SafeMath for uint256; string public techProvider = "WeYii Tech"; string public officialSite = "http://www.beautybloc.io"; address public owner; struct FreezeInfo { address user; uint256 amount; } //Key1: step(募资阶段); Key2: user sequence(用户序列) mapping (uint8 => mapping (uint32 => FreezeInfo)) public freezeOf; //所有锁仓,key 使用序号向上增加,方便程序查询。 mapping (uint8 => uint32) public lastFreezeSeq; //最后的 freezeOf 键值。key: step; value: sequence mapping (uint8 => uint) internal unlockTime; bool public transfersEnabled; /* This generates a public event on the blockchain that will notify clients */ //event Transfer(address indexed from, address indexed to, uint256 value); /* This notifies clients about the amount burnt */ event Burn(address indexed from, uint256 value); /* This notifies clients about the amount frozen */ event Freeze(address indexed from, uint256 value); /* This notifies clients about the amount unfrozen */ event Unfreeze(address indexed from, uint256 value); /* Initializes contract with initial supply tokens to the creator of the contract */ function Token( uint256 initialSupply, string tokenName, uint8 decimalUnits, string tokenSymbol, bool transfersEnable ) public { balanceOf[msg.sender] = initialSupply; totalSupply = initialSupply; name = tokenName; symbol = tokenSymbol; decimals = decimalUnits; transfersEnabled = transfersEnable; owner = msg.sender; } modifier onlyOwner() { require(msg.sender == owner); _; } modifier ownerOrController() { require(msg.sender == owner || msg.sender == controller); _; } modifier ownerOrUser(address user){ require(msg.sender == owner || msg.sender == user); _; } modifier transable(){ require(transfersEnabled); _; } modifier realUser(address user){ if(user == 0x0){ revert(); } _; } modifier moreThanZero(uint256 _value){ if (_value <= 0){ revert(); } _; } modifier moreOrEqualZero(uint256 _value){ if(_value < 0){ revert(); } _; } /// @dev Internal function to determine if an address is a contract /// @param _addr The address being queried /// @return True if `_addr` is a contract function isContract(address _addr) constant internal returns(bool) { uint size; if (_addr == 0) { return false; } assembly { size := extcodesize(_addr) } return size>0; } /* Send coins */ function transfer(address _to, uint256 _value) realUser(_to) moreThanZero(_value) transable public returns (bool) { //infoAddr('msg.sender', msg.sender); //infoBool('typeOf msg.sender', isContract(msg.sender)); require(balanceOf[msg.sender] >= _value); // Check if the sender has enough //require(balanceOf[_to] + _value > balanceOf[_to]); // Check for overflows balanceOf[msg.sender] = balanceOf[msg.sender].sub(_value); balanceOf[_to] = balanceOf[_to].add(_value); Transfer(msg.sender, _to, _value); // Notify anyone listening that this transfer took place return true; } /* Allow another contract to spend some tokens in your behalf */ function approve(address _spender, uint256 _value) moreThanZero(_value) transable public returns (bool success) { allowance[msg.sender][_spender] = _value; return true; } /** * @notice `msg.sender` approves `_spender` to send `_amount` tokens on * its behalf, and then a function is triggered in the contract that is * being approved, `_spender`. This allows users to use their tokens to * interact with contracts in one function call instead of two * @param _spender The address of the contract able to transfer the tokens * @param _amount The amount of tokens to be approved for transfer * @return True if the function call was successful */ function approveAndCall(address _spender, uint256 _amount, bytes _extraData) transable public returns (bool success) { require(approve(_spender, _amount)); ApproveAndCallReceiver(_spender).receiveApproval( msg.sender, _amount, this, _extraData ); return true; } /* A contract attempts to get the coins */ function transferFrom(address _from, address _to, uint256 _value) realUser(_from) realUser(_to) moreThanZero(_value) transable public returns (bool success) { require(balanceOf[_from] >= _value); // Check if the sender has enough require(balanceOf[_to] + _value > balanceOf[_to]); // Check for overflows require(_value <= allowance[_from][msg.sender]); // Check allowance balanceOf[_from] = balanceOf[_from].sub(_value); // Subtract from the sender balanceOf[_to] = balanceOf[_to].add(_value); // Add the same to the recipient allowance[_from][msg.sender] = allowance[_from][msg.sender].add(_value); Transfer(_from, _to, _value); return true; } function transferMulti(address[] _to, uint256[] _value) transable public returns (uint256 amount){ require(_to.length == _value.length && _to.length <= 1024); uint256 balanceOfSender = balanceOf[msg.sender]; uint256 len = _to.length; for(uint256 j; j<len; j++){ require(_value[j] <= balanceOfSender); //limit transfer value amount = amount.add(_value[j]); } require(balanceOfSender - amount < balanceOfSender); //check enough and not overflow balanceOf[msg.sender] = balanceOf[msg.sender].sub(amount); for(uint256 i; i<len; i++){ address _toI = _to[i]; uint256 _valueI = _value[i]; balanceOf[_toI] = balanceOf[_toI].add(_valueI); Transfer(msg.sender, _toI, _valueI); } } //只能自己或者 owner 才能冻结账户 function freeze(address _user, uint256 _value, uint8 _step) moreThanZero(_value) onlyController public returns (bool success) { //info256("balanceOf[_user]", balanceOf[_user]); require(balanceOf[_user] >= _value); balanceOf[_user] = balanceOf[_user] - _value; freezeOf[_step][lastFreezeSeq[_step]] = FreezeInfo({user:_user, amount:_value}); lastFreezeSeq[_step]++; Freeze(_user, _value); return true; } event infoBool(string name, bool value); event infoAddr(string name, address addr); event info(string name, uint32 value); event info256(string name, uint256 value); //为用户解锁账户资金 function unFreeze(uint8 _step) onlyOwner public returns (bool unlockOver) { //_end = length of freezeOf[_step] uint32 _end = lastFreezeSeq[_step]; require(_end > 0); //info("_end", _end); unlockOver = (_end <= 99); uint32 _start = (_end > 99) ? _end-100 : 0; //info("_start", _start); for(; _end>_start; _end--){ FreezeInfo storage fInfo = freezeOf[_step][_end-1]; uint256 _amount = fInfo.amount; balanceOf[fInfo.user] += _amount; delete freezeOf[_step][_end-1]; lastFreezeSeq[_step]--; Unfreeze(fInfo.user, _amount); } } //accept ether function() payable public { //屏蔽控制方的合约类型检查,以兼容发行方无控制合约的情况。 require(isContract(controller)); bool proxyPayment = TokenController(controller).proxyPayment.value(msg.value)(msg.sender); require(proxyPayment); } //////////////// // Generate and destroy tokens //////////////// /// @notice Generates `_amount` tokens that are assigned to `_owner` /// @param _user The address that will be assigned the new tokens /// @param _amount The quantity of tokens generated /// @return True if the tokens are generated correctly function generateTokens(address _user, uint _amount) onlyController public returns (bool) { require(balanceOf[owner] >= _amount); balanceOf[_user] += _amount; balanceOf[owner] -= _amount; Transfer(0, _user, _amount); return true; } /// @notice Burns `_amount` tokens from `_owner` /// @param _user The address that will lose the tokens /// @param _amount The quantity of tokens to burn /// @return True if the tokens are burned correctly function destroyTokens(address _user, uint _amount) onlyOwner public returns (bool) { require(balanceOf[_user] >= _amount); balanceOf[owner] += _amount; balanceOf[_user] -= _amount; Transfer(_user, 0, _amount); Burn(_user, _amount); return true; } //////////////// // Enable tokens transfers //////////////// /// @notice Enables token holders to transfer their tokens freely if true /// @param _transfersEnabled True if transfers are allowed in the clone function enableTransfers(bool _transfersEnabled) onlyOwner public { transfersEnabled = _transfersEnabled; } ////////// // Safety Methods ////////// /// @notice This method can be used by the controller to extract mistakenly /// sent tokens to this contract. /// set to 0 in case you want to extract ether. function claimTokens(address _token) onlyController public { if (_token == 0x0) { controller.transfer(this.balance); return; } Token token = Token(_token); uint balance = token.balanceOf(this); token.transfer(controller, balance); ClaimedTokens(_token, controller, balance); } function changeOwner(address newOwner) onlyOwner public returns (bool) { balanceOf[newOwner] += balanceOf[owner]; balanceOf[owner] = 0; owner = newOwner; return true; } }
Contract Security Audit
- No Contract Security Audit Submitted- Submit Audit Here
[{"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":true,"inputs":[],"name":"techProvider","outputs":[{"name":"","type":"string"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"totalSupply","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","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":true,"inputs":[{"name":"","type":"uint8"},{"name":"","type":"uint32"}],"name":"freezeOf","outputs":[{"name":"user","type":"address"},{"name":"amount","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"decimals","outputs":[{"name":"","type":"uint8"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"_to","type":"address[]"},{"name":"_value","type":"uint256[]"}],"name":"transferMulti","outputs":[{"name":"amount","type":"uint256"}],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"name":"_newController","type":"address"}],"name":"changeController","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"name":"_step","type":"uint8"}],"name":"unFreeze","outputs":[{"name":"unlockOver","type":"bool"}],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[{"name":"","type":"address"}],"name":"balanceOf","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"_user","type":"address"},{"name":"_amount","type":"uint256"}],"name":"generateTokens","outputs":[{"name":"","type":"bool"}],"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":"officialSite","outputs":[{"name":"","type":"string"}],"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":"newOwner","type":"address"}],"name":"changeOwner","outputs":[{"name":"","type":"bool"}],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"name":"_to","type":"address"},{"name":"_value","type":"uint256"}],"name":"transfer","outputs":[{"name":"","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":"_amount","type":"uint256"},{"name":"_extraData","type":"bytes"}],"name":"approveAndCall","outputs":[{"name":"success","type":"bool"}],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"name":"_user","type":"address"},{"name":"_amount","type":"uint256"}],"name":"destroyTokens","outputs":[{"name":"","type":"bool"}],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[{"name":"","type":"address"},{"name":"","type":"address"}],"name":"allowance","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"_token","type":"address"}],"name":"claimTokens","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"name":"_transfersEnabled","type":"bool"}],"name":"enableTransfers","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"name":"_user","type":"address"},{"name":"_value","type":"uint256"},{"name":"_step","type":"uint8"}],"name":"freeze","outputs":[{"name":"success","type":"bool"}],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[],"name":"controller","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[{"name":"","type":"uint8"}],"name":"lastFreezeSeq","outputs":[{"name":"","type":"uint32"}],"payable":false,"stateMutability":"view","type":"function"},{"inputs":[{"name":"initialSupply","type":"uint256"},{"name":"tokenName","type":"string"},{"name":"decimalUnits","type":"uint8"},{"name":"tokenSymbol","type":"string"},{"name":"transfersEnable","type":"bool"}],"payable":false,"stateMutability":"nonpayable","type":"constructor"},{"payable":true,"stateMutability":"payable","type":"fallback"},{"anonymous":false,"inputs":[{"indexed":true,"name":"from","type":"address"},{"indexed":false,"name":"value","type":"uint256"}],"name":"Burn","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"name":"from","type":"address"},{"indexed":false,"name":"value","type":"uint256"}],"name":"Freeze","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"name":"from","type":"address"},{"indexed":false,"name":"value","type":"uint256"}],"name":"Unfreeze","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"name":"name","type":"string"},{"indexed":false,"name":"value","type":"bool"}],"name":"infoBool","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"name":"name","type":"string"},{"indexed":false,"name":"addr","type":"address"}],"name":"infoAddr","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"name":"name","type":"string"},{"indexed":false,"name":"value","type":"uint32"}],"name":"info","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"name":"name","type":"string"},{"indexed":false,"name":"value","type":"uint256"}],"name":"info256","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"name":"_token","type":"address"},{"indexed":true,"name":"_controller","type":"address"},{"indexed":false,"name":"_amount","type":"uint256"}],"name":"ClaimedTokens","type":"event"},{"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":"_owner","type":"address"},{"indexed":true,"name":"_spender","type":"address"},{"indexed":false,"name":"_value","type":"uint256"}],"name":"Approval","type":"event"}]
Contract Creation Code
606060405260408051908101604052600a81527f5765596969205465636800000000000000000000000000000000000000000000602082015260079080516200004d92916020019062000185565b5060408051908101604052601881527f687474703a2f2f7777772e626561757479626c6f632e696f0000000000000000602082015260089080516200009792916020019062000185565b503415620000a457600080fd5b604051620018f1380380620018f183398101604052808051919060200180518201919060200180519190602001805182019190602001805160038054600160a060020a03191633600160a060020a031690811790915560009081526001602052604081208890558790559150600490508480516200012792916020019062000185565b5060068280516200013d92916020019062000185565b506005805460ff90941660ff19948516179055600d80549115159190931617909155505060098054600160a060020a033316600160a060020a0319909116179055506200022a565b828054600181600116156101000203166002900490600052602060002090601f016020900481019282601f10620001c857805160ff1916838001178555620001f8565b82800160010185558215620001f8579182015b82811115620001f8578251825591602001919060010190620001db565b50620002069291506200020a565b5090565b6200022791905b8082111562000206576000815560010162000211565b90565b6116b7806200023a6000396000f30060606040526004361061013a5763ffffffff60e060020a60003504166306fdde0381146101e2578063095ea7b31461026c5780630a8d5fb8146102a257806318160ddd146102b557806323b872dd146102da578063262bf13714610302578063313ce5671461034657806335bce6e41461036f5780633cebb823146103fe578063492d06cf1461041f57806370a0823114610438578063827f32c0146104575780638da5cb5b1461047957806395d5f6fd146104a857806395d89b41146104bb578063a6f9dae1146104ce578063a9059cbb146104ed578063bef97c871461050f578063cae9ca5114610522578063d3ce77fe14610587578063dd62ed3e146105a9578063df8de3e7146105ce578063f41e60c5146105ed578063f524613f14610605578063f77c47911461062d578063f99ec32c14610640575b60035460009061015290600160a060020a0316610672565b151561015d57600080fd5b600354600160a060020a031663f48c3054343360006040516020015260405160e060020a63ffffffff8516028152600160a060020a0390911660048201526024016020604051808303818588803b15156101b657600080fd5b6125ee5a03f115156101c757600080fd5b5050505060405180519150508015156101df57600080fd5b50005b34156101ed57600080fd5b6101f561069f565b60405160208082528190810183818151815260200191508051906020019080838360005b83811015610231578082015183820152602001610219565b50505050905090810190601f16801561025e5780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b341561027757600080fd5b61028e600160a060020a036004351660243561073d565b604051901515815260200160405180910390f35b34156102ad57600080fd5b6101f561078e565b34156102c057600080fd5b6102c86107f9565b60405190815260200160405180910390f35b34156102e557600080fd5b61028e600160a060020a03600435811690602435166044356107ff565b341561030d57600080fd5b61032460ff6004351663ffffffff602435166109cf565b604051600160a060020a03909216825260208201526040908101905180910390f35b341561035157600080fd5b6103596109ff565b60405160ff909116815260200160405180910390f35b341561037a57600080fd5b6102c8600460248135818101908301358060208181020160405190810160405280939291908181526020018383602002808284378201915050505050509190803590602001908201803590602001908080602002602001604051908101604052809392919081815260200183836020028082843750949650610a0895505050505050565b341561040957600080fd5b61041d600160a060020a0360043516610bdb565b005b341561042a57600080fd5b61028e60ff60043516610c25565b341561044357600080fd5b6102c8600160a060020a0360043516610d87565b341561046257600080fd5b61028e600160a060020a0360043516602435610d99565b341561048457600080fd5b61048c610e3d565b604051600160a060020a03909116815260200160405180910390f35b34156104b357600080fd5b6101f5610e4c565b34156104c657600080fd5b6101f5610eb7565b34156104d957600080fd5b61028e600160a060020a0360043516610f22565b34156104f857600080fd5b61028e600160a060020a0360043516602435610f9f565b341561051a57600080fd5b61028e6110ab565b341561052d57600080fd5b61028e60048035600160a060020a03169060248035919060649060443590810190830135806020601f820181900481020160405190810160405281815292919060208401838380828437509496506110b495505050505050565b341561059257600080fd5b61028e600160a060020a03600435166024356111e1565b34156105b457600080fd5b6102c8600160a060020a03600435811690602435166112c1565b34156105d957600080fd5b61041d600160a060020a03600435166112de565b34156105f857600080fd5b61041d600435151561148b565b341561061057600080fd5b61028e600160a060020a036004351660243560ff604435166114b9565b341561063857600080fd5b61048c61161c565b341561064b57600080fd5b61065960ff6004351661162b565b60405163ffffffff909116815260200160405180910390f35b600080600160a060020a038316151561068e5760009150610699565b823b90506000811191505b50919050565b60048054600181600116156101000203166002900480601f0160208091040260200160405190810160405280929190818152602001828054600181600116156101000203166002900480156107355780601f1061070a57610100808354040283529160200191610735565b820191906000526020600020905b81548152906001019060200180831161071857829003601f168201915b505050505081565b60008181811161074c57600080fd5b600d5460ff16151561075d57600080fd5b5050600160a060020a0333811660009081526002602090815260408083209590931682529390935290912055600190565b60078054600181600116156101000203166002900480601f0160208091040260200160405190810160405280929190818152602001828054600181600116156101000203166002900480156107355780601f1061070a57610100808354040283529160200191610735565b60005481565b600083600160a060020a038116151561081757600080fd5b83600160a060020a038116151561082d57600080fd5b836000811161083b57600080fd5b600d5460ff16151561084c57600080fd5b600160a060020a0387166000908152600160205260409020548590101561087257600080fd5b600160a060020a0386166000908152600160205260409020548581011161089857600080fd5b600160a060020a03808816600090815260026020908152604080832033909416835292905220548511156108cb57600080fd5b600160a060020a0387166000908152600160205260409020546108f4908663ffffffff61164316565b600160a060020a038089166000908152600160205260408082209390935590881681522054610929908663ffffffff61165516565b600160a060020a038088166000908152600160209081526040808320949094558a8316825260028152838220339093168252919091522054610971908663ffffffff61165516565b600160a060020a038089166000818152600260209081526040808320338616845290915290819020939093559088169160008051602061166c8339815191529088905190815260200160405180910390a35060019695505050505050565b600a60209081526000928352604080842090915290825290208054600190910154600160a060020a039091169082565b60055460ff1681565b6000806000806000806000600d60009054906101000a900460ff161515610a2e57600080fd5b87518951148015610a425750610400895111155b1515610a4d57600080fd5b600160a060020a0333166000908152600160205260409020549550885194505b84841015610aca5785888581518110610a8257fe5b906020019060200201511115610a9757600080fd5b610abd888581518110610aa657fe5b90602001906020020151889063ffffffff61165516565b9650600190930192610a6d565b868603869010610ad957600080fd5b600160a060020a033316600090815260016020526040902054610b02908863ffffffff61164316565b600160a060020a0333166000908152600160205260409020555b84831015610bcf57888381518110610b3057fe5b906020019060200201519150878381518110610b4857fe5b90602001906020020151600160a060020a038316600090815260016020526040902054909150610b7e908263ffffffff61165516565b600160a060020a03808416600081815260016020526040908190209390935591339091169060008051602061166c8339815191529084905190815260200160405180910390a3600190920191610b1c565b50505050505092915050565b60035433600160a060020a03908116911614610bf657600080fd5b6003805473ffffffffffffffffffffffffffffffffffffffff1916600160a060020a0392909216919091179055565b600954600090819081908190819033600160a060020a03908116911614610c4b57600080fd5b60ff86166000908152600b602052604081205463ffffffff1694508411610c7157600080fd5b606363ffffffff85161180159550610c8a576000610c8f565b606484035b92505b8263ffffffff168463ffffffff161115610d7e57505060ff84166000818152600a6020908152604080832060001987810163ffffffff9081168652918452828520600180820180548354600160a060020a039081168a52928852868920805482019055835473ffffffffffffffffffffffffffffffffffffffff1916845590889055978752600b90955294839020805463ffffffff1981169084169092019092161790558254929392909116907f2cfce4af01bcb9d6cf6c84ee1b7c491100b8695368264146a94d71e10a63083f9083905190815260200160405180910390a260001990930192610c92565b50505050919050565b60016020526000908152604090205481565b60035460009033600160a060020a03908116911614610db757600080fd5b600954600160a060020a031660009081526001602052604090205482901015610ddf57600080fd5b600160a060020a03808416600081815260016020526040808220805487019055600954909316815282812080548690039055909160008051602061166c8339815191529085905190815260200160405180910390a350600192915050565b600954600160a060020a031681565b60088054600181600116156101000203166002900480601f0160208091040260200160405190810160405280929190818152602001828054600181600116156101000203166002900480156107355780601f1061070a57610100808354040283529160200191610735565b60068054600181600116156101000203166002900480601f0160208091040260200160405190810160405280929190818152602001828054600181600116156101000203166002900480156107355780601f1061070a57610100808354040283529160200191610735565b60095460009033600160a060020a03908116911614610f4057600080fd5b5060098054600160a060020a0390811660009081526001602081905260408083205495841680845281842080549097019096558454909316825291812055815473ffffffffffffffffffffffffffffffffffffffff1916909217905590565b600082600160a060020a0381161515610fb757600080fd5b8260008111610fc557600080fd5b600d5460ff161515610fd657600080fd5b600160a060020a03331660009081526001602052604090205484901015610ffc57600080fd5b600160a060020a033316600090815260016020526040902054611025908563ffffffff61164316565b600160a060020a03338116600090815260016020526040808220939093559087168152205461105a908563ffffffff61165516565b600160a060020a03808716600081815260016020526040908190209390935591339091169060008051602061166c8339815191529087905190815260200160405180910390a3506001949350505050565b600d5460ff1681565b600d5460009060ff1615156110c857600080fd5b6110d2848461073d565b15156110dd57600080fd5b83600160a060020a0316638f4ffcb1338530866040518563ffffffff1660e060020a0281526004018085600160a060020a0316600160a060020a0316815260200184815260200183600160a060020a0316600160a060020a0316815260200180602001828103825283818151815260200191508051906020019080838360005b8381101561117557808201518382015260200161115d565b50505050905090810190601f1680156111a25780820380516001836020036101000a031916815260200191505b5095505050505050600060405180830381600087803b15156111c357600080fd5b6102c65a03f115156111d457600080fd5b5060019695505050505050565b60095460009033600160a060020a039081169116146111ff57600080fd5b600160a060020a0383166000908152600160205260409020548290101561122557600080fd5b600954600160a060020a0390811660009081526001602052604080822080548601905591851680825282822080548690039055909160008051602061166c8339815191529085905190815260200160405180910390a382600160a060020a03167fcc16f5dbb4873280815c1ee09dbd06736cffcc184412cf7a71a0fdb75d397ca58360405190815260200160405180910390a250600192915050565b600260209081526000928352604080842090915290825290205481565b600354600090819033600160a060020a039081169116146112fe57600080fd5b600160a060020a038316151561134c57600354600160a060020a039081169030163180156108fc0290604051600060405180830381858888f19350505050151561134757600080fd5b611486565b82915081600160a060020a03166370a082313060006040516020015260405160e060020a63ffffffff8416028152600160a060020a039091166004820152602401602060405180830381600087803b15156113a657600080fd5b6102c65a03f115156113b757600080fd5b5050506040518051600354909250600160a060020a03808516925063a9059cbb91168360006040516020015260405160e060020a63ffffffff8516028152600160a060020a0390921660048301526024820152604401602060405180830381600087803b151561142657600080fd5b6102c65a03f1151561143757600080fd5b50505060405180515050600354600160a060020a039081169084167ff931edb47c50b4b4104c187b5814a9aef5f709e17e2ecf9617e860cacade929c8360405190815260200160405180910390a35b505050565b60095433600160a060020a039081169116146114a657600080fd5b600d805460ff1916911515919091179055565b6000828181116114c857600080fd5b60035433600160a060020a039081169116146114e357600080fd5b600160a060020a0385166000908152600160205260409020548490101561150957600080fd5b600160a060020a038516600090815260016020526040908190208054869003905580519081016040908152600160a060020a0387168252602080830187905260ff86166000908152600a8252828120600b83528382205463ffffffff168252909152208151815473ffffffffffffffffffffffffffffffffffffffff1916600160a060020a0391909116178155602082015160019182015560ff85166000908152600b602052604090819020805463ffffffff19811663ffffffff9182169094011692909217909155600160a060020a03871691507ff97a274face0b5517365ad396b1fdba6f68bd3135ef603e44272adba3af5a1e09086905190815260200160405180910390a2506001949350505050565b600354600160a060020a031681565b600b6020526000908152604090205463ffffffff1681565b60008282111561164f57fe5b50900390565b60008282018381101561166457fe5b93925050505600ddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3efa165627a7a72305820a3f1d1241fe347ce58b028d9853546be51435da55745b43c13a7254078db39e000290000000000000000000000000000000000000000204fce5e3e2502611000000000000000000000000000000000000000000000000000000000000000000000a0000000000000000000000000000000000000000000000000000000000000001200000000000000000000000000000000000000000000000000000000000000e00000000000000000000000000000000000000000000000000000000000000001000000000000000000000000000000000000000000000000000000000000000b42656175747920436f696e00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000064245415554590000000000000000000000000000000000000000000000000000
Deployed Bytecode
0x60606040526004361061013a5763ffffffff60e060020a60003504166306fdde0381146101e2578063095ea7b31461026c5780630a8d5fb8146102a257806318160ddd146102b557806323b872dd146102da578063262bf13714610302578063313ce5671461034657806335bce6e41461036f5780633cebb823146103fe578063492d06cf1461041f57806370a0823114610438578063827f32c0146104575780638da5cb5b1461047957806395d5f6fd146104a857806395d89b41146104bb578063a6f9dae1146104ce578063a9059cbb146104ed578063bef97c871461050f578063cae9ca5114610522578063d3ce77fe14610587578063dd62ed3e146105a9578063df8de3e7146105ce578063f41e60c5146105ed578063f524613f14610605578063f77c47911461062d578063f99ec32c14610640575b60035460009061015290600160a060020a0316610672565b151561015d57600080fd5b600354600160a060020a031663f48c3054343360006040516020015260405160e060020a63ffffffff8516028152600160a060020a0390911660048201526024016020604051808303818588803b15156101b657600080fd5b6125ee5a03f115156101c757600080fd5b5050505060405180519150508015156101df57600080fd5b50005b34156101ed57600080fd5b6101f561069f565b60405160208082528190810183818151815260200191508051906020019080838360005b83811015610231578082015183820152602001610219565b50505050905090810190601f16801561025e5780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b341561027757600080fd5b61028e600160a060020a036004351660243561073d565b604051901515815260200160405180910390f35b34156102ad57600080fd5b6101f561078e565b34156102c057600080fd5b6102c86107f9565b60405190815260200160405180910390f35b34156102e557600080fd5b61028e600160a060020a03600435811690602435166044356107ff565b341561030d57600080fd5b61032460ff6004351663ffffffff602435166109cf565b604051600160a060020a03909216825260208201526040908101905180910390f35b341561035157600080fd5b6103596109ff565b60405160ff909116815260200160405180910390f35b341561037a57600080fd5b6102c8600460248135818101908301358060208181020160405190810160405280939291908181526020018383602002808284378201915050505050509190803590602001908201803590602001908080602002602001604051908101604052809392919081815260200183836020028082843750949650610a0895505050505050565b341561040957600080fd5b61041d600160a060020a0360043516610bdb565b005b341561042a57600080fd5b61028e60ff60043516610c25565b341561044357600080fd5b6102c8600160a060020a0360043516610d87565b341561046257600080fd5b61028e600160a060020a0360043516602435610d99565b341561048457600080fd5b61048c610e3d565b604051600160a060020a03909116815260200160405180910390f35b34156104b357600080fd5b6101f5610e4c565b34156104c657600080fd5b6101f5610eb7565b34156104d957600080fd5b61028e600160a060020a0360043516610f22565b34156104f857600080fd5b61028e600160a060020a0360043516602435610f9f565b341561051a57600080fd5b61028e6110ab565b341561052d57600080fd5b61028e60048035600160a060020a03169060248035919060649060443590810190830135806020601f820181900481020160405190810160405281815292919060208401838380828437509496506110b495505050505050565b341561059257600080fd5b61028e600160a060020a03600435166024356111e1565b34156105b457600080fd5b6102c8600160a060020a03600435811690602435166112c1565b34156105d957600080fd5b61041d600160a060020a03600435166112de565b34156105f857600080fd5b61041d600435151561148b565b341561061057600080fd5b61028e600160a060020a036004351660243560ff604435166114b9565b341561063857600080fd5b61048c61161c565b341561064b57600080fd5b61065960ff6004351661162b565b60405163ffffffff909116815260200160405180910390f35b600080600160a060020a038316151561068e5760009150610699565b823b90506000811191505b50919050565b60048054600181600116156101000203166002900480601f0160208091040260200160405190810160405280929190818152602001828054600181600116156101000203166002900480156107355780601f1061070a57610100808354040283529160200191610735565b820191906000526020600020905b81548152906001019060200180831161071857829003601f168201915b505050505081565b60008181811161074c57600080fd5b600d5460ff16151561075d57600080fd5b5050600160a060020a0333811660009081526002602090815260408083209590931682529390935290912055600190565b60078054600181600116156101000203166002900480601f0160208091040260200160405190810160405280929190818152602001828054600181600116156101000203166002900480156107355780601f1061070a57610100808354040283529160200191610735565b60005481565b600083600160a060020a038116151561081757600080fd5b83600160a060020a038116151561082d57600080fd5b836000811161083b57600080fd5b600d5460ff16151561084c57600080fd5b600160a060020a0387166000908152600160205260409020548590101561087257600080fd5b600160a060020a0386166000908152600160205260409020548581011161089857600080fd5b600160a060020a03808816600090815260026020908152604080832033909416835292905220548511156108cb57600080fd5b600160a060020a0387166000908152600160205260409020546108f4908663ffffffff61164316565b600160a060020a038089166000908152600160205260408082209390935590881681522054610929908663ffffffff61165516565b600160a060020a038088166000908152600160209081526040808320949094558a8316825260028152838220339093168252919091522054610971908663ffffffff61165516565b600160a060020a038089166000818152600260209081526040808320338616845290915290819020939093559088169160008051602061166c8339815191529088905190815260200160405180910390a35060019695505050505050565b600a60209081526000928352604080842090915290825290208054600190910154600160a060020a039091169082565b60055460ff1681565b6000806000806000806000600d60009054906101000a900460ff161515610a2e57600080fd5b87518951148015610a425750610400895111155b1515610a4d57600080fd5b600160a060020a0333166000908152600160205260409020549550885194505b84841015610aca5785888581518110610a8257fe5b906020019060200201511115610a9757600080fd5b610abd888581518110610aa657fe5b90602001906020020151889063ffffffff61165516565b9650600190930192610a6d565b868603869010610ad957600080fd5b600160a060020a033316600090815260016020526040902054610b02908863ffffffff61164316565b600160a060020a0333166000908152600160205260409020555b84831015610bcf57888381518110610b3057fe5b906020019060200201519150878381518110610b4857fe5b90602001906020020151600160a060020a038316600090815260016020526040902054909150610b7e908263ffffffff61165516565b600160a060020a03808416600081815260016020526040908190209390935591339091169060008051602061166c8339815191529084905190815260200160405180910390a3600190920191610b1c565b50505050505092915050565b60035433600160a060020a03908116911614610bf657600080fd5b6003805473ffffffffffffffffffffffffffffffffffffffff1916600160a060020a0392909216919091179055565b600954600090819081908190819033600160a060020a03908116911614610c4b57600080fd5b60ff86166000908152600b602052604081205463ffffffff1694508411610c7157600080fd5b606363ffffffff85161180159550610c8a576000610c8f565b606484035b92505b8263ffffffff168463ffffffff161115610d7e57505060ff84166000818152600a6020908152604080832060001987810163ffffffff9081168652918452828520600180820180548354600160a060020a039081168a52928852868920805482019055835473ffffffffffffffffffffffffffffffffffffffff1916845590889055978752600b90955294839020805463ffffffff1981169084169092019092161790558254929392909116907f2cfce4af01bcb9d6cf6c84ee1b7c491100b8695368264146a94d71e10a63083f9083905190815260200160405180910390a260001990930192610c92565b50505050919050565b60016020526000908152604090205481565b60035460009033600160a060020a03908116911614610db757600080fd5b600954600160a060020a031660009081526001602052604090205482901015610ddf57600080fd5b600160a060020a03808416600081815260016020526040808220805487019055600954909316815282812080548690039055909160008051602061166c8339815191529085905190815260200160405180910390a350600192915050565b600954600160a060020a031681565b60088054600181600116156101000203166002900480601f0160208091040260200160405190810160405280929190818152602001828054600181600116156101000203166002900480156107355780601f1061070a57610100808354040283529160200191610735565b60068054600181600116156101000203166002900480601f0160208091040260200160405190810160405280929190818152602001828054600181600116156101000203166002900480156107355780601f1061070a57610100808354040283529160200191610735565b60095460009033600160a060020a03908116911614610f4057600080fd5b5060098054600160a060020a0390811660009081526001602081905260408083205495841680845281842080549097019096558454909316825291812055815473ffffffffffffffffffffffffffffffffffffffff1916909217905590565b600082600160a060020a0381161515610fb757600080fd5b8260008111610fc557600080fd5b600d5460ff161515610fd657600080fd5b600160a060020a03331660009081526001602052604090205484901015610ffc57600080fd5b600160a060020a033316600090815260016020526040902054611025908563ffffffff61164316565b600160a060020a03338116600090815260016020526040808220939093559087168152205461105a908563ffffffff61165516565b600160a060020a03808716600081815260016020526040908190209390935591339091169060008051602061166c8339815191529087905190815260200160405180910390a3506001949350505050565b600d5460ff1681565b600d5460009060ff1615156110c857600080fd5b6110d2848461073d565b15156110dd57600080fd5b83600160a060020a0316638f4ffcb1338530866040518563ffffffff1660e060020a0281526004018085600160a060020a0316600160a060020a0316815260200184815260200183600160a060020a0316600160a060020a0316815260200180602001828103825283818151815260200191508051906020019080838360005b8381101561117557808201518382015260200161115d565b50505050905090810190601f1680156111a25780820380516001836020036101000a031916815260200191505b5095505050505050600060405180830381600087803b15156111c357600080fd5b6102c65a03f115156111d457600080fd5b5060019695505050505050565b60095460009033600160a060020a039081169116146111ff57600080fd5b600160a060020a0383166000908152600160205260409020548290101561122557600080fd5b600954600160a060020a0390811660009081526001602052604080822080548601905591851680825282822080548690039055909160008051602061166c8339815191529085905190815260200160405180910390a382600160a060020a03167fcc16f5dbb4873280815c1ee09dbd06736cffcc184412cf7a71a0fdb75d397ca58360405190815260200160405180910390a250600192915050565b600260209081526000928352604080842090915290825290205481565b600354600090819033600160a060020a039081169116146112fe57600080fd5b600160a060020a038316151561134c57600354600160a060020a039081169030163180156108fc0290604051600060405180830381858888f19350505050151561134757600080fd5b611486565b82915081600160a060020a03166370a082313060006040516020015260405160e060020a63ffffffff8416028152600160a060020a039091166004820152602401602060405180830381600087803b15156113a657600080fd5b6102c65a03f115156113b757600080fd5b5050506040518051600354909250600160a060020a03808516925063a9059cbb91168360006040516020015260405160e060020a63ffffffff8516028152600160a060020a0390921660048301526024820152604401602060405180830381600087803b151561142657600080fd5b6102c65a03f1151561143757600080fd5b50505060405180515050600354600160a060020a039081169084167ff931edb47c50b4b4104c187b5814a9aef5f709e17e2ecf9617e860cacade929c8360405190815260200160405180910390a35b505050565b60095433600160a060020a039081169116146114a657600080fd5b600d805460ff1916911515919091179055565b6000828181116114c857600080fd5b60035433600160a060020a039081169116146114e357600080fd5b600160a060020a0385166000908152600160205260409020548490101561150957600080fd5b600160a060020a038516600090815260016020526040908190208054869003905580519081016040908152600160a060020a0387168252602080830187905260ff86166000908152600a8252828120600b83528382205463ffffffff168252909152208151815473ffffffffffffffffffffffffffffffffffffffff1916600160a060020a0391909116178155602082015160019182015560ff85166000908152600b602052604090819020805463ffffffff19811663ffffffff9182169094011692909217909155600160a060020a03871691507ff97a274face0b5517365ad396b1fdba6f68bd3135ef603e44272adba3af5a1e09086905190815260200160405180910390a2506001949350505050565b600354600160a060020a031681565b600b6020526000908152604090205463ffffffff1681565b60008282111561164f57fe5b50900390565b60008282018381101561166457fe5b93925050505600ddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3efa165627a7a72305820a3f1d1241fe347ce58b028d9853546be51435da55745b43c13a7254078db39e00029
Constructor Arguments (ABI-Encoded and is the last bytes of the Contract Creation Code above)
0000000000000000000000000000000000000000204fce5e3e2502611000000000000000000000000000000000000000000000000000000000000000000000a0000000000000000000000000000000000000000000000000000000000000001200000000000000000000000000000000000000000000000000000000000000e00000000000000000000000000000000000000000000000000000000000000001000000000000000000000000000000000000000000000000000000000000000b42656175747920436f696e00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000064245415554590000000000000000000000000000000000000000000000000000
-----Decoded View---------------
Arg [0] : initialSupply (uint256): 10000000000000000000000000000
Arg [1] : tokenName (string): Beauty Coin
Arg [2] : decimalUnits (uint8): 18
Arg [3] : tokenSymbol (string): BEAUTY
Arg [4] : transfersEnable (bool): True
-----Encoded View---------------
9 Constructor Arguments found :
Arg [0] : 0000000000000000000000000000000000000000204fce5e3e25026110000000
Arg [1] : 00000000000000000000000000000000000000000000000000000000000000a0
Arg [2] : 0000000000000000000000000000000000000000000000000000000000000012
Arg [3] : 00000000000000000000000000000000000000000000000000000000000000e0
Arg [4] : 0000000000000000000000000000000000000000000000000000000000000001
Arg [5] : 000000000000000000000000000000000000000000000000000000000000000b
Arg [6] : 42656175747920436f696e000000000000000000000000000000000000000000
Arg [7] : 0000000000000000000000000000000000000000000000000000000000000006
Arg [8] : 4245415554590000000000000000000000000000000000000000000000000000
Swarm Source
bzzr://a3f1d1241fe347ce58b028d9853546be51435da55745b43c13a7254078db39e0
Loading...
Loading
Loading...
Loading
Multichain Portfolio | 30 Chains
Chain | Token | Portfolio % | Price | Amount | Value |
---|
Loading...
Loading
[ Download: CSV Export ]
A contract address hosts a smart contract, which is a set of code stored on the blockchain that runs when predetermined conditions are met. Learn more about addresses in our Knowledge Base.