ERC-20
Overview
Max Total Supply
20,000,000,000 FNK
Holders
15,184
Market
Onchain Market Cap
$0.00
Circulating Supply Market Cap
-
Other Info
Token Contract (WITH 18 Decimals)
Loading...
Loading
Loading...
Loading
Loading...
Loading
# | Exchange | Pair | Price | 24H Volume | % Volume |
---|
Contract Name:
FunkeyCoin
Compiler Version
v0.4.24+commit.e67f0147
Optimization Enabled:
Yes with 200 runs
Other Settings:
default evmVersion
Contract Source Code (Solidity)
/** *Submitted for verification at Etherscan.io on 2018-08-07 */ pragma solidity ^0.4.24; // ---------------------------------------------------------------------------- // @Name SafeMath // @Desc Math operations with safety checks that throw on error // https://github.com/OpenZeppelin/zeppelin-solidity/blob/master/contracts/math/SafeMath.sol // ---------------------------------------------------------------------------- library SafeMath { function mul(uint256 a, uint256 b) internal pure returns (uint256) { if (a == 0) { return 0; } uint256 c = a * b; assert(c / a == b); return c; } function div(uint256 a, uint256 b) internal pure returns (uint256) { return a / b; } 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; } } // ---------------------------------------------------------------------------- // @title ERC20Basic // @dev Simpler version of ERC20 interface // See https://github.com/ethereum/EIPs/issues/179 // ---------------------------------------------------------------------------- contract ERC20Basic { function totalSupply() public view returns (uint256); function balanceOf(address who) public view returns (uint256); function transfer(address to, uint256 value) public returns (bool); event Transfer(address indexed from, address indexed to, uint256 value); } // ---------------------------------------------------------------------------- // @title ERC20 interface // @dev See https://github.com/ethereum/EIPs/issues/20 // ---------------------------------------------------------------------------- contract ERC20 is ERC20Basic { function allowance(address owner, address spender) public view returns (uint256); function transferFrom(address from, address to, uint256 value) public returns (bool); function approve(address spender, uint256 value) public returns (bool); event Approval(address indexed owner, address indexed spender, uint256 value); } // ---------------------------------------------------------------------------- // @title Basic token // @dev Basic version of StandardToken, with no allowances. // ---------------------------------------------------------------------------- contract BasicToken is ERC20Basic { using SafeMath for uint256; mapping(address => uint256) balances; uint256 totalSupply_; function totalSupply() public view returns (uint256) { return totalSupply_; } function transfer(address _to, uint256 _value) public returns (bool) { require(_to != address(0)); require(_value <= balances[msg.sender]); balances[msg.sender] = balances[msg.sender].sub(_value); balances[_to] = balances[_to].add(_value); emit Transfer(msg.sender, _to, _value); return true; } function balanceOf(address _owner) public view returns (uint256) { return balances[_owner]; } } // ---------------------------------------------------------------------------- // @title Ownable // @dev There are 5 role groups for FunkeyCoin [FNK]. // If an exchange is hacked, all stolen FNK in the hacker’s wallet must be incinerated and given back to its original investors. // However, incineration and reissuance of tokens for specific addresses are sensitive matters. // Therefore, it requires 4 signatures: 3 C-Level personnels and Development Team Leader. // Incineration and Reissuing tokens for specific addresses can only be used in case of hacking and cannot be used otherwise. // ---------------------------------------------------------------------------- contract Ownable { // Development Team Leader address public owner; // As the Funkeypay’s emergency standby personnel, // the person immediately blocks the transaction function of all tokens when an incident occurs. address public operator; // Has the authority to incinerate stolen tokens, // reissue tokens due to incineration, and reappoint C-Level members. address public CEO; address public CTO; address public CMO; bool public CEO_Signature; bool public CTO_Signature; bool public CMO_Signature; event OwnershipTransferred(address indexed previousOwner, address indexed newOwner); event OperatorTransferred(address indexed previousOperator, address indexed newOperator); event CEOTransferred(address indexed previousCEO, address indexed newCEO); event CTOTransferred(address indexed previousCTO, address indexed newCTO); event CMOTransferred(address indexed previousCMO, address indexed newCMO); constructor() public { owner = msg.sender; operator = 0xFd48048f8c7B900b5E5216Dc9d7bCd147c2E2efb; CEO = 0xAC9C29a58C54921e822c972ACb5EBA955B59C744; CTO = 0x60552ccF90872ad2d332DC26a5931Bc6BFb3142c; CMO = 0xff76E74fE7AC6Dcd9C151D57A71A99D89910a098; ClearCLevelSignature(); } modifier onlyOwner() { require(msg.sender == owner); _; } modifier onlyOwnerOrOperator() { require(msg.sender == owner || msg.sender == operator); _; } modifier onlyCEO() { require(msg.sender == CEO); _; } modifier onlyCTO() { require(msg.sender == CTO); _; } modifier onlyCMO() { require(msg.sender == CMO); _; } modifier AllCLevelSignature() { require(msg.sender == owner && CEO_Signature && CTO_Signature && CMO_Signature); _; } function CEOSignature() external onlyCEO { CEO_Signature = true; } function CTOSignature() external onlyCTO { CTO_Signature = true; } function CMOSignature() external onlyCMO { CMO_Signature = true; } function transferOwnership(address _newOwner) external AllCLevelSignature { require(_newOwner != address(0)); ClearCLevelSignature(); emit OwnershipTransferred(owner, _newOwner); owner = _newOwner; } function transferOperator(address _newOperator) external onlyOwner { require(_newOperator != address(0)); emit OperatorTransferred(operator, _newOperator); operator = _newOperator; } function transferCEO(address _newCEO) external AllCLevelSignature { require(_newCEO != address(0)); ClearCLevelSignature(); emit CEOTransferred(CEO, _newCEO); CEO = _newCEO; } function transferCTO(address _newCTO) external AllCLevelSignature { require(_newCTO != address(0)); ClearCLevelSignature(); emit CTOTransferred(CTO, _newCTO); CTO = _newCTO; } function transferCMO(address _newCMO) external AllCLevelSignature { require(_newCMO != address(0)); ClearCLevelSignature(); emit CMOTransferred(CMO, _newCMO); CMO = _newCMO; } function SignatureInvalidity() external onlyOwnerOrOperator { ClearCLevelSignature(); } function ClearCLevelSignature() internal { CEO_Signature = false; CTO_Signature = false; CMO_Signature = false; } } // ---------------------------------------------------------------------------- // @title BlackList // @dev Base contract which allows children to implement an emergency stop mechanism. // ---------------------------------------------------------------------------- contract BlackList is Ownable { event Lock(address indexed LockedAddress); event Unlock(address indexed UnLockedAddress); mapping( address => bool ) public blackList; modifier CheckBlackList { require(blackList[msg.sender] != true); _; } function SetLockAddress(address _lockAddress) external onlyOwnerOrOperator returns (bool) { require(_lockAddress != address(0)); require(_lockAddress != owner); require(blackList[_lockAddress] != true); blackList[_lockAddress] = true; emit Lock(_lockAddress); return true; } function UnLockAddress(address _unlockAddress) external onlyOwner returns (bool) { require(blackList[_unlockAddress] != false); blackList[_unlockAddress] = false; emit Unlock(_unlockAddress); return true; } } // ---------------------------------------------------------------------------- // @title Pausable // @dev Base contract which allows children to implement an emergency stop mechanism. // ---------------------------------------------------------------------------- contract Pausable is Ownable { event Pause(); event Unpause(); bool public paused = false; modifier whenNotPaused() { require(!paused); _; } modifier whenPaused() { require(paused); _; } function pause() onlyOwnerOrOperator whenNotPaused public { paused = true; emit Pause(); } function unpause() onlyOwner whenPaused public { paused = false; emit Unpause(); } } // ---------------------------------------------------------------------------- // @title Standard ERC20 token // @dev Implementation of the basic standard token. // https://github.com/ethereum/EIPs/issues/20 // ---------------------------------------------------------------------------- contract StandardToken is ERC20, BasicToken { mapping (address => mapping (address => uint256)) internal allowed; function transferFrom(address _from, address _to, uint256 _value) public returns (bool) { require(_to != address(0)); require(_value <= balances[_from]); require(_value <= allowed[_from][msg.sender]); balances[_from] = balances[_from].sub(_value); balances[_to] = balances[_to].add(_value); allowed[_from][msg.sender] = allowed[_from][msg.sender].sub(_value); emit Transfer(_from, _to, _value); return true; } function approve(address _spender, uint256 _value) public returns (bool) { allowed[msg.sender][_spender] = _value; emit Approval(msg.sender, _spender, _value); return true; } function allowance(address _owner, address _spender) public view returns (uint256) { return allowed[_owner][_spender]; } function increaseApproval(address _spender, uint256 _addedValue) public returns (bool) { allowed[msg.sender][_spender] = (allowed[msg.sender][_spender].add(_addedValue)); emit Approval(msg.sender, _spender, allowed[msg.sender][_spender]); return true; } function decreaseApproval(address _spender, uint256 _subtractedValue) public returns (bool) { uint256 oldValue = allowed[msg.sender][_spender]; if (_subtractedValue > oldValue) { allowed[msg.sender][_spender] = 0; } else { allowed[msg.sender][_spender] = oldValue.sub(_subtractedValue); } emit Approval(msg.sender, _spender, allowed[msg.sender][_spender]); return true; } } // ---------------------------------------------------------------------------- // @title MultiTransfer Token // @dev Only Admin // ---------------------------------------------------------------------------- contract MultiTransferToken is StandardToken, Ownable { function MultiTransfer(address[] _to, uint256[] _amount) onlyOwner public returns (bool) { require(_to.length == _amount.length); uint256 ui; uint256 amountSum = 0; for (ui = 0; ui < _to.length; ui++) { require(_to[ui] != address(0)); amountSum = amountSum.add(_amount[ui]); } require(amountSum <= balances[msg.sender]); for (ui = 0; ui < _to.length; ui++) { balances[msg.sender] = balances[msg.sender].sub(_amount[ui]); balances[_to[ui]] = balances[_to[ui]].add(_amount[ui]); emit Transfer(msg.sender, _to[ui], _amount[ui]); } return true; } } // ---------------------------------------------------------------------------- // @title Burnable Token // @dev Token that can be irreversibly burned (destroyed). // ---------------------------------------------------------------------------- contract BurnableToken is StandardToken, Ownable { event BurnAdminAmount(address indexed burner, uint256 value); event BurnHackerAmount(address indexed hacker, uint256 hackingamount, string reason); function burnAdminAmount(uint256 _value) onlyOwner public { require(_value <= balances[msg.sender]); balances[msg.sender] = balances[msg.sender].sub(_value); totalSupply_ = totalSupply_.sub(_value); emit BurnAdminAmount(msg.sender, _value); emit Transfer(msg.sender, address(0), _value); } // burnHackingAmount() Function only exists for the incineration of stolen FNK. // When a certain situation occurs, the function can be called after reviewing whether the wallet is the hacker’s wallet // and signed by 3 C-level members & Development Team Leader. function burnHackingAmount(address _hackerAddress, string _reason) AllCLevelSignature public { ClearCLevelSignature(); uint256 hackerAmount = balances[_hackerAddress]; require(hackerAmount > 0); balances[_hackerAddress] = balances[_hackerAddress].sub(hackerAmount); totalSupply_ = totalSupply_.sub(hackerAmount); emit BurnHackerAmount(_hackerAddress, hackerAmount, _reason); emit Transfer(_hackerAddress, address(0), hackerAmount); } } // ---------------------------------------------------------------------------- // @title Mintable token // @dev Simple ERC20 Token example, with mintable token creation // Based on code by TokenMarketNet: https://github.com/TokenMarketNet/ico/blob/master/contracts/MintableToken.sol // ---------------------------------------------------------------------------- contract MintableToken is StandardToken, Ownable { event Mint(address indexed to, uint256 amount); event MintFinished(); event MintRestarted(string reason); bool public mintingFinished = false; modifier canMint() { require(!mintingFinished); _; } modifier cannotMint() { require(mintingFinished); _; } function mint(address _to, uint256 _amount) onlyOwner canMint public returns (bool) { totalSupply_ = totalSupply_.add(_amount); balances[_to] = balances[_to].add(_amount); emit Mint(_to, _amount); emit Transfer(address(0), _to, _amount); return true; } function finishMinting() onlyOwner canMint public returns (bool) { mintingFinished = true; emit MintFinished(); return true; } // restartMinting() Function isn’t for just simple reissuing. // When the hacking occurs, all amount of FNK in the hacker's wallet // is incinerated and corresponding quantity of FNK will be reissued to the victims’ wallets. function restartMinting(string _reason) AllCLevelSignature cannotMint public returns (bool) { ClearCLevelSignature(); mintingFinished = false; emit MintRestarted(_reason); return true; } } // ---------------------------------------------------------------------------- // @title Pausable token // @dev StandardToken modified with pausable transfers. // ---------------------------------------------------------------------------- contract PausableToken is StandardToken, Pausable, BlackList { function transfer(address _to, uint256 _value) public whenNotPaused CheckBlackList returns (bool) { return super.transfer(_to, _value); } function transferFrom(address _from, address _to, uint256 _value) public whenNotPaused CheckBlackList returns (bool) { return super.transferFrom(_from, _to, _value); } function approve(address _spender, uint256 _value) public whenNotPaused CheckBlackList returns (bool) { return super.approve(_spender, _value); } function increaseApproval(address _spender, uint _addedValue) public whenNotPaused CheckBlackList returns (bool success) { return super.increaseApproval(_spender, _addedValue); } function decreaseApproval(address _spender, uint _subtractedValue) public whenNotPaused CheckBlackList returns (bool success) { return super.decreaseApproval(_spender, _subtractedValue); } } // ---------------------------------------------------------------------------- // @Project FunkeyCoin (FNK) // @Creator Johnson Ryu (Funkey Blockchain Core Developer) // @Source Code Verification (CEO : JK JUNG / CTO : SeungWoo KANG) // ---------------------------------------------------------------------------- contract FunkeyCoin is PausableToken, MintableToken, BurnableToken, MultiTransferToken { string public name = "FunkeyCoin"; string public symbol = "FNK"; uint256 public decimals = 18; }
Contract Security Audit
- No Contract Security Audit Submitted- Submit Audit Here
[{"constant":true,"inputs":[],"name":"mintingFinished","outputs":[{"name":"","type":"bool"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"name","outputs":[{"name":"","type":"string"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"_to","type":"address[]"},{"name":"_amount","type":"uint256[]"}],"name":"MultiTransfer","outputs":[{"name":"","type":"bool"}],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"name":"_spender","type":"address"},{"name":"_value","type":"uint256"}],"name":"approve","outputs":[{"name":"","type":"bool"}],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[],"name":"CTO_Signature","outputs":[{"name":"","type":"bool"}],"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":"CTOSignature","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"name":"_from","type":"address"},{"name":"_to","type":"address"},{"name":"_value","type":"uint256"}],"name":"transferFrom","outputs":[{"name":"","type":"bool"}],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"name":"_newOperator","type":"address"}],"name":"transferOperator","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[],"name":"decimals","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"_hackerAddress","type":"address"},{"name":"_reason","type":"string"}],"name":"burnHackingAmount","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"name":"_reason","type":"string"}],"name":"restartMinting","outputs":[{"name":"","type":"bool"}],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[],"name":"CTO","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[],"name":"unpause","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"name":"_to","type":"address"},{"name":"_amount","type":"uint256"}],"name":"mint","outputs":[{"name":"","type":"bool"}],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[{"name":"","type":"address"}],"name":"blackList","outputs":[{"name":"","type":"bool"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"operator","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"paused","outputs":[{"name":"","type":"bool"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"_spender","type":"address"},{"name":"_subtractedValue","type":"uint256"}],"name":"decreaseApproval","outputs":[{"name":"success","type":"bool"}],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"name":"_newCMO","type":"address"}],"name":"transferCMO","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[],"name":"CMO","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[],"name":"CEOSignature","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[{"name":"_owner","type":"address"}],"name":"balanceOf","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"_value","type":"uint256"}],"name":"burnAdminAmount","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"name":"_newCTO","type":"address"}],"name":"transferCTO","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[],"name":"finishMinting","outputs":[{"name":"","type":"bool"}],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[],"name":"pause","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[],"name":"CMOSignature","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[],"name":"owner","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"symbol","outputs":[{"name":"","type":"string"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"CEO","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"view","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":false,"inputs":[],"name":"SignatureInvalidity","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"name":"_unlockAddress","type":"address"}],"name":"UnLockAddress","outputs":[{"name":"","type":"bool"}],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"name":"_lockAddress","type":"address"}],"name":"SetLockAddress","outputs":[{"name":"","type":"bool"}],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"name":"_newCEO","type":"address"}],"name":"transferCEO","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"name":"_spender","type":"address"},{"name":"_addedValue","type":"uint256"}],"name":"increaseApproval","outputs":[{"name":"success","type":"bool"}],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[{"name":"_owner","type":"address"},{"name":"_spender","type":"address"}],"name":"allowance","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"CEO_Signature","outputs":[{"name":"","type":"bool"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"_newOwner","type":"address"}],"name":"transferOwnership","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[],"name":"CMO_Signature","outputs":[{"name":"","type":"bool"}],"payable":false,"stateMutability":"view","type":"function"},{"anonymous":false,"inputs":[{"indexed":true,"name":"burner","type":"address"},{"indexed":false,"name":"value","type":"uint256"}],"name":"BurnAdminAmount","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"name":"hacker","type":"address"},{"indexed":false,"name":"hackingamount","type":"uint256"},{"indexed":false,"name":"reason","type":"string"}],"name":"BurnHackerAmount","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"name":"to","type":"address"},{"indexed":false,"name":"amount","type":"uint256"}],"name":"Mint","type":"event"},{"anonymous":false,"inputs":[],"name":"MintFinished","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"name":"reason","type":"string"}],"name":"MintRestarted","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"name":"LockedAddress","type":"address"}],"name":"Lock","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"name":"UnLockedAddress","type":"address"}],"name":"Unlock","type":"event"},{"anonymous":false,"inputs":[],"name":"Pause","type":"event"},{"anonymous":false,"inputs":[],"name":"Unpause","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"name":"previousOwner","type":"address"},{"indexed":true,"name":"newOwner","type":"address"}],"name":"OwnershipTransferred","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"name":"previousOperator","type":"address"},{"indexed":true,"name":"newOperator","type":"address"}],"name":"OperatorTransferred","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"name":"previousCEO","type":"address"},{"indexed":true,"name":"newCEO","type":"address"}],"name":"CEOTransferred","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"name":"previousCTO","type":"address"},{"indexed":true,"name":"newCTO","type":"address"}],"name":"CTOTransferred","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"name":"previousCMO","type":"address"},{"indexed":true,"name":"newCMO","type":"address"}],"name":"CMOTransferred","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
6007805460b860020a60ff02191690556009805460ff1916905560c0604052600a60808190527f46756e6b6579436f696e0000000000000000000000000000000000000000000060a09081526200005891908162000160565b506040805180820190915260038082527f464e4b000000000000000000000000000000000000000000000000000000000060209092019182526200009f91600b9162000160565b506012600c5560038054600160a060020a0319908116331790915560048054821673fd48048f8c7b900b5e5216dc9d7bcd147c2e2efb17905560058054821673ac9c29a58c54921e822c972acb5eba955b59c7441790556006805482167360552ccf90872ad2d332dc26a5931bc6bfb3142c1790556007805490911673ff76e74fe7ac6dcd9c151d57a71a99d89910a098179055620001466401000000006200014c810204565b62000205565b6007805460a060020a62ffffff0219169055565b828054600181600116156101000203166002900490600052602060002090601f016020900481019282601f10620001a357805160ff1916838001178555620001d3565b82800160010185558215620001d3579182015b82811115620001d3578251825591602001919060010190620001b6565b50620001e1929150620001e5565b5090565b6200020291905b80821115620001e15760008155600101620001ec565b90565b611eb280620002156000396000f3006080604052600436106101f85763ffffffff7c010000000000000000000000000000000000000000000000000000000060003504166305d2035b81146101fd57806306fdde03146102265780630896937e146102b0578063095ea7b31461033e57806313163d531461036257806318160ddd146103775780631f30edc71461039e57806323b872dd146103b557806329605e77146103df578063313ce567146104005780633149694a146104155780633b94b0121461047c5780633d01bdec146104d55780633f4ba83a1461050657806340c10f191461051b5780634838d1651461053f578063570ca735146105605780635c975abb14610575578063661884631461058a578063691b7ce0146105ae5780636ad35d1a146105cf5780636d8f01d1146105e457806370a08231146105f957806376227f3b1461061a578063777dff4a146106325780637d64bcb4146106535780638456cb591461066857806387d2544d1461067d5780638da5cb5b1461069257806395d89b41146106a7578063a1088571146106bc578063a9059cbb146106d1578063c0a42d91146106f5578063c201df971461070a578063c286f3d91461072b578063ca965c3f1461074c578063d73dd6231461076d578063dd62ed3e14610791578063df2df29a146107b8578063f2fde38b146107cd578063f4f572ae146107ee575b600080fd5b34801561020957600080fd5b50610212610803565b604080519115158252519081900360200190f35b34801561023257600080fd5b5061023b61080c565b6040805160208082528351818301528351919283929083019185019080838360005b8381101561027557818101518382015260200161025d565b50505050905090810190601f1680156102a25780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b3480156102bc57600080fd5b506040805160206004803580820135838102808601850190965280855261021295369593946024949385019291829185019084908082843750506040805187358901803560208181028481018201909552818452989b9a99890198929750908201955093508392508501908490808284375094975061089a9650505050505050565b34801561034a57600080fd5b50610212600160a060020a0360043516602435610ab9565b34801561036e57600080fd5b50610212610b06565b34801561038357600080fd5b5061038c610b16565b60408051918252519081900360200190f35b3480156103aa57600080fd5b506103b3610b1c565b005b3480156103c157600080fd5b50610212600160a060020a0360043581169060243516604435610b5a565b3480156103eb57600080fd5b506103b3600160a060020a0360043516610ba9565b34801561040c57600080fd5b5061038c610c3e565b34801561042157600080fd5b5060408051602060046024803582810135601f81018590048502860185019096528585526103b3958335600160a060020a0316953695604494919390910191908190840183828082843750949750610c449650505050505050565b34801561048857600080fd5b506040805160206004803580820135601f8101849004840285018401909552848452610212943694929360249392840191908190840183828082843750949750610e079650505050505050565b3480156104e157600080fd5b506104ea610f25565b60408051600160a060020a039092168252519081900360200190f35b34801561051257600080fd5b506103b3610f34565b34801561052757600080fd5b50610212600160a060020a0360043516602435610faf565b34801561054b57600080fd5b50610212600160a060020a03600435166110a0565b34801561056c57600080fd5b506104ea6110b5565b34801561058157600080fd5b506102126110c4565b34801561059657600080fd5b50610212600160a060020a03600435166024356110d4565b3480156105ba57600080fd5b506103b3600160a060020a036004351661111a565b3480156105db57600080fd5b506104ea6111f7565b3480156105f057600080fd5b506103b3611206565b34801561060557600080fd5b5061038c600160a060020a0360043516611243565b34801561062657600080fd5b506103b360043561125e565b34801561063e57600080fd5b506103b3600160a060020a0360043516611336565b34801561065f57600080fd5b50610212611414565b34801561067457600080fd5b506103b361147a565b34801561068957600080fd5b506103b3611511565b34801561069e57600080fd5b506104ea611550565b3480156106b357600080fd5b5061023b61155f565b3480156106c857600080fd5b506104ea6115ba565b3480156106dd57600080fd5b50610212600160a060020a03600435166024356115c9565b34801561070157600080fd5b506103b361160f565b34801561071657600080fd5b50610212600160a060020a0360043516611647565b34801561073757600080fd5b50610212600160a060020a03600435166116d6565b34801561075857600080fd5b506103b3600160a060020a03600435166117b3565b34801561077957600080fd5b50610212600160a060020a0360043516602435611891565b34801561079d57600080fd5b5061038c600160a060020a03600435811690602435166118d7565b3480156107c457600080fd5b50610212611902565b3480156107d957600080fd5b506103b3600160a060020a0360043516611912565b3480156107fa57600080fd5b506102126119f0565b60095460ff1681565b600a805460408051602060026001851615610100026000190190941693909304601f810184900484028201840190925281815292918301828280156108925780601f1061086757610100808354040283529160200191610892565b820191906000526020600020905b81548152906001019060200180831161087557829003601f168201915b505050505081565b60035460009081908190600160a060020a031633146108b857600080fd5b83518551146108c657600080fd5b5060009050805b845182101561093a5784516000908690849081106108e757fe5b60209081029091010151600160a060020a0316141561090557600080fd5b61092d848381518110151561091657fe5b60209081029091010151829063ffffffff611a0016565b60019092019190506108cd565b3360009081526020819052604090205481111561095657600080fd5b600091505b8451821015610aae5761099c848381518110151561097557fe5b6020908102909101810151336000908152918290526040909120549063ffffffff611a0f16565b336000908152602081905260409020558351610a08908590849081106109be57fe5b9060200190602002015160008088868151811015156109d957fe5b6020908102909101810151600160a060020a03168252810191909152604001600020549063ffffffff611a0016565b6000808785815181101515610a1957fe5b6020908102909101810151600160a060020a03168252810191909152604001600020558451859083908110610a4a57fe5b90602001906020020151600160a060020a031633600160a060020a0316600080516020611e678339815191528685815181101515610a8457fe5b906020019060200201516040518082815260200191505060405180910390a360019091019061095b565b506001949350505050565b60075460009060b860020a900460ff1615610ad357600080fd5b3360009081526008602052604090205460ff16151560011415610af557600080fd5b610aff8383611a21565b9392505050565b60075460a860020a900460ff1681565b60015490565b600654600160a060020a03163314610b3357600080fd5b6007805475ff000000000000000000000000000000000000000000191660a860020a179055565b60075460009060b860020a900460ff1615610b7457600080fd5b3360009081526008602052604090205460ff16151560011415610b9657600080fd5b610ba1848484611a87565b949350505050565b600354600160a060020a03163314610bc057600080fd5b600160a060020a0381161515610bd557600080fd5b600454604051600160a060020a038084169216907f74da04524d50c64947f5dd5381ef1a4dca5cba8ed1d816243f9e48aa0b5617ed90600090a36004805473ffffffffffffffffffffffffffffffffffffffff1916600160a060020a0392909216919091179055565b600c5481565b600354600090600160a060020a031633148015610c6a575060075460a060020a900460ff165b8015610c7f575060075460a860020a900460ff165b8015610c94575060075460b060020a900460ff165b1515610c9f57600080fd5b610ca7611bec565b50600160a060020a038216600090815260208190526040812054908111610ccd57600080fd5b600160a060020a038316600090815260208190526040902054610cf6908263ffffffff611a0f16565b600160a060020a038416600090815260208190526040902055600154610d22908263ffffffff611a0f16565b60018190555082600160a060020a03167fde0e310681a5e93c1ec78efb4af9297f25958da6509e19ea1cd910ff5682241182846040518083815260200180602001828103825283818151815260200191508051906020019080838360005b83811015610d98578181015183820152602001610d80565b50505050905090810190601f168015610dc55780820380516001836020036101000a031916815260200191505b50935050505060405180910390a2604080518281529051600091600160a060020a03861691600080516020611e678339815191529181900360200190a3505050565b600354600090600160a060020a031633148015610e2d575060075460a060020a900460ff165b8015610e42575060075460a860020a900460ff165b8015610e57575060075460b060020a900460ff165b1515610e6257600080fd5b60095460ff161515610e7357600080fd5b610e7b611bec565b6009805460ff1916905560408051602080825284518183015284517f10976a4b897e0d0fb1080bf9cfbbc7ab11f7a47a7fdcc06622e3eaeba3b5b2d6938693928392918301919085019080838360005b83811015610ee3578181015183820152602001610ecb565b50505050905090810190601f168015610f105780820380516001836020036101000a031916815260200191505b509250505060405180910390a1506001919050565b600654600160a060020a031681565b600354600160a060020a03163314610f4b57600080fd5b60075460b860020a900460ff161515610f6357600080fd5b6007805477ff0000000000000000000000000000000000000000000000191690556040517f7805862f689e2f13df9f062ff482ad3ad112aca9e0847911ed832e158c525b3390600090a1565b600354600090600160a060020a03163314610fc957600080fd5b60095460ff1615610fd957600080fd5b600154610fec908363ffffffff611a0016565b600155600160a060020a038316600090815260208190526040902054611018908363ffffffff611a0016565b600160a060020a03841660008181526020818152604091829020939093558051858152905191927f0f6798a560793a54c3bcfe86a93cde1e73087d944c0ea20544137d412139688592918290030190a2604080518381529051600160a060020a03851691600091600080516020611e678339815191529181900360200190a350600192915050565b60086020526000908152604090205460ff1681565b600454600160a060020a031681565b60075460b860020a900460ff1681565b60075460009060b860020a900460ff16156110ee57600080fd5b3360009081526008602052604090205460ff1615156001141561111057600080fd5b610aff8383611c0e565b600354600160a060020a03163314801561113d575060075460a060020a900460ff165b8015611152575060075460a860020a900460ff165b8015611167575060075460b060020a900460ff165b151561117257600080fd5b600160a060020a038116151561118757600080fd5b61118f611bec565b600754604051600160a060020a038084169216907e2b20d8c89d608c97fc024bbfa40c4e298e725bed5a8e08652360b0953c52ed90600090a36007805473ffffffffffffffffffffffffffffffffffffffff1916600160a060020a0392909216919091179055565b600754600160a060020a031681565b600554600160a060020a0316331461121d57600080fd5b6007805474ff0000000000000000000000000000000000000000191660a060020a179055565b600160a060020a031660009081526020819052604090205490565b600354600160a060020a0316331461127557600080fd5b3360009081526020819052604090205481111561129157600080fd5b336000908152602081905260409020546112b1908263ffffffff611a0f16565b336000908152602081905260409020556001546112d4908263ffffffff611a0f16565b60015560408051828152905133917fa0f3dea10c8bf26d7f1b6b0cf33166195f48616c562c681b49eaaa2423894d00919081900360200190a26040805182815290516000913391600080516020611e678339815191529181900360200190a350565b600354600160a060020a031633148015611359575060075460a060020a900460ff165b801561136e575060075460a860020a900460ff165b8015611383575060075460b060020a900460ff165b151561138e57600080fd5b600160a060020a03811615156113a357600080fd5b6113ab611bec565b600654604051600160a060020a038084169216907f95dff85f3e3051b50517bc86cda4980627b13b2c3545fff72e4657b267a2d14990600090a36006805473ffffffffffffffffffffffffffffffffffffffff1916600160a060020a0392909216919091179055565b600354600090600160a060020a0316331461142e57600080fd5b60095460ff161561143e57600080fd5b6009805460ff191660011790556040517fae5184fba832cb2b1f702aca6117b8d265eaf03ad33eb133f19dde0f5920fa0890600090a150600190565b600354600160a060020a031633148061149d5750600454600160a060020a031633145b15156114a857600080fd5b60075460b860020a900460ff16156114bf57600080fd5b6007805477ff0000000000000000000000000000000000000000000000191660b860020a1790556040517f6985a02210a168e66602d3235cb6db0e70f92b3ba4d376a33c0f3d9434bff62590600090a1565b600754600160a060020a0316331461152857600080fd5b6007805476ff00000000000000000000000000000000000000000000191660b060020a179055565b600354600160a060020a031681565b600b805460408051602060026001851615610100026000190190941693909304601f810184900484028201840190925281815292918301828280156108925780601f1061086757610100808354040283529160200191610892565b600554600160a060020a031681565b60075460009060b860020a900460ff16156115e357600080fd5b3360009081526008602052604090205460ff1615156001141561160557600080fd5b610aff8383611cfe565b600354600160a060020a03163314806116325750600454600160a060020a031633145b151561163d57600080fd5b611645611bec565b565b600354600090600160a060020a0316331461166157600080fd5b600160a060020a03821660009081526008602052604090205460ff16151561168857600080fd5b600160a060020a038216600081815260086020526040808220805460ff19169055517f0be774851955c26a1d6a32b13b020663a069006b4a3b643ff0b809d3182605729190a2506001919050565b600354600090600160a060020a03163314806116fc5750600454600160a060020a031633145b151561170757600080fd5b600160a060020a038216151561171c57600080fd5b600354600160a060020a038381169116141561173757600080fd5b600160a060020a03821660009081526008602052604090205460ff1615156001141561176257600080fd5b600160a060020a038216600081815260086020526040808220805460ff19166001179055517fc1b5f12cea7c200ad495a43bf2d4c7ba1a753343c06c339093937849de84d9139190a2506001919050565b600354600160a060020a0316331480156117d6575060075460a060020a900460ff165b80156117eb575060075460a860020a900460ff165b8015611800575060075460b060020a900460ff165b151561180b57600080fd5b600160a060020a038116151561182057600080fd5b611828611bec565b600554604051600160a060020a038084169216907f9d05f170f1d545b1aa21c4a4f79f17ff737f5f020ea1b333d88f29f0bbfa9fc690600090a36005805473ffffffffffffffffffffffffffffffffffffffff1916600160a060020a0392909216919091179055565b60075460009060b860020a900460ff16156118ab57600080fd5b3360009081526008602052604090205460ff161515600114156118cd57600080fd5b610aff8383611dcd565b600160a060020a03918216600090815260026020908152604080832093909416825291909152205490565b60075460a060020a900460ff1681565b600354600160a060020a031633148015611935575060075460a060020a900460ff165b801561194a575060075460a860020a900460ff165b801561195f575060075460b060020a900460ff165b151561196a57600080fd5b600160a060020a038116151561197f57600080fd5b611987611bec565b600354604051600160a060020a038084169216907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e090600090a36003805473ffffffffffffffffffffffffffffffffffffffff1916600160a060020a0392909216919091179055565b60075460b060020a900460ff1681565b600082820183811015610aff57fe5b600082821115611a1b57fe5b50900390565b336000818152600260209081526040808320600160a060020a038716808552908352818420869055815186815291519394909390927f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925928290030190a350600192915050565b6000600160a060020a0383161515611a9e57600080fd5b600160a060020a038416600090815260208190526040902054821115611ac357600080fd5b600160a060020a0384166000908152600260209081526040808320338452909152902054821115611af357600080fd5b600160a060020a038416600090815260208190526040902054611b1c908363ffffffff611a0f16565b600160a060020a038086166000908152602081905260408082209390935590851681522054611b51908363ffffffff611a0016565b600160a060020a03808516600090815260208181526040808320949094559187168152600282528281203382529091522054611b93908363ffffffff611a0f16565b600160a060020a0380861660008181526002602090815260408083203384528252918290209490945580518681529051928716939192600080516020611e67833981519152929181900390910190a35060019392505050565b6007805476ffffff000000000000000000000000000000000000000019169055565b336000908152600260209081526040808320600160a060020a038616845290915281205480831115611c6357336000908152600260209081526040808320600160a060020a0388168452909152812055611c98565b611c73818463ffffffff611a0f16565b336000908152600260209081526040808320600160a060020a03891684529091529020555b336000818152600260209081526040808320600160a060020a0389168085529083529281902054815190815290519293927f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925929181900390910190a35060019392505050565b6000600160a060020a0383161515611d1557600080fd5b33600090815260208190526040902054821115611d3157600080fd5b33600090815260208190526040902054611d51908363ffffffff611a0f16565b3360009081526020819052604080822092909255600160a060020a03851681522054611d83908363ffffffff611a0016565b600160a060020a03841660008181526020818152604091829020939093558051858152905191923392600080516020611e678339815191529281900390910190a350600192915050565b336000908152600260209081526040808320600160a060020a0386168452909152812054611e01908363ffffffff611a0016565b336000818152600260209081526040808320600160a060020a0389168085529083529281902085905580519485525191937f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925929081900390910190a3506001929150505600ddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3efa165627a7a72305820d5b828b0312df777a048595bbc4893621aae134a2132658614c899c9a8f78bba0029
Deployed Bytecode
0x6080604052600436106101f85763ffffffff7c010000000000000000000000000000000000000000000000000000000060003504166305d2035b81146101fd57806306fdde03146102265780630896937e146102b0578063095ea7b31461033e57806313163d531461036257806318160ddd146103775780631f30edc71461039e57806323b872dd146103b557806329605e77146103df578063313ce567146104005780633149694a146104155780633b94b0121461047c5780633d01bdec146104d55780633f4ba83a1461050657806340c10f191461051b5780634838d1651461053f578063570ca735146105605780635c975abb14610575578063661884631461058a578063691b7ce0146105ae5780636ad35d1a146105cf5780636d8f01d1146105e457806370a08231146105f957806376227f3b1461061a578063777dff4a146106325780637d64bcb4146106535780638456cb591461066857806387d2544d1461067d5780638da5cb5b1461069257806395d89b41146106a7578063a1088571146106bc578063a9059cbb146106d1578063c0a42d91146106f5578063c201df971461070a578063c286f3d91461072b578063ca965c3f1461074c578063d73dd6231461076d578063dd62ed3e14610791578063df2df29a146107b8578063f2fde38b146107cd578063f4f572ae146107ee575b600080fd5b34801561020957600080fd5b50610212610803565b604080519115158252519081900360200190f35b34801561023257600080fd5b5061023b61080c565b6040805160208082528351818301528351919283929083019185019080838360005b8381101561027557818101518382015260200161025d565b50505050905090810190601f1680156102a25780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b3480156102bc57600080fd5b506040805160206004803580820135838102808601850190965280855261021295369593946024949385019291829185019084908082843750506040805187358901803560208181028481018201909552818452989b9a99890198929750908201955093508392508501908490808284375094975061089a9650505050505050565b34801561034a57600080fd5b50610212600160a060020a0360043516602435610ab9565b34801561036e57600080fd5b50610212610b06565b34801561038357600080fd5b5061038c610b16565b60408051918252519081900360200190f35b3480156103aa57600080fd5b506103b3610b1c565b005b3480156103c157600080fd5b50610212600160a060020a0360043581169060243516604435610b5a565b3480156103eb57600080fd5b506103b3600160a060020a0360043516610ba9565b34801561040c57600080fd5b5061038c610c3e565b34801561042157600080fd5b5060408051602060046024803582810135601f81018590048502860185019096528585526103b3958335600160a060020a0316953695604494919390910191908190840183828082843750949750610c449650505050505050565b34801561048857600080fd5b506040805160206004803580820135601f8101849004840285018401909552848452610212943694929360249392840191908190840183828082843750949750610e079650505050505050565b3480156104e157600080fd5b506104ea610f25565b60408051600160a060020a039092168252519081900360200190f35b34801561051257600080fd5b506103b3610f34565b34801561052757600080fd5b50610212600160a060020a0360043516602435610faf565b34801561054b57600080fd5b50610212600160a060020a03600435166110a0565b34801561056c57600080fd5b506104ea6110b5565b34801561058157600080fd5b506102126110c4565b34801561059657600080fd5b50610212600160a060020a03600435166024356110d4565b3480156105ba57600080fd5b506103b3600160a060020a036004351661111a565b3480156105db57600080fd5b506104ea6111f7565b3480156105f057600080fd5b506103b3611206565b34801561060557600080fd5b5061038c600160a060020a0360043516611243565b34801561062657600080fd5b506103b360043561125e565b34801561063e57600080fd5b506103b3600160a060020a0360043516611336565b34801561065f57600080fd5b50610212611414565b34801561067457600080fd5b506103b361147a565b34801561068957600080fd5b506103b3611511565b34801561069e57600080fd5b506104ea611550565b3480156106b357600080fd5b5061023b61155f565b3480156106c857600080fd5b506104ea6115ba565b3480156106dd57600080fd5b50610212600160a060020a03600435166024356115c9565b34801561070157600080fd5b506103b361160f565b34801561071657600080fd5b50610212600160a060020a0360043516611647565b34801561073757600080fd5b50610212600160a060020a03600435166116d6565b34801561075857600080fd5b506103b3600160a060020a03600435166117b3565b34801561077957600080fd5b50610212600160a060020a0360043516602435611891565b34801561079d57600080fd5b5061038c600160a060020a03600435811690602435166118d7565b3480156107c457600080fd5b50610212611902565b3480156107d957600080fd5b506103b3600160a060020a0360043516611912565b3480156107fa57600080fd5b506102126119f0565b60095460ff1681565b600a805460408051602060026001851615610100026000190190941693909304601f810184900484028201840190925281815292918301828280156108925780601f1061086757610100808354040283529160200191610892565b820191906000526020600020905b81548152906001019060200180831161087557829003601f168201915b505050505081565b60035460009081908190600160a060020a031633146108b857600080fd5b83518551146108c657600080fd5b5060009050805b845182101561093a5784516000908690849081106108e757fe5b60209081029091010151600160a060020a0316141561090557600080fd5b61092d848381518110151561091657fe5b60209081029091010151829063ffffffff611a0016565b60019092019190506108cd565b3360009081526020819052604090205481111561095657600080fd5b600091505b8451821015610aae5761099c848381518110151561097557fe5b6020908102909101810151336000908152918290526040909120549063ffffffff611a0f16565b336000908152602081905260409020558351610a08908590849081106109be57fe5b9060200190602002015160008088868151811015156109d957fe5b6020908102909101810151600160a060020a03168252810191909152604001600020549063ffffffff611a0016565b6000808785815181101515610a1957fe5b6020908102909101810151600160a060020a03168252810191909152604001600020558451859083908110610a4a57fe5b90602001906020020151600160a060020a031633600160a060020a0316600080516020611e678339815191528685815181101515610a8457fe5b906020019060200201516040518082815260200191505060405180910390a360019091019061095b565b506001949350505050565b60075460009060b860020a900460ff1615610ad357600080fd5b3360009081526008602052604090205460ff16151560011415610af557600080fd5b610aff8383611a21565b9392505050565b60075460a860020a900460ff1681565b60015490565b600654600160a060020a03163314610b3357600080fd5b6007805475ff000000000000000000000000000000000000000000191660a860020a179055565b60075460009060b860020a900460ff1615610b7457600080fd5b3360009081526008602052604090205460ff16151560011415610b9657600080fd5b610ba1848484611a87565b949350505050565b600354600160a060020a03163314610bc057600080fd5b600160a060020a0381161515610bd557600080fd5b600454604051600160a060020a038084169216907f74da04524d50c64947f5dd5381ef1a4dca5cba8ed1d816243f9e48aa0b5617ed90600090a36004805473ffffffffffffffffffffffffffffffffffffffff1916600160a060020a0392909216919091179055565b600c5481565b600354600090600160a060020a031633148015610c6a575060075460a060020a900460ff165b8015610c7f575060075460a860020a900460ff165b8015610c94575060075460b060020a900460ff165b1515610c9f57600080fd5b610ca7611bec565b50600160a060020a038216600090815260208190526040812054908111610ccd57600080fd5b600160a060020a038316600090815260208190526040902054610cf6908263ffffffff611a0f16565b600160a060020a038416600090815260208190526040902055600154610d22908263ffffffff611a0f16565b60018190555082600160a060020a03167fde0e310681a5e93c1ec78efb4af9297f25958da6509e19ea1cd910ff5682241182846040518083815260200180602001828103825283818151815260200191508051906020019080838360005b83811015610d98578181015183820152602001610d80565b50505050905090810190601f168015610dc55780820380516001836020036101000a031916815260200191505b50935050505060405180910390a2604080518281529051600091600160a060020a03861691600080516020611e678339815191529181900360200190a3505050565b600354600090600160a060020a031633148015610e2d575060075460a060020a900460ff165b8015610e42575060075460a860020a900460ff165b8015610e57575060075460b060020a900460ff165b1515610e6257600080fd5b60095460ff161515610e7357600080fd5b610e7b611bec565b6009805460ff1916905560408051602080825284518183015284517f10976a4b897e0d0fb1080bf9cfbbc7ab11f7a47a7fdcc06622e3eaeba3b5b2d6938693928392918301919085019080838360005b83811015610ee3578181015183820152602001610ecb565b50505050905090810190601f168015610f105780820380516001836020036101000a031916815260200191505b509250505060405180910390a1506001919050565b600654600160a060020a031681565b600354600160a060020a03163314610f4b57600080fd5b60075460b860020a900460ff161515610f6357600080fd5b6007805477ff0000000000000000000000000000000000000000000000191690556040517f7805862f689e2f13df9f062ff482ad3ad112aca9e0847911ed832e158c525b3390600090a1565b600354600090600160a060020a03163314610fc957600080fd5b60095460ff1615610fd957600080fd5b600154610fec908363ffffffff611a0016565b600155600160a060020a038316600090815260208190526040902054611018908363ffffffff611a0016565b600160a060020a03841660008181526020818152604091829020939093558051858152905191927f0f6798a560793a54c3bcfe86a93cde1e73087d944c0ea20544137d412139688592918290030190a2604080518381529051600160a060020a03851691600091600080516020611e678339815191529181900360200190a350600192915050565b60086020526000908152604090205460ff1681565b600454600160a060020a031681565b60075460b860020a900460ff1681565b60075460009060b860020a900460ff16156110ee57600080fd5b3360009081526008602052604090205460ff1615156001141561111057600080fd5b610aff8383611c0e565b600354600160a060020a03163314801561113d575060075460a060020a900460ff165b8015611152575060075460a860020a900460ff165b8015611167575060075460b060020a900460ff165b151561117257600080fd5b600160a060020a038116151561118757600080fd5b61118f611bec565b600754604051600160a060020a038084169216907e2b20d8c89d608c97fc024bbfa40c4e298e725bed5a8e08652360b0953c52ed90600090a36007805473ffffffffffffffffffffffffffffffffffffffff1916600160a060020a0392909216919091179055565b600754600160a060020a031681565b600554600160a060020a0316331461121d57600080fd5b6007805474ff0000000000000000000000000000000000000000191660a060020a179055565b600160a060020a031660009081526020819052604090205490565b600354600160a060020a0316331461127557600080fd5b3360009081526020819052604090205481111561129157600080fd5b336000908152602081905260409020546112b1908263ffffffff611a0f16565b336000908152602081905260409020556001546112d4908263ffffffff611a0f16565b60015560408051828152905133917fa0f3dea10c8bf26d7f1b6b0cf33166195f48616c562c681b49eaaa2423894d00919081900360200190a26040805182815290516000913391600080516020611e678339815191529181900360200190a350565b600354600160a060020a031633148015611359575060075460a060020a900460ff165b801561136e575060075460a860020a900460ff165b8015611383575060075460b060020a900460ff165b151561138e57600080fd5b600160a060020a03811615156113a357600080fd5b6113ab611bec565b600654604051600160a060020a038084169216907f95dff85f3e3051b50517bc86cda4980627b13b2c3545fff72e4657b267a2d14990600090a36006805473ffffffffffffffffffffffffffffffffffffffff1916600160a060020a0392909216919091179055565b600354600090600160a060020a0316331461142e57600080fd5b60095460ff161561143e57600080fd5b6009805460ff191660011790556040517fae5184fba832cb2b1f702aca6117b8d265eaf03ad33eb133f19dde0f5920fa0890600090a150600190565b600354600160a060020a031633148061149d5750600454600160a060020a031633145b15156114a857600080fd5b60075460b860020a900460ff16156114bf57600080fd5b6007805477ff0000000000000000000000000000000000000000000000191660b860020a1790556040517f6985a02210a168e66602d3235cb6db0e70f92b3ba4d376a33c0f3d9434bff62590600090a1565b600754600160a060020a0316331461152857600080fd5b6007805476ff00000000000000000000000000000000000000000000191660b060020a179055565b600354600160a060020a031681565b600b805460408051602060026001851615610100026000190190941693909304601f810184900484028201840190925281815292918301828280156108925780601f1061086757610100808354040283529160200191610892565b600554600160a060020a031681565b60075460009060b860020a900460ff16156115e357600080fd5b3360009081526008602052604090205460ff1615156001141561160557600080fd5b610aff8383611cfe565b600354600160a060020a03163314806116325750600454600160a060020a031633145b151561163d57600080fd5b611645611bec565b565b600354600090600160a060020a0316331461166157600080fd5b600160a060020a03821660009081526008602052604090205460ff16151561168857600080fd5b600160a060020a038216600081815260086020526040808220805460ff19169055517f0be774851955c26a1d6a32b13b020663a069006b4a3b643ff0b809d3182605729190a2506001919050565b600354600090600160a060020a03163314806116fc5750600454600160a060020a031633145b151561170757600080fd5b600160a060020a038216151561171c57600080fd5b600354600160a060020a038381169116141561173757600080fd5b600160a060020a03821660009081526008602052604090205460ff1615156001141561176257600080fd5b600160a060020a038216600081815260086020526040808220805460ff19166001179055517fc1b5f12cea7c200ad495a43bf2d4c7ba1a753343c06c339093937849de84d9139190a2506001919050565b600354600160a060020a0316331480156117d6575060075460a060020a900460ff165b80156117eb575060075460a860020a900460ff165b8015611800575060075460b060020a900460ff165b151561180b57600080fd5b600160a060020a038116151561182057600080fd5b611828611bec565b600554604051600160a060020a038084169216907f9d05f170f1d545b1aa21c4a4f79f17ff737f5f020ea1b333d88f29f0bbfa9fc690600090a36005805473ffffffffffffffffffffffffffffffffffffffff1916600160a060020a0392909216919091179055565b60075460009060b860020a900460ff16156118ab57600080fd5b3360009081526008602052604090205460ff161515600114156118cd57600080fd5b610aff8383611dcd565b600160a060020a03918216600090815260026020908152604080832093909416825291909152205490565b60075460a060020a900460ff1681565b600354600160a060020a031633148015611935575060075460a060020a900460ff165b801561194a575060075460a860020a900460ff165b801561195f575060075460b060020a900460ff165b151561196a57600080fd5b600160a060020a038116151561197f57600080fd5b611987611bec565b600354604051600160a060020a038084169216907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e090600090a36003805473ffffffffffffffffffffffffffffffffffffffff1916600160a060020a0392909216919091179055565b60075460b060020a900460ff1681565b600082820183811015610aff57fe5b600082821115611a1b57fe5b50900390565b336000818152600260209081526040808320600160a060020a038716808552908352818420869055815186815291519394909390927f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925928290030190a350600192915050565b6000600160a060020a0383161515611a9e57600080fd5b600160a060020a038416600090815260208190526040902054821115611ac357600080fd5b600160a060020a0384166000908152600260209081526040808320338452909152902054821115611af357600080fd5b600160a060020a038416600090815260208190526040902054611b1c908363ffffffff611a0f16565b600160a060020a038086166000908152602081905260408082209390935590851681522054611b51908363ffffffff611a0016565b600160a060020a03808516600090815260208181526040808320949094559187168152600282528281203382529091522054611b93908363ffffffff611a0f16565b600160a060020a0380861660008181526002602090815260408083203384528252918290209490945580518681529051928716939192600080516020611e67833981519152929181900390910190a35060019392505050565b6007805476ffffff000000000000000000000000000000000000000019169055565b336000908152600260209081526040808320600160a060020a038616845290915281205480831115611c6357336000908152600260209081526040808320600160a060020a0388168452909152812055611c98565b611c73818463ffffffff611a0f16565b336000908152600260209081526040808320600160a060020a03891684529091529020555b336000818152600260209081526040808320600160a060020a0389168085529083529281902054815190815290519293927f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925929181900390910190a35060019392505050565b6000600160a060020a0383161515611d1557600080fd5b33600090815260208190526040902054821115611d3157600080fd5b33600090815260208190526040902054611d51908363ffffffff611a0f16565b3360009081526020819052604080822092909255600160a060020a03851681522054611d83908363ffffffff611a0016565b600160a060020a03841660008181526020818152604091829020939093558051858152905191923392600080516020611e678339815191529281900390910190a350600192915050565b336000908152600260209081526040808320600160a060020a0386168452909152812054611e01908363ffffffff611a0016565b336000818152600260209081526040808320600160a060020a0389168085529083529281902085905580519485525191937f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925929081900390910190a3506001929150505600ddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3efa165627a7a72305820d5b828b0312df777a048595bbc4893621aae134a2132658614c899c9a8f78bba0029
Swarm Source
bzzr://d5b828b0312df777a048595bbc4893621aae134a2132658614c899c9a8f78bba
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.