Feature Tip: Add private address tag to any address under My Name Tag !
ERC-20
Analytics
Overview
Max Total Supply
83,336,999.999999999999999 SAN
Holders
2,988 (0.00%)
Market
Price
$0.11 @ 0.000034 ETH (+0.96%)
Onchain Market Cap
$9,499,084.61
Circulating Supply Market Cap
$7,300,427.00
Other Info
Token Contract (WITH 18 Decimals)
Balance
1,986.73498236 SANValue
$226.46 ( ~0.0677096838598167 Eth) [0.0024%]Loading...
Loading
Loading...
Loading
Loading...
Loading
# | Exchange | Pair | Price | 24H Volume | % Volume |
---|
Contract Name:
SAN
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-04 */ pragma solidity ^0.4.11; // ==== DISCLAIMER ==== // // ETHEREUM IS STILL AN EXPEREMENTAL TECHNOLOGY. // ALTHOUGH THIS SMART CONTRACT WAS CREATED WITH GREAT CARE AND IN THE HOPE OF BEING USEFUL, NO GUARANTEES OF FLAWLESS OPERATION CAN BE GIVEN. // IN PARTICULAR - SUBTILE BUGS, HACKER ATTACKS OR MALFUNCTION OF UNDERLYING TECHNOLOGY CAN CAUSE UNINTENTIONAL BEHAVIOUR. // YOU ARE STRONGLY ENCOURAGED TO STUDY THIS SMART CONTRACT CAREFULLY IN ORDER TO UNDERSTAND POSSIBLE EDGE CASES AND RISKS. // DON'T USE THIS SMART CONTRACT IF YOU HAVE SUBSTANTIAL DOUBTS OR IF YOU DON'T KNOW WHAT YOU ARE DOING. // // THIS SOFTWARE IS PROVIDED "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY // AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, // INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, // OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, // OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. // ==== // /// @author Santiment LLC /// @title SAN - santiment token contract Base { function max(uint a, uint b) returns (uint) { return a >= b ? a : b; } function min(uint a, uint b) returns (uint) { return a <= b ? a : b; } modifier only(address allowed) { if (msg.sender != allowed) throw; _; } ///@return True if `_addr` is a contract function isContract(address _addr) constant internal returns (bool) { if (_addr == 0) return false; uint size; assembly { size := extcodesize(_addr) } return (size > 0); } // ************************************************* // * reentrancy handling * // ************************************************* //@dev predefined locks (up to uint bit length, i.e. 256 possible) uint constant internal L00 = 2 ** 0; uint constant internal L01 = 2 ** 1; uint constant internal L02 = 2 ** 2; uint constant internal L03 = 2 ** 3; uint constant internal L04 = 2 ** 4; uint constant internal L05 = 2 ** 5; //prevents reentrancy attacs: specific locks uint private bitlocks = 0; modifier noReentrancy(uint m) { var _locks = bitlocks; if (_locks & m > 0) throw; bitlocks |= m; _; bitlocks = _locks; } modifier noAnyReentrancy { var _locks = bitlocks; if (_locks > 0) throw; bitlocks = uint(-1); _; bitlocks = _locks; } ///@dev empty marking modifier signaling to user of the marked function , that it can cause an reentrant call. /// developer should make the caller function reentrant-safe if it use a reentrant function. modifier reentrant { _; } } contract Owned is Base { address public owner; address public newOwner; function Owned() { owner = msg.sender; } function transferOwnership(address _newOwner) only(owner) { newOwner = _newOwner; } function acceptOwnership() only(newOwner) { OwnershipTransferred(owner, newOwner); owner = newOwner; } event OwnershipTransferred(address indexed _from, address indexed _to); } contract ERC20 is Owned { event Transfer(address indexed _from, address indexed _to, uint256 _value); event Approval(address indexed _owner, address indexed _spender, uint256 _value); function transfer(address _to, uint256 _value) isStartedOnly returns (bool success) { if (balances[msg.sender] >= _value && balances[_to] + _value > balances[_to]) { balances[msg.sender] -= _value; balances[_to] += _value; Transfer(msg.sender, _to, _value); return true; } else { return false; } } function transferFrom(address _from, address _to, uint256 _value) isStartedOnly returns (bool success) { if (balances[_from] >= _value && allowed[_from][msg.sender] >= _value && balances[_to] + _value > balances[_to]) { balances[_to] += _value; balances[_from] -= _value; allowed[_from][msg.sender] -= _value; Transfer(_from, _to, _value); return true; } else { return false; } } function balanceOf(address _owner) constant returns (uint256 balance) { return balances[_owner]; } function approve(address _spender, uint256 _value) isStartedOnly returns (bool success) { allowed[msg.sender][_spender] = _value; Approval(msg.sender, _spender, _value); return true; } function allowance(address _owner, address _spender) constant returns (uint256 remaining) { return allowed[_owner][_spender]; } mapping (address => uint256) balances; mapping (address => mapping (address => uint256)) allowed; uint256 public totalSupply; bool public isStarted = false; modifier onlyHolder(address holder) { if (balanceOf(holder) == 0) throw; _; } modifier isStartedOnly() { if (!isStarted) throw; _; } } contract SubscriptionModule { function attachToken(address addr) public ; } contract SAN is Owned, ERC20 { string public constant name = "SANtiment network token"; string public constant symbol = "SAN"; uint8 public constant decimals = 18; address CROWDSALE_MINTER = 0xDa2Cf810c5718135247628689D84F94c61B41d6A; address public SUBSCRIPTION_MODULE = 0x00000000; address public beneficiary; uint public PLATFORM_FEE_PER_10000 = 1; //0.01% uint public totalOnDeposit; uint public totalInCirculation; ///@dev constructor function SAN() { beneficiary = owner = msg.sender; } // ------------------------------------------------------------------------ // Don't accept ethers // ------------------------------------------------------------------------ function () { throw; } //======== SECTION Configuration: Owner only ======== // ///@notice set beneficiary - the account receiving platform fees. function setBeneficiary(address newBeneficiary) external only(owner) { beneficiary = newBeneficiary; } ///@notice attach module managing subscriptions. if subModule==0x0, then disables subscription functionality for this token. /// detached module can usually manage subscriptions, but all operations changing token balances are disabled. function attachSubscriptionModule(SubscriptionModule subModule) noAnyReentrancy external only(owner) { SUBSCRIPTION_MODULE = subModule; if (address(subModule) > 0) subModule.attachToken(this); } ///@notice set platform fee denominated in 1/10000 of SAN token. Thus "1" means 0.01% of SAN token. function setPlatformFeePer10000(uint newFee) external only(owner) { require (newFee <= 10000); //formally maximum fee is 100% (completely insane but technically possible) PLATFORM_FEE_PER_10000 = newFee; } function startToken() isNotStartedOnly only(owner) { totalInCirculation = totalSupply; isStarted = true; } //======== Interface XRateProvider: a trivial exchange rate provider. Rate is 1:1 and SAN symbol as the code // ///@dev used as a default XRateProvider (id==0) by subscription module. ///@notice returns always 1 because exchange rate of the token to itself is always 1. function getRate() returns(uint32 ,uint32) { return (1,1); } function getCode() public returns(string) { return symbol; } //==== Interface ERC20ModuleSupport: Subscription, Deposit and Payment Support ===== /// ///@dev used by subscription module to operate on token balances. ///@param msg_sender should be an original msg.sender provided to subscription module. function _fulfillPreapprovedPayment(address _from, address _to, uint _value, address msg_sender) public onlyTrusted returns(bool success) { success = _from != msg_sender && allowed[_from][msg_sender] >= _value; if (!success) { Payment(_from, _to, _value, _fee(_value), msg_sender, PaymentStatus.APPROVAL_ERROR, 0); } else { success = _fulfillPayment(_from, _to, _value, 0, msg_sender); if (success) { allowed[_from][msg_sender] -= _value; } } return success; } ///@dev used by subscription module to operate on token balances. ///@param msg_sender should be an original msg.sender provided to subscription module. function _fulfillPayment(address _from, address _to, uint _value, uint subId, address msg_sender) public onlyTrusted returns (bool success) { var fee = _fee(_value); assert (fee <= _value); //internal sanity check if (balances[_from] >= _value && balances[_to] + _value > balances[_to]) { balances[_from] -= _value; balances[_to] += _value - fee; balances[beneficiary] += fee; Payment(_from, _to, _value, fee, msg_sender, PaymentStatus.OK, subId); return true; } else { Payment(_from, _to, _value, fee, msg_sender, PaymentStatus.BALANCE_ERROR, subId); return false; } } function _fee(uint _value) internal constant returns (uint fee) { return _value * PLATFORM_FEE_PER_10000 / 10000; } ///@notice used by subscription module to re-create token from returning deposit. ///@dev a subscription module is responsible to correct deposit management. function _mintFromDeposit(address owner, uint amount) public onlyTrusted { balances[owner] += amount; totalOnDeposit -= amount; totalInCirculation += amount; } ///@notice used by subscription module to burn token while creating a new deposit. ///@dev a subscription module is responsible to create and maintain the deposit record. function _burnForDeposit(address owner, uint amount) public onlyTrusted returns (bool success) { if (balances[owner] >= amount) { balances[owner] -= amount; totalOnDeposit += amount; totalInCirculation -= amount; return true; } else { return false; } } //========= Crowdsale Only =============== ///@notice mint new token for given account in crowdsale stage ///@dev allowed only if token not started yet and only for registered minter. ///@dev tokens are become in circulation after token start. function mint(uint amount, address account) onlyCrowdsaleMinter isNotStartedOnly { totalSupply += amount; balances[account]+=amount; } ///@notice start normal operation of the token. No minting is possible after this point. function start() onlyCrowdsaleMinter isNotStartedOnly { totalInCirculation = totalSupply; isStarted = true; } //========= SECTION: Modifier =============== modifier onlyCrowdsaleMinter() { if (msg.sender != CROWDSALE_MINTER) throw; _; } modifier onlyTrusted() { if (msg.sender != SUBSCRIPTION_MODULE) throw; _; } ///@dev token not started means minting is possible, but usual token operations are not. modifier isNotStartedOnly() { if (isStarted) throw; _; } enum PaymentStatus {OK, BALANCE_ERROR, APPROVAL_ERROR} ///@notice event issued on any fee based payment (made of failed). ///@param subId - related subscription Id if any, or zero otherwise. event Payment(address _from, address _to, uint _value, uint _fee, address caller, PaymentStatus status, uint subId); }//contract SAN
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":[{"name":"success","type":"bool"}],"payable":false,"type":"function"},{"constant":true,"inputs":[],"name":"totalSupply","outputs":[{"name":"","type":"uint256"}],"payable":false,"type":"function"},{"constant":false,"inputs":[{"name":"newBeneficiary","type":"address"}],"name":"setBeneficiary","outputs":[],"payable":false,"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,"type":"function"},{"constant":false,"inputs":[{"name":"owner","type":"address"},{"name":"amount","type":"uint256"}],"name":"_mintFromDeposit","outputs":[],"payable":false,"type":"function"},{"constant":false,"inputs":[{"name":"_from","type":"address"},{"name":"_to","type":"address"},{"name":"_value","type":"uint256"},{"name":"subId","type":"uint256"},{"name":"msg_sender","type":"address"}],"name":"_fulfillPayment","outputs":[{"name":"success","type":"bool"}],"payable":false,"type":"function"},{"constant":true,"inputs":[],"name":"decimals","outputs":[{"name":"","type":"uint8"}],"payable":false,"type":"function"},{"constant":true,"inputs":[],"name":"SUBSCRIPTION_MODULE","outputs":[{"name":"","type":"address"}],"payable":false,"type":"function"},{"constant":true,"inputs":[],"name":"beneficiary","outputs":[{"name":"","type":"address"}],"payable":false,"type":"function"},{"constant":true,"inputs":[],"name":"isStarted","outputs":[{"name":"","type":"bool"}],"payable":false,"type":"function"},{"constant":false,"inputs":[{"name":"_from","type":"address"},{"name":"_to","type":"address"},{"name":"_value","type":"uint256"},{"name":"msg_sender","type":"address"}],"name":"_fulfillPreapprovedPayment","outputs":[{"name":"success","type":"bool"}],"payable":false,"type":"function"},{"constant":true,"inputs":[],"name":"totalInCirculation","outputs":[{"name":"","type":"uint256"}],"payable":false,"type":"function"},{"constant":false,"inputs":[],"name":"getRate","outputs":[{"name":"","type":"uint32"},{"name":"","type":"uint32"}],"payable":false,"type":"function"},{"constant":false,"inputs":[{"name":"a","type":"uint256"},{"name":"b","type":"uint256"}],"name":"max","outputs":[{"name":"","type":"uint256"}],"payable":false,"type":"function"},{"constant":false,"inputs":[{"name":"subModule","type":"address"}],"name":"attachSubscriptionModule","outputs":[],"payable":false,"type":"function"},{"constant":true,"inputs":[{"name":"_owner","type":"address"}],"name":"balanceOf","outputs":[{"name":"balance","type":"uint256"}],"payable":false,"type":"function"},{"constant":false,"inputs":[],"name":"acceptOwnership","outputs":[],"payable":false,"type":"function"},{"constant":false,"inputs":[{"name":"a","type":"uint256"},{"name":"b","type":"uint256"}],"name":"min","outputs":[{"name":"","type":"uint256"}],"payable":false,"type":"function"},{"constant":true,"inputs":[],"name":"owner","outputs":[{"name":"","type":"address"}],"payable":false,"type":"function"},{"constant":false,"inputs":[{"name":"amount","type":"uint256"},{"name":"account","type":"address"}],"name":"mint","outputs":[],"payable":false,"type":"function"},{"constant":true,"inputs":[],"name":"symbol","outputs":[{"name":"","type":"string"}],"payable":false,"type":"function"},{"constant":true,"inputs":[],"name":"totalOnDeposit","outputs":[{"name":"","type":"uint256"}],"payable":false,"type":"function"},{"constant":false,"inputs":[{"name":"_to","type":"address"},{"name":"_value","type":"uint256"}],"name":"transfer","outputs":[{"name":"success","type":"bool"}],"payable":false,"type":"function"},{"constant":false,"inputs":[{"name":"owner","type":"address"},{"name":"amount","type":"uint256"}],"name":"_burnForDeposit","outputs":[{"name":"success","type":"bool"}],"payable":false,"type":"function"},{"constant":false,"inputs":[],"name":"start","outputs":[],"payable":false,"type":"function"},{"constant":false,"inputs":[],"name":"startToken","outputs":[],"payable":false,"type":"function"},{"constant":true,"inputs":[],"name":"newOwner","outputs":[{"name":"","type":"address"}],"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":"PLATFORM_FEE_PER_10000","outputs":[{"name":"","type":"uint256"}],"payable":false,"type":"function"},{"constant":false,"inputs":[],"name":"getCode","outputs":[{"name":"","type":"string"}],"payable":false,"type":"function"},{"constant":false,"inputs":[{"name":"_newOwner","type":"address"}],"name":"transferOwnership","outputs":[],"payable":false,"type":"function"},{"constant":false,"inputs":[{"name":"newFee","type":"uint256"}],"name":"setPlatformFeePer10000","outputs":[],"payable":false,"type":"function"},{"inputs":[],"payable":false,"type":"constructor"},{"payable":false,"type":"fallback"},{"anonymous":false,"inputs":[{"indexed":false,"name":"_from","type":"address"},{"indexed":false,"name":"_to","type":"address"},{"indexed":false,"name":"_value","type":"uint256"},{"indexed":false,"name":"_fee","type":"uint256"},{"indexed":false,"name":"caller","type":"address"},{"indexed":false,"name":"status","type":"uint8"},{"indexed":false,"name":"subId","type":"uint256"}],"name":"Payment","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"},{"anonymous":false,"inputs":[{"indexed":true,"name":"_from","type":"address"},{"indexed":true,"name":"_to","type":"address"}],"name":"OwnershipTransferred","type":"event"}]
Contract Creation Code
60606040526000805560068054600160a860020a03191674da2cf810c5718135247628689d84f94c61b41d6a0017905560078054600160a060020a03191690556001600955341561004c57fe5b5b5b60018054600160a060020a03191633600160a060020a03161790555b60018054600160a060020a033316600160a060020a031991821681179092556008805490911690911790555b5b6113d7806100a66000396000f3006060604052361561019e5763ffffffff7c010000000000000000000000000000000000000000000000000000000060003504166306fdde0381146101b4578063095ea7b31461024457806318160ddd146102775780631c31f7101461029957806323b872dd146102b75780632981cceb146102f05780632c7ec2c214610311578063313ce5671461035557806335b55d981461037b57806338af3eed146103a7578063544736e6146103d357806359ba1dd5146103f75780635cb0c16f14610437578063679aefce146104595780636d5433e61461048c5780636dd43d1f146104b457806370a08231146104d257806379ba5097146105005780637ae2b5c7146105125780638da5cb5b1461053a57806394bf804d1461056657806395d89b41146105875780639bd3345714610617578063a9059cbb14610639578063abf0661f1461066c578063be9a65551461069f578063cd00ee0d146106b1578063d4ee1d90146106c3578063dd62ed3e146106ef578063e3d0799c14610723578063ea87963414610745578063f2fde38b146107d5578063f9cc2e66146107f3575b34156101a657fe5b6101b25b60006000fd5b565b005b34156101bc57fe5b6101c4610808565b60408051602080825283518183015283519192839290830191850190808383821561020a575b80518252602083111561020a57601f1990920191602091820191016101ea565b505050905090810190601f1680156102365780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b341561024c57fe5b610263600160a060020a036004351660243561083f565b604080519115158252519081900360200190f35b341561027f57fe5b6102876108bc565b60408051918252519081900360200190f35b34156102a157fe5b6101b2600160a060020a03600435166108c2565b005b34156102bf57fe5b610263600160a060020a036004358116906024351660443561090d565b604080519115158252519081900360200190f35b34156102f857fe5b6101b2600160a060020a0360043516602435610a32565b005b341561031957fe5b610263600160a060020a03600435811690602435811690604435906064359060843516610a83565b604080519115158252519081900360200190f35b341561035d57fe5b610365610c7d565b6040805160ff9092168252519081900360200190f35b341561038357fe5b61038b610c82565b60408051600160a060020a039092168252519081900360200190f35b34156103af57fe5b61038b610c91565b60408051600160a060020a039092168252519081900360200190f35b34156103db57fe5b610263610ca0565b604080519115158252519081900360200190f35b34156103ff57fe5b610263600160a060020a036004358116906024358116906044359060643516610ca9565b604080519115158252519081900360200190f35b341561043f57fe5b610287610df4565b60408051918252519081900360200190f35b341561046157fe5b610469610dfa565b6040805163ffffffff938416815291909216602082015281519081900390910190f35b341561049457fe5b610287600435602435610e02565b60408051918252519081900360200190f35b34156104bc57fe5b6101b2600160a060020a0360043516610e1d565b005b34156104da57fe5b610287600160a060020a0360043516610f15565b60408051918252519081900360200190f35b341561050857fe5b6101b2610f34565b005b341561051a57fe5b610287600435602435610fc4565b60408051918252519081900360200190f35b341561054257fe5b61038b610fdf565b60408051600160a060020a039092168252519081900360200190f35b341561056e57fe5b6101b2600435600160a060020a0360243516610fee565b005b341561058f57fe5b6101c461104d565b60408051602080825283518183015283519192839290830191850190808383821561020a575b80518252602083111561020a57601f1990920191602091820191016101ea565b505050905090810190601f1680156102365780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b341561061f57fe5b610287611084565b60408051918252519081900360200190f35b341561064157fe5b610263600160a060020a036004351660243561108a565b604080519115158252519081900360200190f35b341561067457fe5b610263600160a060020a0360043516602435611165565b604080519115158252519081900360200190f35b34156106a757fe5b6101b26111ec565b005b34156106b957fe5b6101b2611236565b005b34156106cb57fe5b61038b61127d565b60408051600160a060020a039092168252519081900360200190f35b34156106f757fe5b610287600160a060020a036004358116906024351661128c565b60408051918252519081900360200190f35b341561072b57fe5b6102876112b9565b60408051918252519081900360200190f35b341561074d57fe5b6101c46112bf565b60408051602080825283518183015283519192839290830191850190808383821561020a575b80518252602083111561020a57601f1990920191602091820191016101ea565b505050905090810190601f1680156102365780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b34156107dd57fe5b6101b2600160a060020a0360043516611300565b005b34156107fb57fe5b6101b260043561134b565b005b60408051808201909152601781527f53414e74696d656e74206e6574776f726b20746f6b656e000000000000000000602082015281565b60065460009060ff1615156108545760006000fd5b600160a060020a03338116600081815260046020908152604080832094881680845294825291829020869055815186815291517f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b9259281900390910190a35060015b5b92915050565b60055481565b600154600160a060020a0390811690331681146108df5760006000fd5b6008805473ffffffffffffffffffffffffffffffffffffffff1916600160a060020a0384161790555b5b5050565b60065460009060ff1615156109225760006000fd5b600160a060020a0384166000908152600360205260409020548290108015906109725750600160a060020a0380851660009081526004602090815260408083203390941683529290522054829010155b80156109975750600160a060020a038316600090815260036020526040902054828101115b15610a2557600160a060020a03808416600081815260036020908152604080832080548801905588851680845281842080548990039055600483528184203390961684529482529182902080548790039055815186815291519293927fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef9281900390910190a3506001610a29565b5060005b5b5b9392505050565b60075433600160a060020a03908116911614610a4e5760006000fd5b600160a060020a0382166000908152600360205260409020805482019055600a80548290039055600b8054820190555b5b5050565b600754600090819033600160a060020a03908116911614610aa45760006000fd5b610aad85611383565b905084811115610ab957fe5b600160a060020a038716600090815260036020526040902054859010801590610afb5750600160a060020a038616600090815260036020526040902054858101115b15610bc057600160a060020a03808816600081815260036020908152604080832080548b900390558a85168084528184208054888d030190556008548616845281842080548801905581519485529184019190915282018890526060820184905291851660808201527f83725a910247ba73f0cbe5d1f944bdf6e0456c94ccb822dbdd206f4bed6b045e91899189918991869189918b9060a08101835b60ff16815260200182815260200197505050505050505060405180910390a160019150610c71565b7f83725a910247ba73f0cbe5d1f944bdf6e0456c94ccb822dbdd206f4bed6b045e878787848760018a6040518088600160a060020a0316600160a060020a0316815260200187600160a060020a0316600160a060020a0316815260200186815260200185815260200184600160a060020a0316600160a060020a03168152602001836002811115610c4d57fe5b60ff16815260200182815260200197505050505050505060405180910390a1600091505b5b5b5095945050505050565b601281565b600754600160a060020a031681565b600854600160a060020a031681565b60065460ff1681565b60075460009033600160a060020a03908116911614610cc85760006000fd5b81600160a060020a031685600160a060020a031614158015610d105750600160a060020a03808616600090815260046020908152604080832093861683529290522054839010155b9050801515610da6577f83725a910247ba73f0cbe5d1f944bdf6e0456c94ccb822dbdd206f4bed6b045e858585610d4687611383565b60408051600160a060020a0380871682528581166020830152918101849052606081018390529088166080820152879060029060009060a08101835b60ff16815260200182815260200197505050505050505060405180910390a1610de9565b610db4858585600086610a83565b90508015610de957600160a060020a038086166000908152600460209081526040808320938616835292905220805484900390555b5b5b5b949350505050565b600b5481565b6001805b9091565b600081831015610e125781610e14565b825b90505b92915050565b6000805490811115610e2f5760006000fd5b600019600055600154600160a060020a039081169033168114610e525760006000fd5b6007805473ffffffffffffffffffffffffffffffffffffffff1916600160a060020a0385169081179091556000901115610f085782600160a060020a031663406a6f60306040518263ffffffff167c01000000000000000000000000000000000000000000000000000000000281526004018082600160a060020a0316600160a060020a03168152602001915050600060405180830381600087803b1515610ef657fe5b6102c65a03f11515610f0457fe5b5050505b5b5b5060008190555b5050565b600160a060020a0381166000908152600360205260409020545b919050565b600254600160a060020a039081169033168114610f515760006000fd5b600254600154604051600160a060020a0392831692909116907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e090600090a36002546001805473ffffffffffffffffffffffffffffffffffffffff1916600160a060020a039092169190911790555b5b50565b600081831115610e125781610e14565b825b90505b92915050565b600154600160a060020a031681565b60065433600160a060020a03908116610100909204161461100f5760006000fd5b60065460ff16156110205760006000fd5b6005805483019055600160a060020a03811660009081526003602052604090208054830190555b5b5b5050565b60408051808201909152600381527f53414e0000000000000000000000000000000000000000000000000000000000602082015281565b600a5481565b60065460009060ff16151561109f5760006000fd5b600160a060020a0333166000908152600360205260409020548290108015906110e15750600160a060020a038316600090815260036020526040902054828101115b1561115557600160a060020a03338116600081815260036020908152604080832080548890039055938716808352918490208054870190558351868152935191937fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef929081900390910190a35060016108b5565b5060006108b5565b5b5b92915050565b60075460009033600160a060020a039081169116146111845760006000fd5b600160a060020a0383166000908152600360205260409020548290106111555750600160a060020a038216600090815260036020526040902080548290039055600a805482019055600b8054829003905560016108b5565b5060006108b5565b5b5b92915050565b60065433600160a060020a03908116610100909204161461120d5760006000fd5b60065460ff161561121e5760006000fd5b600554600b556006805460ff191660011790555b5b5b565b60065460ff16156112475760006000fd5b600154600160a060020a0390811690331681146112645760006000fd5b600554600b556006805460ff191660011790555b5b505b565b600254600160a060020a031681565b600160a060020a038083166000908152600460209081526040808320938516835292905220545b92915050565b60095481565b6112c7611399565b5060408051808201909152600381527f53414e000000000000000000000000000000000000000000000000000000000060208201525b90565b600154600160a060020a03908116903316811461131d5760006000fd5b6002805473ffffffffffffffffffffffffffffffffffffffff1916600160a060020a0384161790555b5b5050565b600154600160a060020a0390811690331681146113685760006000fd5b6127108211156113785760006000fd5b60098290555b5b5050565b6009546000906127109083025b0490505b919050565b604080516020810190915260008152905600a165627a7a72305820c88f7e9bba3ee0dbc2e6dc4ae699a2f59d03e11ef10a5f6126d85585f209f80f0029
Deployed Bytecode
0x6060604052361561019e5763ffffffff7c010000000000000000000000000000000000000000000000000000000060003504166306fdde0381146101b4578063095ea7b31461024457806318160ddd146102775780631c31f7101461029957806323b872dd146102b75780632981cceb146102f05780632c7ec2c214610311578063313ce5671461035557806335b55d981461037b57806338af3eed146103a7578063544736e6146103d357806359ba1dd5146103f75780635cb0c16f14610437578063679aefce146104595780636d5433e61461048c5780636dd43d1f146104b457806370a08231146104d257806379ba5097146105005780637ae2b5c7146105125780638da5cb5b1461053a57806394bf804d1461056657806395d89b41146105875780639bd3345714610617578063a9059cbb14610639578063abf0661f1461066c578063be9a65551461069f578063cd00ee0d146106b1578063d4ee1d90146106c3578063dd62ed3e146106ef578063e3d0799c14610723578063ea87963414610745578063f2fde38b146107d5578063f9cc2e66146107f3575b34156101a657fe5b6101b25b60006000fd5b565b005b34156101bc57fe5b6101c4610808565b60408051602080825283518183015283519192839290830191850190808383821561020a575b80518252602083111561020a57601f1990920191602091820191016101ea565b505050905090810190601f1680156102365780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b341561024c57fe5b610263600160a060020a036004351660243561083f565b604080519115158252519081900360200190f35b341561027f57fe5b6102876108bc565b60408051918252519081900360200190f35b34156102a157fe5b6101b2600160a060020a03600435166108c2565b005b34156102bf57fe5b610263600160a060020a036004358116906024351660443561090d565b604080519115158252519081900360200190f35b34156102f857fe5b6101b2600160a060020a0360043516602435610a32565b005b341561031957fe5b610263600160a060020a03600435811690602435811690604435906064359060843516610a83565b604080519115158252519081900360200190f35b341561035d57fe5b610365610c7d565b6040805160ff9092168252519081900360200190f35b341561038357fe5b61038b610c82565b60408051600160a060020a039092168252519081900360200190f35b34156103af57fe5b61038b610c91565b60408051600160a060020a039092168252519081900360200190f35b34156103db57fe5b610263610ca0565b604080519115158252519081900360200190f35b34156103ff57fe5b610263600160a060020a036004358116906024358116906044359060643516610ca9565b604080519115158252519081900360200190f35b341561043f57fe5b610287610df4565b60408051918252519081900360200190f35b341561046157fe5b610469610dfa565b6040805163ffffffff938416815291909216602082015281519081900390910190f35b341561049457fe5b610287600435602435610e02565b60408051918252519081900360200190f35b34156104bc57fe5b6101b2600160a060020a0360043516610e1d565b005b34156104da57fe5b610287600160a060020a0360043516610f15565b60408051918252519081900360200190f35b341561050857fe5b6101b2610f34565b005b341561051a57fe5b610287600435602435610fc4565b60408051918252519081900360200190f35b341561054257fe5b61038b610fdf565b60408051600160a060020a039092168252519081900360200190f35b341561056e57fe5b6101b2600435600160a060020a0360243516610fee565b005b341561058f57fe5b6101c461104d565b60408051602080825283518183015283519192839290830191850190808383821561020a575b80518252602083111561020a57601f1990920191602091820191016101ea565b505050905090810190601f1680156102365780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b341561061f57fe5b610287611084565b60408051918252519081900360200190f35b341561064157fe5b610263600160a060020a036004351660243561108a565b604080519115158252519081900360200190f35b341561067457fe5b610263600160a060020a0360043516602435611165565b604080519115158252519081900360200190f35b34156106a757fe5b6101b26111ec565b005b34156106b957fe5b6101b2611236565b005b34156106cb57fe5b61038b61127d565b60408051600160a060020a039092168252519081900360200190f35b34156106f757fe5b610287600160a060020a036004358116906024351661128c565b60408051918252519081900360200190f35b341561072b57fe5b6102876112b9565b60408051918252519081900360200190f35b341561074d57fe5b6101c46112bf565b60408051602080825283518183015283519192839290830191850190808383821561020a575b80518252602083111561020a57601f1990920191602091820191016101ea565b505050905090810190601f1680156102365780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b34156107dd57fe5b6101b2600160a060020a0360043516611300565b005b34156107fb57fe5b6101b260043561134b565b005b60408051808201909152601781527f53414e74696d656e74206e6574776f726b20746f6b656e000000000000000000602082015281565b60065460009060ff1615156108545760006000fd5b600160a060020a03338116600081815260046020908152604080832094881680845294825291829020869055815186815291517f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b9259281900390910190a35060015b5b92915050565b60055481565b600154600160a060020a0390811690331681146108df5760006000fd5b6008805473ffffffffffffffffffffffffffffffffffffffff1916600160a060020a0384161790555b5b5050565b60065460009060ff1615156109225760006000fd5b600160a060020a0384166000908152600360205260409020548290108015906109725750600160a060020a0380851660009081526004602090815260408083203390941683529290522054829010155b80156109975750600160a060020a038316600090815260036020526040902054828101115b15610a2557600160a060020a03808416600081815260036020908152604080832080548801905588851680845281842080548990039055600483528184203390961684529482529182902080548790039055815186815291519293927fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef9281900390910190a3506001610a29565b5060005b5b5b9392505050565b60075433600160a060020a03908116911614610a4e5760006000fd5b600160a060020a0382166000908152600360205260409020805482019055600a80548290039055600b8054820190555b5b5050565b600754600090819033600160a060020a03908116911614610aa45760006000fd5b610aad85611383565b905084811115610ab957fe5b600160a060020a038716600090815260036020526040902054859010801590610afb5750600160a060020a038616600090815260036020526040902054858101115b15610bc057600160a060020a03808816600081815260036020908152604080832080548b900390558a85168084528184208054888d030190556008548616845281842080548801905581519485529184019190915282018890526060820184905291851660808201527f83725a910247ba73f0cbe5d1f944bdf6e0456c94ccb822dbdd206f4bed6b045e91899189918991869189918b9060a08101835b60ff16815260200182815260200197505050505050505060405180910390a160019150610c71565b7f83725a910247ba73f0cbe5d1f944bdf6e0456c94ccb822dbdd206f4bed6b045e878787848760018a6040518088600160a060020a0316600160a060020a0316815260200187600160a060020a0316600160a060020a0316815260200186815260200185815260200184600160a060020a0316600160a060020a03168152602001836002811115610c4d57fe5b60ff16815260200182815260200197505050505050505060405180910390a1600091505b5b5b5095945050505050565b601281565b600754600160a060020a031681565b600854600160a060020a031681565b60065460ff1681565b60075460009033600160a060020a03908116911614610cc85760006000fd5b81600160a060020a031685600160a060020a031614158015610d105750600160a060020a03808616600090815260046020908152604080832093861683529290522054839010155b9050801515610da6577f83725a910247ba73f0cbe5d1f944bdf6e0456c94ccb822dbdd206f4bed6b045e858585610d4687611383565b60408051600160a060020a0380871682528581166020830152918101849052606081018390529088166080820152879060029060009060a08101835b60ff16815260200182815260200197505050505050505060405180910390a1610de9565b610db4858585600086610a83565b90508015610de957600160a060020a038086166000908152600460209081526040808320938616835292905220805484900390555b5b5b5b949350505050565b600b5481565b6001805b9091565b600081831015610e125781610e14565b825b90505b92915050565b6000805490811115610e2f5760006000fd5b600019600055600154600160a060020a039081169033168114610e525760006000fd5b6007805473ffffffffffffffffffffffffffffffffffffffff1916600160a060020a0385169081179091556000901115610f085782600160a060020a031663406a6f60306040518263ffffffff167c01000000000000000000000000000000000000000000000000000000000281526004018082600160a060020a0316600160a060020a03168152602001915050600060405180830381600087803b1515610ef657fe5b6102c65a03f11515610f0457fe5b5050505b5b5b5060008190555b5050565b600160a060020a0381166000908152600360205260409020545b919050565b600254600160a060020a039081169033168114610f515760006000fd5b600254600154604051600160a060020a0392831692909116907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e090600090a36002546001805473ffffffffffffffffffffffffffffffffffffffff1916600160a060020a039092169190911790555b5b50565b600081831115610e125781610e14565b825b90505b92915050565b600154600160a060020a031681565b60065433600160a060020a03908116610100909204161461100f5760006000fd5b60065460ff16156110205760006000fd5b6005805483019055600160a060020a03811660009081526003602052604090208054830190555b5b5b5050565b60408051808201909152600381527f53414e0000000000000000000000000000000000000000000000000000000000602082015281565b600a5481565b60065460009060ff16151561109f5760006000fd5b600160a060020a0333166000908152600360205260409020548290108015906110e15750600160a060020a038316600090815260036020526040902054828101115b1561115557600160a060020a03338116600081815260036020908152604080832080548890039055938716808352918490208054870190558351868152935191937fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef929081900390910190a35060016108b5565b5060006108b5565b5b5b92915050565b60075460009033600160a060020a039081169116146111845760006000fd5b600160a060020a0383166000908152600360205260409020548290106111555750600160a060020a038216600090815260036020526040902080548290039055600a805482019055600b8054829003905560016108b5565b5060006108b5565b5b5b92915050565b60065433600160a060020a03908116610100909204161461120d5760006000fd5b60065460ff161561121e5760006000fd5b600554600b556006805460ff191660011790555b5b5b565b60065460ff16156112475760006000fd5b600154600160a060020a0390811690331681146112645760006000fd5b600554600b556006805460ff191660011790555b5b505b565b600254600160a060020a031681565b600160a060020a038083166000908152600460209081526040808320938516835292905220545b92915050565b60095481565b6112c7611399565b5060408051808201909152600381527f53414e000000000000000000000000000000000000000000000000000000000060208201525b90565b600154600160a060020a03908116903316811461131d5760006000fd5b6002805473ffffffffffffffffffffffffffffffffffffffff1916600160a060020a0384161790555b5b5050565b600154600160a060020a0390811690331681146113685760006000fd5b6127108211156113785760006000fd5b60098290555b5b5050565b6009546000906127109083025b0490505b919050565b604080516020810190915260008152905600a165627a7a72305820c88f7e9bba3ee0dbc2e6dc4ae699a2f59d03e11ef10a5f6126d85585f209f80f0029
Swarm Source
bzzr://c88f7e9bba3ee0dbc2e6dc4ae699a2f59d03e11ef10a5f6126d85585f209f80f
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.