ERC-20
Overview
Max Total Supply
750 CLRT
Holders
142
Market
Onchain Market Cap
$0.00
Circulating Supply Market Cap
-
Other Info
Token Contract (WITH 18 Decimals)
Balance
0.000005 CLRTValue
$0.00Loading...
Loading
Loading...
Loading
Loading...
Loading
# | Exchange | Pair | Price | 24H Volume | % Volume |
---|
Contract Name:
ClusterToken
Compiler Version
v0.4.11+commit.68ef5810
Optimization Enabled:
Yes with 200 runs
Other Settings:
default evmVersion
Contract Source Code (Solidity)
/** *Submitted for verification at Etherscan.io on 2017-07-28 */ pragma solidity ^0.4.11; /** * @title SafeMath * @dev Math operations with safety checks that throw on error */ library SafeMath { function mul(uint a, uint b) internal returns (uint) { uint c = a * b; assert(a == 0 || c / a == b); return c; } function safeSub(uint a, uint b) internal returns (uint) { assert(b <= a); return a - b; } function div(uint a, uint b) internal returns (uint) { assert(b > 0); uint c = a / b; assert(a == b * c + a % b); return c; } function sub(uint a, uint b) internal returns (uint) { assert(b <= a); return a - b; } function add(uint a, uint b) internal returns (uint) { uint c = a + b; assert(c >= a); return c; } function max64(uint64 a, uint64 b) internal constant returns (uint64) { return a >= b ? a : b; } function min64(uint64 a, uint64 b) internal constant returns (uint64) { return a < b ? a : b; } function max256(uint256 a, uint256 b) internal constant returns (uint256) { return a >= b ? a : b; } function min256(uint256 a, uint256 b) internal constant returns (uint256) { return a < b ? a : b; } function assert(bool assertion) internal { if (!assertion) { throw; } } } /** * @title Ownable * @dev The Ownable contract has an owner address, and provides basic authorization control * functions, this simplifies the implementation of "user permissions". */ contract Ownable { address public owner; function Ownable() { owner = msg.sender; } modifier onlyOwner { if (msg.sender != owner) throw; _; } function transferOwnership(address newOwner) onlyOwner { if (newOwner != address(0)) { owner = newOwner; } } } /** * @title Pausable * @dev Base contract which allows children to implement an emergency stop mechanism. */ contract Pausable is Ownable { bool public stopped; modifier stopInEmergency { if (stopped) { throw; } _; } modifier onlyInEmergency { if (!stopped) { throw; } _; } // called by the owner on emergency, triggers stopped state function emergencyStop() external onlyOwner { stopped = true; } // called by the owner on end of emergency, returns to normal state function release() external onlyOwner onlyInEmergency { stopped = false; } } /** * @title PullPayment * @dev Base contract supporting async send for pull payments. Inherit from this * contract and use asyncSend instead of send. */ contract PullPayment { using SafeMath for uint; mapping(address => uint) public payments; event LogRefundETH(address to, uint value); /** * Store sent amount as credit to be pulled, called by payer **/ function asyncSend(address dest, uint amount) internal { payments[dest] = payments[dest].add(amount); } // withdraw accumulated balance, called by payee function withdrawPayments() { address payee = msg.sender; uint payment = payments[payee]; if (payment == 0) { throw; } if (this.balance < payment) { throw; } payments[payee] = 0; if (!payee.send(payment)) { throw; } LogRefundETH(payee,payment); } } /** * @title ERC20Basic * @dev Simpler version of ERC20 interface * @dev see https://github.com/ethereum/EIPs/issues/179 */ contract ERC20Basic { uint public totalSupply; function balanceOf(address who) constant returns (uint); function transfer(address to, uint value); event Transfer(address indexed from, address indexed to, uint value); } /** * @title ERC20 interface * @dev see https://github.com/ethereum/EIPs/issues/20 */ contract ERC20 is ERC20Basic { function allowance(address owner, address spender) constant returns (uint); function transferFrom(address from, address to, uint value); function approve(address spender, uint value); event Approval(address indexed owner, address indexed spender, uint value); } /** * @title Basic token * @dev Basic version of StandardToken, with no allowances. */ contract BasicToken is ERC20Basic { using SafeMath for uint; mapping(address => uint) balances; /* * Fix for the ERC20 short address attack */ modifier onlyPayloadSize(uint size) { if(msg.data.length < size + 4) { throw; } _; } function transfer(address _to, uint _value) onlyPayloadSize(2 * 32) { balances[msg.sender] = balances[msg.sender].sub(_value); balances[_to] = balances[_to].add(_value); Transfer(msg.sender, _to, _value); } function balanceOf(address _owner) constant returns (uint balance) { return balances[_owner]; } } /** * @title Standard ERC20 token * * @dev Implementation of the basic standard token. * @dev https://github.com/ethereum/EIPs/issues/20 * @dev Based on code by FirstBlood: https://github.com/Firstbloodio/token/blob/master/smart_contract/FirstBloodToken.sol */ contract StandardToken is BasicToken, ERC20 { mapping (address => mapping (address => uint)) allowed; function transferFrom(address _from, address _to, uint _value) onlyPayloadSize(3 * 32) { var _allowance = allowed[_from][msg.sender]; balances[_to] = balances[_to].add(_value); balances[_from] = balances[_from].sub(_value); allowed[_from][msg.sender] = _allowance.sub(_value); Transfer(_from, _to, _value); } function approve(address _spender, uint _value) { if ((_value != 0) && (allowed[msg.sender][_spender] != 0)) throw; allowed[msg.sender][_spender] = _value; Approval(msg.sender, _spender, _value); } function allowance(address _owner, address _spender) constant returns (uint remaining) { return allowed[_owner][_spender]; } } /** * ClusterToken presale contract. */ contract ClusterToken is StandardToken, PullPayment, Ownable, Pausable { using SafeMath for uint; struct Backer { address buyer; uint contribution; uint withdrawnAtSegment; uint withdrawnAtCluster; bool state; } /** * Variables */ string public constant name = "ClusterToken"; string public constant symbol = "CLRT"; uint256 public constant decimals = 18; uint256 private buyPriceEth = 10000000000000000; uint256 public initialBlockCount; uint256 private testBlockEnd; uint256 public contributors; uint256 private minedBlocks; uint256 private ClusterCurrent; uint256 private SegmentCurrent; uint256 private UnitCurrent; mapping(address => Backer) public backers; /** * @dev Contract constructor */ function ClusterToken() { totalSupply = 750000000000000000000; balances[msg.sender] = totalSupply; initialBlockCount = 4086356; contributors = 0; } /** * @return Returns the current amount of CLUSTERS */ function currentCluster() constant returns (uint256 currentCluster) { uint blockCount = block.number - initialBlockCount; uint result = blockCount.div(1000000); return result; } /** * @return Returns the current amount of SEGMENTS */ function currentSegment() constant returns (uint256 currentSegment) { uint blockCount = block.number - initialBlockCount; uint newSegment = currentCluster().mul(1000); uint result = blockCount.div(1000).sub(newSegment); return result; } /** * @return Returns the current amount of UNITS */ function currentUnit() constant returns (uint256 currentUnit) { uint blockCount = block.number - initialBlockCount; uint getClusters = currentCluster().mul(1000000); uint newUnit = currentSegment().mul(1000); return blockCount.sub(getClusters).sub(newUnit); } /** * @return Returns the current network block */ function currentBlock() constant returns (uint256 blockNumber) { return block.number - initialBlockCount; } /** * @dev Allows users to buy CLUSTER and receive their tokens at once. * @return The amount of CLUSTER bought by sender. */ function buyClusterToken() payable returns (uint amount) { if (balances[this] < amount) throw; amount = msg.value.mul(buyPriceEth).div(1 ether); balances[msg.sender] += amount; balances[this] -= amount; Transfer(this, msg.sender, amount); Backer backer = backers[msg.sender]; backer.contribution = backer.contribution.add(amount); backer.withdrawnAtSegment = backer.withdrawnAtSegment.add(0); backer.withdrawnAtCluster = backer.withdrawnAtCluster.add(0); backer.state = backer.state = true; contributors++; return amount; } /** * @dev Allows users to claim CLUSTER every 1000 SEGMENTS (1.000.000 blocks). * @return The amount of CLUSTER claimed by sender. */ function claimClusters() public returns (uint amount) { if (currentSegment() == 0) throw; if (!backers[msg.sender].state) throw; uint previousWithdraws = backers[msg.sender].withdrawnAtCluster; uint entitledToClusters = currentCluster().sub(previousWithdraws); if (entitledToClusters == 0) throw; if (!isEntitledForCluster(msg.sender)) throw; uint userShares = backers[msg.sender].contribution.div(1 finney); uint amountForPayout = buyPriceEth.div(contributors); amount = amountForPayout.mul(userShares).mul(1000); balances[msg.sender] += amount; balances[this] -= amount; Transfer(this, msg.sender, amount); backers[msg.sender].withdrawnAtCluster = currentCluster(); return amount; } /** * @dev Allows users to claim segments every 1000 UNITS (blocks). * @dev NOTE: Users claiming SEGMENTS instead of CLUSTERS get only half of the reward. * @return The amount of SEGMENTS claimed by sender. */ function claimSegments() public returns (uint amount) { if (currentSegment() == 0) throw; if (!backers[msg.sender].state) throw; uint previousWithdraws = currentCluster().add(backers[msg.sender].withdrawnAtSegment); uint entitledToSegments = currentCluster().add(currentSegment().sub(previousWithdraws)); if (entitledToSegments == 0 ) throw; uint userShares = backers[msg.sender].contribution.div(1 finney); uint amountForPayout = buyPriceEth.div(contributors); amount = amountForPayout.mul(userShares).div(10).div(2); balances[msg.sender] += amount; balances[this] -= amount; Transfer(this, msg.sender, amount); backers[msg.sender].withdrawnAtSegment = currentSegment(); return amount; } /** * @dev Function if users send funds to this contract, call the buy function. */ function() payable { if (msg.sender != owner) { buyClusterToken(); } } /** * @dev Allows owner to withdraw funds from the account. */ function Drain() onlyOwner public { if(this.balance > 0) { if (!owner.send(this.balance)) throw; } } /** * Burn away the specified amount of ClusterToken tokens. * @return Returns success boolean. */ function burn(uint _value) onlyOwner returns (bool) { balances[msg.sender] = balances[msg.sender].sub(_value); totalSupply = totalSupply.sub(_value); Transfer(msg.sender, 0x0, _value); return true; } /** * @dev Internal check to see if at least 1000 segments passed without withdrawal prior to rewarding a cluster */ function isEntitledForCluster(address _sender) private constant returns (bool) { uint t1 = currentCluster().mul(1000).add(currentSegment()); uint t2 = backers[_sender].withdrawnAtSegment; if (t1.sub(t2) >= 1000) { return true; } return false; } }
Contract Security Audit
- No Contract Security Audit Submitted- Submit Audit Here
[{"constant":true,"inputs":[],"name":"name","outputs":[{"name":"","type":"string"}],"payable":false,"type":"function"},{"constant":false,"inputs":[{"name":"_spender","type":"address"},{"name":"_value","type":"uint256"}],"name":"approve","outputs":[],"payable":false,"type":"function"},{"constant":true,"inputs":[],"name":"currentUnit","outputs":[{"name":"currentUnit","type":"uint256"}],"payable":false,"type":"function"},{"constant":true,"inputs":[],"name":"totalSupply","outputs":[{"name":"","type":"uint256"}],"payable":false,"type":"function"},{"constant":false,"inputs":[{"name":"_from","type":"address"},{"name":"_to","type":"address"},{"name":"_value","type":"uint256"}],"name":"transferFrom","outputs":[],"payable":false,"type":"function"},{"constant":true,"inputs":[],"name":"decimals","outputs":[{"name":"","type":"uint256"}],"payable":false,"type":"function"},{"constant":false,"inputs":[{"name":"_value","type":"uint256"}],"name":"burn","outputs":[{"name":"","type":"bool"}],"payable":false,"type":"function"},{"constant":false,"inputs":[],"name":"withdrawPayments","outputs":[],"payable":false,"type":"function"},{"constant":false,"inputs":[],"name":"emergencyStop","outputs":[],"payable":false,"type":"function"},{"constant":true,"inputs":[],"name":"contributors","outputs":[{"name":"","type":"uint256"}],"payable":false,"type":"function"},{"constant":true,"inputs":[{"name":"_owner","type":"address"}],"name":"balanceOf","outputs":[{"name":"balance","type":"uint256"}],"payable":false,"type":"function"},{"constant":true,"inputs":[],"name":"stopped","outputs":[{"name":"","type":"bool"}],"payable":false,"type":"function"},{"constant":false,"inputs":[],"name":"release","outputs":[],"payable":false,"type":"function"},{"constant":false,"inputs":[],"name":"claimSegments","outputs":[{"name":"amount","type":"uint256"}],"payable":false,"type":"function"},{"constant":true,"inputs":[],"name":"owner","outputs":[{"name":"","type":"address"}],"payable":false,"type":"function"},{"constant":false,"inputs":[],"name":"buyClusterToken","outputs":[{"name":"amount","type":"uint256"}],"payable":true,"type":"function"},{"constant":true,"inputs":[],"name":"symbol","outputs":[{"name":"","type":"string"}],"payable":false,"type":"function"},{"constant":true,"inputs":[],"name":"currentSegment","outputs":[{"name":"currentSegment","type":"uint256"}],"payable":false,"type":"function"},{"constant":false,"inputs":[{"name":"_to","type":"address"},{"name":"_value","type":"uint256"}],"name":"transfer","outputs":[],"payable":false,"type":"function"},{"constant":true,"inputs":[],"name":"currentCluster","outputs":[{"name":"currentCluster","type":"uint256"}],"payable":false,"type":"function"},{"constant":true,"inputs":[{"name":"","type":"address"}],"name":"backers","outputs":[{"name":"buyer","type":"address"},{"name":"contribution","type":"uint256"},{"name":"withdrawnAtSegment","type":"uint256"},{"name":"withdrawnAtCluster","type":"uint256"},{"name":"state","type":"bool"}],"payable":false,"type":"function"},{"constant":false,"inputs":[],"name":"claimClusters","outputs":[{"name":"amount","type":"uint256"}],"payable":false,"type":"function"},{"constant":false,"inputs":[],"name":"Drain","outputs":[],"payable":false,"type":"function"},{"constant":true,"inputs":[{"name":"_owner","type":"address"},{"name":"_spender","type":"address"}],"name":"allowance","outputs":[{"name":"remaining","type":"uint256"}],"payable":false,"type":"function"},{"constant":true,"inputs":[],"name":"currentBlock","outputs":[{"name":"blockNumber","type":"uint256"}],"payable":false,"type":"function"},{"constant":true,"inputs":[{"name":"","type":"address"}],"name":"payments","outputs":[{"name":"","type":"uint256"}],"payable":false,"type":"function"},{"constant":true,"inputs":[],"name":"initialBlockCount","outputs":[{"name":"","type":"uint256"}],"payable":false,"type":"function"},{"constant":false,"inputs":[{"name":"newOwner","type":"address"}],"name":"transferOwnership","outputs":[],"payable":false,"type":"function"},{"inputs":[],"payable":false,"type":"constructor"},{"payable":true,"type":"fallback"},{"anonymous":false,"inputs":[{"indexed":false,"name":"to","type":"address"},{"indexed":false,"name":"value","type":"uint256"}],"name":"LogRefundETH","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"name":"owner","type":"address"},{"indexed":true,"name":"spender","type":"address"},{"indexed":false,"name":"value","type":"uint256"}],"name":"Approval","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"name":"from","type":"address"},{"indexed":true,"name":"to","type":"address"},{"indexed":false,"name":"value","type":"uint256"}],"name":"Transfer","type":"event"}]
Contract Creation Code
6060604052662386f26fc10000600555341561001757fe5b5b5b60048054600160a060020a03191633600160a060020a03161790555b6828a857425466f800006000818155600160a060020a033316815260016020526040812091909155623e5a546006556008555b5b61140c806100786000396000f300606060405236156101675763ffffffff7c010000000000000000000000000000000000000000000000000000000060003504166306fdde038114610190578063095ea7b3146102205780630a0278251461024157806318160ddd1461026357806323b872dd14610285578063313ce567146102ac57806342966c68146102ce5780636103d70b146102f557806363a599a4146103075780636e7e3b2b1461031957806370a082311461033b57806375f12b211461036957806386d1a69f1461038d5780638b57ebc61461039f5780638da5cb5b146103c1578063953b42b3146103ed57806395d89b411461040757806399b465cb14610497578063a9059cbb146104b9578063b281c478146104da578063b85dfb80146104fc578063b99f1d021461054f578063d67a073f14610571578063dd62ed3e14610583578063e12ed13c146105b7578063e2982c21146105d9578063e5f65c7114610607578063f2fde38b14610629575b61018e5b60045433600160a060020a0390811691161461018b57610189610647565b505b5b565b005b341561019857fe5b6101a0610785565b6040805160208082528351818301528351919283929083019185019080838382156101e6575b8051825260208311156101e657601f1990920191602091820191016101c6565b505050905090810190601f1680156102125780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b341561022857fe5b61018e600160a060020a03600435166024356107bc565b005b341561024957fe5b61025161085c565b60408051918252519081900360200190f35b341561026b57fe5b6102516108c8565b60408051918252519081900360200190f35b341561028d57fe5b61018e600160a060020a03600435811690602435166044356108ce565b005b34156102b457fe5b6102516109e0565b60408051918252519081900360200190f35b34156102d657fe5b6102e16004356109e5565b604080519115158252519081900360200190f35b34156102fd57fe5b61018e610a96565b005b341561030f57fe5b61018e610b5d565b005b341561032157fe5b610251610bb2565b60408051918252519081900360200190f35b341561034357fe5b610251600160a060020a0360043516610bb8565b60408051918252519081900360200190f35b341561037157fe5b6102e1610bd7565b604080519115158252519081900360200190f35b341561039557fe5b61018e610bf8565b005b34156103a757fe5b610251610c61565b60408051918252519081900360200190f35b34156103c957fe5b6103d1610e21565b60408051600160a060020a039092168252519081900360200190f35b610251610647565b60408051918252519081900360200190f35b341561040f57fe5b6101a0610e30565b6040805160208082528351818301528351919283929083019185019080838382156101e6575b8051825260208311156101e657601f1990920191602091820191016101c6565b505050905090810190601f1680156102125780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b341561049f57fe5b610251610e67565b60408051918252519081900360200190f35b34156104c157fe5b61018e600160a060020a0360043516602435610ebb565b005b34156104e257fe5b610251610f77565b60408051918252519081900360200190f35b341561050457fe5b610518600160a060020a0360043516610f9e565b60408051600160a060020a039096168652602086019490945284840192909252606084015215156080830152519081900360a00190f35b341561055757fe5b610251610fda565b60408051918252519081900360200190f35b341561057957fe5b61018e611172565b005b341561058b57fe5b610251600160a060020a03600435811690602435166111dc565b60408051918252519081900360200190f35b34156105bf57fe5b610251611209565b60408051918252519081900360200190f35b34156105e157fe5b610251600160a060020a0360043516611212565b60408051918252519081900360200190f35b341561060f57fe5b610251611224565b60408051918252519081900360200190f35b341561063157fe5b61018e600160a060020a036004351661122a565b005b600160a060020a0330166000908152600160205260408120548190819010156106705760006000fd5b61069d670de0b6b3a76400006106916005543461128390919063ffffffff16565b9063ffffffff6112b216565b600160a060020a03338116600081815260016020908152604080832080548701905530909416808352918490208054869003905583518581529351949650919390926000805160206113c183398151915292908290030190a350600160a060020a0333166000908152600d602052604090206001810154610724908363ffffffff6112f516565b6001820155600281015461073f90600063ffffffff6112f516565b6002820155600381015461075a90600063ffffffff6112f516565b6003820155600481018054600160ff19918216811790911681179091556008805490910190555b5090565b60408051808201909152600c81527f436c7573746572546f6b656e0000000000000000000000000000000000000000602082015281565b80158015906107ef5750600160a060020a0333811660009081526002602090815260408083209386168352929052205415155b156107fa5760006000fd5b600160a060020a03338116600081815260026020908152604080832094871680845294825291829020859055815185815291517f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b9259281900390910190a35b5050565b60065460009043038180610881620f4240610875610f77565b9063ffffffff61128316565b915061089d6103e8610875610e67565b9063ffffffff61128316565b90506108bf816108b3858563ffffffff61131116565b9063ffffffff61131116565b93505b50505090565b60005481565b6000606060643610156108e15760006000fd5b600160a060020a038086166000908152600260209081526040808320338516845282528083205493881683526001909152902054909250610928908463ffffffff6112f516565b600160a060020a03808616600090815260016020526040808220939093559087168152205461095d908463ffffffff61131116565b600160a060020a038616600090815260016020526040902055610986828463ffffffff61131116565b600160a060020a038087166000818152600260209081526040808320338616845282529182902094909455805187815290519288169391926000805160206113c1833981519152929181900390910190a35b5b5050505050565b601281565b60045460009033600160a060020a03908116911614610a045760006000fd5b600160a060020a033316600090815260016020526040902054610a2d908363ffffffff61131116565b600160a060020a03331660009081526001602052604081209190915554610a5a908363ffffffff61131116565b6000908155604080518481529051600160a060020a033316916000805160206113c1833981519152919081900360200190a35060015b5b919050565b33600160a060020a038116600090815260036020526040902054801515610abd5760006000fd5b8030600160a060020a0316311015610ad55760006000fd5b600160a060020a0382166000818152600360205260408082208290555183156108fc0291849190818181858888f193505050501515610b145760006000fd5b60408051600160a060020a03841681526020810183905281517f991678bf7f45816a1ff5cf860f3dabd3e26c34d959aa479904bf9caec17af1c5929181900390910190a15b5050565b60045433600160a060020a03908116911614610b795760006000fd5b6004805474ff00000000000000000000000000000000000000001916740100000000000000000000000000000000000000001790555b5b565b60085481565b600160a060020a0381166000908152600160205260409020545b919050565b60045474010000000000000000000000000000000000000000900460ff1681565b60045433600160a060020a03908116911614610c145760006000fd5b60045474010000000000000000000000000000000000000000900460ff161515610c3e5760006000fd5b6004805474ff0000000000000000000000000000000000000000191690555b5b5b565b60006000600060006000610c73610e67565b1515610c7f5760006000fd5b600160a060020a0333166000908152600d602052604090206004015460ff161515610caa5760006000fd5b600160a060020a0333166000908152600d6020526040902060020154610cde90610cd2610f77565b9063ffffffff6112f516565b9350610d0f610cfb856108b3610e67565b9063ffffffff61131116565b610cd2610f77565b9063ffffffff6112f516565b9250821515610d1e5760006000fd5b600160a060020a0333166000908152600d6020526040902060010154610d519066038d7ea4c6800063ffffffff6112b216565b9150610d6a6008546005546112b290919063ffffffff16565b9050610d9c6002610691600a81858763ffffffff61128316565b9063ffffffff6112b216565b9063ffffffff6112b216565b600160a060020a03338116600081815260016020908152604080832080548701905530909416808352918490208054869003905583518581529351949950919390926000805160206113c183398151915292908290030190a3610dfd610e67565b600160a060020a0333166000908152600d60205260409020600201555b5050505090565b600454600160a060020a031681565b60408051808201909152600481527f434c525400000000000000000000000000000000000000000000000000000000602082015281565b60065460009043038180610e8b6103e8610875610f77565b9063ffffffff61128316565b9150610eaf826108b3856103e863ffffffff6112b216565b9063ffffffff61131116565b90508093505b50505090565b60406044361015610ecc5760006000fd5b600160a060020a033316600090815260016020526040902054610ef5908363ffffffff61131116565b600160a060020a033381166000908152600160205260408082209390935590851681522054610f2a908363ffffffff6112f516565b600160a060020a038085166000818152600160209081526040918290209490945580518681529051919333909316926000805160206113c183398151915292918290030190a35b5b505050565b600654600090430381610f9382620f424063ffffffff6112b216565b90508092505b505090565b600d6020526000908152604090208054600182015460028301546003840154600490940154600160a060020a0390931693919290919060ff1685565b60006000600060006000610fec610e67565b1515610ff85760006000fd5b600160a060020a0333166000908152600d602052604090206004015460ff1615156110235760006000fd5b600160a060020a0333166000908152600d60205260409020600301549350611059846108b3610f77565b9063ffffffff61131116565b92508215156110685760006000fd5b6110713361132a565b151561107d5760006000fd5b600160a060020a0333166000908152600d60205260409020600101546110b09066038d7ea4c6800063ffffffff6112b216565b91506110c96008546005546112b290919063ffffffff16565b90506110ed6103e8610875838563ffffffff61128316565b9063ffffffff61128316565b600160a060020a03338116600081815260016020908152604080832080548701905530909416808352918490208054869003905583518581529351949950919390926000805160206113c183398151915292908290030190a361114e610f77565b600160a060020a0333166000908152600d60205260409020600301555b5050505090565b60045433600160a060020a0390811691161461118e5760006000fd5b600030600160a060020a031631111561018b57600454604051600160a060020a039182169130163180156108fc02916000818181858888f19350505050151561018b5760006000fd5b5b5b5b565b600160a060020a038083166000908152600260209081526040808320938516835292905220545b92915050565b60065443035b90565b60036020526000908152604090205481565b60065481565b60045433600160a060020a039081169116146112465760006000fd5b600160a060020a03811615610189576004805473ffffffffffffffffffffffffffffffffffffffff1916600160a060020a0383161790555b5b5b50565b60008282026112a78415806112a2575083858381151561129f57fe5b04145b6113af565b8091505b5092915050565b600060006112c2600084116113af565b82848115156112cd57fe5b0490506112a783858115156112de57fe5b068285020185146113af565b8091505b5092915050565b60008282016112a7848210156113af565b8091505b5092915050565b600061131f838311156113af565b508082035b92915050565b60006000600061136161133b610e67565b610cd26103e8610875610f77565b9063ffffffff61128316565b9063ffffffff6112f516565b600160a060020a0385166000908152600d602052604090206002015490925090506103e8611395838363ffffffff61131116565b106113a357600192506113a8565b600092505b5050919050565b8015156101895760006000fd5b5b505600ddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3efa165627a7a723058205921529dc31cd98e5e6a10fc52c855ecb617f657ff728146f6ee2109a24c92d30029
Deployed Bytecode
0x606060405236156101675763ffffffff7c010000000000000000000000000000000000000000000000000000000060003504166306fdde038114610190578063095ea7b3146102205780630a0278251461024157806318160ddd1461026357806323b872dd14610285578063313ce567146102ac57806342966c68146102ce5780636103d70b146102f557806363a599a4146103075780636e7e3b2b1461031957806370a082311461033b57806375f12b211461036957806386d1a69f1461038d5780638b57ebc61461039f5780638da5cb5b146103c1578063953b42b3146103ed57806395d89b411461040757806399b465cb14610497578063a9059cbb146104b9578063b281c478146104da578063b85dfb80146104fc578063b99f1d021461054f578063d67a073f14610571578063dd62ed3e14610583578063e12ed13c146105b7578063e2982c21146105d9578063e5f65c7114610607578063f2fde38b14610629575b61018e5b60045433600160a060020a0390811691161461018b57610189610647565b505b5b565b005b341561019857fe5b6101a0610785565b6040805160208082528351818301528351919283929083019185019080838382156101e6575b8051825260208311156101e657601f1990920191602091820191016101c6565b505050905090810190601f1680156102125780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b341561022857fe5b61018e600160a060020a03600435166024356107bc565b005b341561024957fe5b61025161085c565b60408051918252519081900360200190f35b341561026b57fe5b6102516108c8565b60408051918252519081900360200190f35b341561028d57fe5b61018e600160a060020a03600435811690602435166044356108ce565b005b34156102b457fe5b6102516109e0565b60408051918252519081900360200190f35b34156102d657fe5b6102e16004356109e5565b604080519115158252519081900360200190f35b34156102fd57fe5b61018e610a96565b005b341561030f57fe5b61018e610b5d565b005b341561032157fe5b610251610bb2565b60408051918252519081900360200190f35b341561034357fe5b610251600160a060020a0360043516610bb8565b60408051918252519081900360200190f35b341561037157fe5b6102e1610bd7565b604080519115158252519081900360200190f35b341561039557fe5b61018e610bf8565b005b34156103a757fe5b610251610c61565b60408051918252519081900360200190f35b34156103c957fe5b6103d1610e21565b60408051600160a060020a039092168252519081900360200190f35b610251610647565b60408051918252519081900360200190f35b341561040f57fe5b6101a0610e30565b6040805160208082528351818301528351919283929083019185019080838382156101e6575b8051825260208311156101e657601f1990920191602091820191016101c6565b505050905090810190601f1680156102125780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b341561049f57fe5b610251610e67565b60408051918252519081900360200190f35b34156104c157fe5b61018e600160a060020a0360043516602435610ebb565b005b34156104e257fe5b610251610f77565b60408051918252519081900360200190f35b341561050457fe5b610518600160a060020a0360043516610f9e565b60408051600160a060020a039096168652602086019490945284840192909252606084015215156080830152519081900360a00190f35b341561055757fe5b610251610fda565b60408051918252519081900360200190f35b341561057957fe5b61018e611172565b005b341561058b57fe5b610251600160a060020a03600435811690602435166111dc565b60408051918252519081900360200190f35b34156105bf57fe5b610251611209565b60408051918252519081900360200190f35b34156105e157fe5b610251600160a060020a0360043516611212565b60408051918252519081900360200190f35b341561060f57fe5b610251611224565b60408051918252519081900360200190f35b341561063157fe5b61018e600160a060020a036004351661122a565b005b600160a060020a0330166000908152600160205260408120548190819010156106705760006000fd5b61069d670de0b6b3a76400006106916005543461128390919063ffffffff16565b9063ffffffff6112b216565b600160a060020a03338116600081815260016020908152604080832080548701905530909416808352918490208054869003905583518581529351949650919390926000805160206113c183398151915292908290030190a350600160a060020a0333166000908152600d602052604090206001810154610724908363ffffffff6112f516565b6001820155600281015461073f90600063ffffffff6112f516565b6002820155600381015461075a90600063ffffffff6112f516565b6003820155600481018054600160ff19918216811790911681179091556008805490910190555b5090565b60408051808201909152600c81527f436c7573746572546f6b656e0000000000000000000000000000000000000000602082015281565b80158015906107ef5750600160a060020a0333811660009081526002602090815260408083209386168352929052205415155b156107fa5760006000fd5b600160a060020a03338116600081815260026020908152604080832094871680845294825291829020859055815185815291517f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b9259281900390910190a35b5050565b60065460009043038180610881620f4240610875610f77565b9063ffffffff61128316565b915061089d6103e8610875610e67565b9063ffffffff61128316565b90506108bf816108b3858563ffffffff61131116565b9063ffffffff61131116565b93505b50505090565b60005481565b6000606060643610156108e15760006000fd5b600160a060020a038086166000908152600260209081526040808320338516845282528083205493881683526001909152902054909250610928908463ffffffff6112f516565b600160a060020a03808616600090815260016020526040808220939093559087168152205461095d908463ffffffff61131116565b600160a060020a038616600090815260016020526040902055610986828463ffffffff61131116565b600160a060020a038087166000818152600260209081526040808320338616845282529182902094909455805187815290519288169391926000805160206113c1833981519152929181900390910190a35b5b5050505050565b601281565b60045460009033600160a060020a03908116911614610a045760006000fd5b600160a060020a033316600090815260016020526040902054610a2d908363ffffffff61131116565b600160a060020a03331660009081526001602052604081209190915554610a5a908363ffffffff61131116565b6000908155604080518481529051600160a060020a033316916000805160206113c1833981519152919081900360200190a35060015b5b919050565b33600160a060020a038116600090815260036020526040902054801515610abd5760006000fd5b8030600160a060020a0316311015610ad55760006000fd5b600160a060020a0382166000818152600360205260408082208290555183156108fc0291849190818181858888f193505050501515610b145760006000fd5b60408051600160a060020a03841681526020810183905281517f991678bf7f45816a1ff5cf860f3dabd3e26c34d959aa479904bf9caec17af1c5929181900390910190a15b5050565b60045433600160a060020a03908116911614610b795760006000fd5b6004805474ff00000000000000000000000000000000000000001916740100000000000000000000000000000000000000001790555b5b565b60085481565b600160a060020a0381166000908152600160205260409020545b919050565b60045474010000000000000000000000000000000000000000900460ff1681565b60045433600160a060020a03908116911614610c145760006000fd5b60045474010000000000000000000000000000000000000000900460ff161515610c3e5760006000fd5b6004805474ff0000000000000000000000000000000000000000191690555b5b5b565b60006000600060006000610c73610e67565b1515610c7f5760006000fd5b600160a060020a0333166000908152600d602052604090206004015460ff161515610caa5760006000fd5b600160a060020a0333166000908152600d6020526040902060020154610cde90610cd2610f77565b9063ffffffff6112f516565b9350610d0f610cfb856108b3610e67565b9063ffffffff61131116565b610cd2610f77565b9063ffffffff6112f516565b9250821515610d1e5760006000fd5b600160a060020a0333166000908152600d6020526040902060010154610d519066038d7ea4c6800063ffffffff6112b216565b9150610d6a6008546005546112b290919063ffffffff16565b9050610d9c6002610691600a81858763ffffffff61128316565b9063ffffffff6112b216565b9063ffffffff6112b216565b600160a060020a03338116600081815260016020908152604080832080548701905530909416808352918490208054869003905583518581529351949950919390926000805160206113c183398151915292908290030190a3610dfd610e67565b600160a060020a0333166000908152600d60205260409020600201555b5050505090565b600454600160a060020a031681565b60408051808201909152600481527f434c525400000000000000000000000000000000000000000000000000000000602082015281565b60065460009043038180610e8b6103e8610875610f77565b9063ffffffff61128316565b9150610eaf826108b3856103e863ffffffff6112b216565b9063ffffffff61131116565b90508093505b50505090565b60406044361015610ecc5760006000fd5b600160a060020a033316600090815260016020526040902054610ef5908363ffffffff61131116565b600160a060020a033381166000908152600160205260408082209390935590851681522054610f2a908363ffffffff6112f516565b600160a060020a038085166000818152600160209081526040918290209490945580518681529051919333909316926000805160206113c183398151915292918290030190a35b5b505050565b600654600090430381610f9382620f424063ffffffff6112b216565b90508092505b505090565b600d6020526000908152604090208054600182015460028301546003840154600490940154600160a060020a0390931693919290919060ff1685565b60006000600060006000610fec610e67565b1515610ff85760006000fd5b600160a060020a0333166000908152600d602052604090206004015460ff1615156110235760006000fd5b600160a060020a0333166000908152600d60205260409020600301549350611059846108b3610f77565b9063ffffffff61131116565b92508215156110685760006000fd5b6110713361132a565b151561107d5760006000fd5b600160a060020a0333166000908152600d60205260409020600101546110b09066038d7ea4c6800063ffffffff6112b216565b91506110c96008546005546112b290919063ffffffff16565b90506110ed6103e8610875838563ffffffff61128316565b9063ffffffff61128316565b600160a060020a03338116600081815260016020908152604080832080548701905530909416808352918490208054869003905583518581529351949950919390926000805160206113c183398151915292908290030190a361114e610f77565b600160a060020a0333166000908152600d60205260409020600301555b5050505090565b60045433600160a060020a0390811691161461118e5760006000fd5b600030600160a060020a031631111561018b57600454604051600160a060020a039182169130163180156108fc02916000818181858888f19350505050151561018b5760006000fd5b5b5b5b565b600160a060020a038083166000908152600260209081526040808320938516835292905220545b92915050565b60065443035b90565b60036020526000908152604090205481565b60065481565b60045433600160a060020a039081169116146112465760006000fd5b600160a060020a03811615610189576004805473ffffffffffffffffffffffffffffffffffffffff1916600160a060020a0383161790555b5b5b50565b60008282026112a78415806112a2575083858381151561129f57fe5b04145b6113af565b8091505b5092915050565b600060006112c2600084116113af565b82848115156112cd57fe5b0490506112a783858115156112de57fe5b068285020185146113af565b8091505b5092915050565b60008282016112a7848210156113af565b8091505b5092915050565b600061131f838311156113af565b508082035b92915050565b60006000600061136161133b610e67565b610cd26103e8610875610f77565b9063ffffffff61128316565b9063ffffffff6112f516565b600160a060020a0385166000908152600d602052604090206002015490925090506103e8611395838363ffffffff61131116565b106113a357600192506113a8565b600092505b5050919050565b8015156101895760006000fd5b5b505600ddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3efa165627a7a723058205921529dc31cd98e5e6a10fc52c855ecb617f657ff728146f6ee2109a24c92d30029
Swarm Source
bzzr://5921529dc31cd98e5e6a10fc52c855ecb617f657ff728146f6ee2109a24c92d3
Loading...
Loading
Loading...
Loading
[ Download: CSV Export ]
[ Download: CSV Export ]
A token is a representation of an on-chain or off-chain asset. The token page shows information such as price, total supply, holders, transfers and social links. Learn more about this page in our Knowledge Base.