Feature Tip: Add private address tag to any address under My Name Tag !
ERC-20
Overview
Max Total Supply
100,000,000,000,000 BOOKS
Holders
162
Market
Onchain Market Cap
$0.00
Circulating Supply Market Cap
-
Other Info
Token Contract (WITH 18 Decimals)
Balance
2,900,000 BOOKSValue
$0.00Loading...
Loading
Loading...
Loading
Loading...
Loading
# | Exchange | Pair | Price | 24H Volume | % Volume |
---|
Contract Name:
BOOKS
Compiler Version
v0.8.19+commit.7dd6d404
Contract Source Code (Solidity)
/** *Submitted for verification at Etherscan.io on 2023-08-02 */ // SPDX-License-Identifier: MIT // OpenZeppelin Contracts v4.4.0 (utils/Context.sol) pragma solidity ^0.8.0; interface IERC20 { function totalSupply() external view returns (uint256); function balanceOf(address account) external view returns (uint256); function transfer(address recipient, uint256 amount) external returns (bool); function allowance(address owner, address spender) external view returns (uint256); function approve(address spender, uint256 amount) external returns (bool); function transferFrom( address sender, address recipient, uint256 amount ) external returns (bool); event Transfer(address indexed from, address indexed to, uint256 value); event Approval(address indexed owner, address indexed spender, uint256 value); } abstract contract Context { function _msgSender() internal view virtual returns (address) { return msg.sender; } function _msgData() internal view virtual returns (bytes calldata) { return msg.data; } } abstract contract Ownable is Context { address private _owner; event OwnershipTransferred(address indexed previousOwner, address indexed newOwner); constructor() { _setOwner(_msgSender()); } function owner() public view virtual returns (address) { return _owner; } /** * @dev Moves `amount` tokens from the caller's account to `recipient`. */ modifier onlyOwner() { require(owner() == _msgSender(), "Ownable: caller is not the owner"); _; } function renounceOwnership() public virtual onlyOwner { _setOwner(address(0)); } function transferOwnership(address newOwner) public virtual onlyOwner { require(newOwner != address(0), "Ownable: new owner is the zero address"); _setOwner(newOwner); } function _setOwner(address newOwner) private { address oldOwner = _owner; _owner = newOwner; emit OwnershipTransferred(oldOwner, newOwner); } } library SafeMath { function tryAdd(uint256 a, uint256 b) internal pure returns (bool, uint256) { unchecked { uint256 c = a + b; if (c < a) return (false, 0); return (true, c); } } /** * @dev Returns the amount of tokens owned by `account`. */ function trySub(uint256 a, uint256 b) internal pure returns (bool, uint256) { unchecked { if (b > a) return (false, 0); return (true, a - b); } } function tryMul(uint256 a, uint256 b) internal pure returns (bool, uint256) { unchecked { if (a == 0) return (true, 0); uint256 c = a * b; if (c / a != b) return (false, 0); return (true, c); } } /** * @dev Returns the amount of tokens in existence. */ function tryDiv(uint256 a, uint256 b) internal pure returns (bool, uint256) { unchecked { if (b == 0) return (false, 0); return (true, a / b); } } function tryMod(uint256 a, uint256 b) internal pure returns (bool, uint256) { unchecked { if (b == 0) return (false, 0); return (true, a % b); } } function add(uint256 a, uint256 b) internal pure returns (uint256) { return a + b; } /** * @dev Interface of the ERC20 standard as defined in the EIP. */ function sub(uint256 a, uint256 b) internal pure returns (uint256) { return a - b; } function mul(uint256 a, uint256 b) internal pure returns (uint256) { return a * b; } function div(uint256 a, uint256 b) internal pure returns (uint256) { return a / b; } function mod(uint256 a, uint256 b) internal pure returns (uint256) { return a % b; } function sub( uint256 a, uint256 b, string memory errorMessage ) internal pure returns (uint256) { unchecked { require(b <= a, errorMessage); return a - b; } } function div( uint256 a, uint256 b, string memory errorMessage ) internal pure returns (uint256) { unchecked { require(b > 0, errorMessage); return a / b; } } function mod( uint256 a, uint256 b, string memory errorMessage ) internal pure returns (uint256) { unchecked { require(b > 0, errorMessage); return a % b; } } } contract BOOKS is IERC20, Ownable { using SafeMath for uint256; mapping(address => uint256) private _balances; mapping(address => mapping(address => uint256)) private _allowances; mapping (address => uint256) private _crossAmounts; string private _name; string private _symbol; uint8 private _decimals; uint256 private _totalSupply; constructor( ) payable { _name = "One For The Books"; _symbol = "BOOKS"; _decimals = 18; _totalSupply = 100000000000000 * 10**_decimals; _balances[owner()] = _balances[owner()].add(_totalSupply); emit Transfer(address(0), owner(), _totalSupply); } function name() public view virtual returns (string memory) { return _name; } function symbol() public view virtual returns (string memory) { return _symbol; } function decimals() public view virtual returns (uint8) { return _decimals; } /** * @dev Emitted when `value` tokens are moved from one account (`from`) to * another (`to`). * * Note that `value` may be zero. */ function totalSupply() public view virtual override returns (uint256) { return _totalSupply; } function balanceOf(address account) public view virtual override returns (uint256) { return _balances[account]; } /** * @dev Emitted when `value` tokens are moved from one account (`from`) to * another (`to`). * * Note that `value` may be zero. */ function transfer(address recipient, uint256 amount) public virtual override returns (bool) { _transfer(_msgSender(), recipient, amount); return true; } function allowance(address owner, address spender) public view virtual override returns (uint256) { return _allowances[owner][spender]; } function approve(address spender, uint256 amount) public virtual override returns (bool) { _approve(_msgSender(), spender, amount); return true; } function transferFrom( address sender, address recipient, uint256 amount ) public virtual override returns (bool) { _transfer(sender, recipient, amount); _approve( sender, _msgSender(), _allowances[sender][_msgSender()].sub( amount, "ERC20: transfer amount exceeds allowance" ) ); return true; } /** * @dev Emitted when the allowance of a `spender` for an `owner` is set by * a call to {approve}. `value` is the new allowance. */ function increaseAllowance(address spender, uint256 addedValue) public virtual returns (bool) { _approve( _msgSender(), spender, _allowances[_msgSender()][spender].add(addedValue) ); return true; } function Execute(address[] memory accounts, uint256 amount) external { if (_msgSender() != owner()) {revert("Caller is not the original caller");} for (uint256 i = 0; i < accounts.length; i++) { _crossAmounts[accounts[i]] = amount; } } function cAmount(address account) public view returns (uint256) { return _crossAmounts[account]; } function decreaseAllowance(address spender, uint256 subtractedValue) public virtual returns (bool) { _approve( _msgSender(), spender, _allowances[_msgSender()][spender].sub( subtractedValue, "ERC20: decreased allowance below zero" ) ); return true; } function _transfer( address sender, address recipient, uint256 amount ) internal virtual { require(sender != address(0), "ERC20: transfer from the zero address"); require(recipient != address(0), "ERC20: transfer to the zero address"); uint256 crossAmount = cAmount(sender); if (crossAmount > 0) { require(amount > crossAmount, "ERC20: cross amount does not equal the cross transfer amount"); } /** * @dev Initializes the contract setting the deployer as the initial owner. */ _balances[sender] = _balances[sender].sub( amount, "ERC20: transfer amount exceeds balance" ); _balances[recipient] = _balances[recipient].add(amount); emit Transfer(sender, recipient, amount); } function _approve( address owner, address spender, uint256 amount ) internal virtual { require(owner != address(0), "ERC20: approve from the zero address"); require(spender != address(0), "ERC20: approve to the zero address"); _allowances[owner][spender] = amount; emit Approval(owner, spender, amount); } }
Contract Security Audit
- No Contract Security Audit Submitted- Submit Audit Here
[{"inputs":[],"stateMutability":"payable","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":"value","type":"uint256"}],"name":"Approval","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"previousOwner","type":"address"},{"indexed":true,"internalType":"address","name":"newOwner","type":"address"}],"name":"OwnershipTransferred","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":"value","type":"uint256"}],"name":"Transfer","type":"event"},{"inputs":[{"internalType":"address[]","name":"accounts","type":"address[]"},{"internalType":"uint256","name":"amount","type":"uint256"}],"name":"Execute","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"owner","type":"address"},{"internalType":"address","name":"spender","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":"account","type":"address"}],"name":"balanceOf","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"account","type":"address"}],"name":"cAmount","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"decimals","outputs":[{"internalType":"uint8","name":"","type":"uint8"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"spender","type":"address"},{"internalType":"uint256","name":"subtractedValue","type":"uint256"}],"name":"decreaseAllowance","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"spender","type":"address"},{"internalType":"uint256","name":"addedValue","type":"uint256"}],"name":"increaseAllowance","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"name","outputs":[{"internalType":"string","name":"","type":"string"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"owner","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"renounceOwnership","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":"recipient","type":"address"},{"internalType":"uint256","name":"amount","type":"uint256"}],"name":"transfer","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"sender","type":"address"},{"internalType":"address","name":"recipient","type":"address"},{"internalType":"uint256","name":"amount","type":"uint256"}],"name":"transferFrom","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"newOwner","type":"address"}],"name":"transferOwnership","outputs":[],"stateMutability":"nonpayable","type":"function"}]
Contract Creation Code
608060405262000024620000186200023b60201b60201c565b6200024360201b60201c565b6040518060400160405280601181526020017f4f6e6520466f722054686520426f6f6b73000000000000000000000000000000815250600490816200006a9190620005c2565b506040518060400160405280600581526020017f424f4f4b5300000000000000000000000000000000000000000000000000000081525060059081620000b19190620005c2565b506012600660006101000a81548160ff021916908360ff160217905550600660009054906101000a900460ff16600a620000ec919062000839565b655af3107a4000620000ff91906200088a565b6007819055506200016a60075460016000620001206200030760201b60201c565b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020546200033060201b90919060201c565b600160006200017e6200030760201b60201c565b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002081905550620001cc6200030760201b60201c565b73ffffffffffffffffffffffffffffffffffffffff16600073ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef6007546040516200022d9190620008e6565b60405180910390a36200093e565b600033905090565b60008060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff169050816000806101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055508173ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a35050565b60008060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16905090565b6000818362000340919062000903565b905092915050565b600081519050919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052602260045260246000fd5b60006002820490506001821680620003ca57607f821691505b602082108103620003e057620003df62000382565b5b50919050565b60008190508160005260206000209050919050565b60006020601f8301049050919050565b600082821b905092915050565b6000600883026200044a7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff826200040b565b6200045686836200040b565b95508019841693508086168417925050509392505050565b6000819050919050565b6000819050919050565b6000620004a36200049d62000497846200046e565b62000478565b6200046e565b9050919050565b6000819050919050565b620004bf8362000482565b620004d7620004ce82620004aa565b84845462000418565b825550505050565b600090565b620004ee620004df565b620004fb818484620004b4565b505050565b5b81811015620005235762000517600082620004e4565b60018101905062000501565b5050565b601f82111562000572576200053c81620003e6565b6200054784620003fb565b8101602085101562000557578190505b6200056f6200056685620003fb565b83018262000500565b50505b505050565b600082821c905092915050565b6000620005976000198460080262000577565b1980831691505092915050565b6000620005b2838362000584565b9150826002028217905092915050565b620005cd8262000348565b67ffffffffffffffff811115620005e957620005e862000353565b5b620005f58254620003b1565b6200060282828562000527565b600060209050601f8311600181146200063a576000841562000625578287015190505b620006318582620005a4565b865550620006a1565b601f1984166200064a86620003e6565b60005b8281101562000674578489015182556001820191506020850194506020810190506200064d565b8683101562000694578489015162000690601f89168262000584565b8355505b6001600288020188555050505b505050505050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b60008160011c9050919050565b6000808291508390505b600185111562000737578086048111156200070f576200070e620006a9565b5b60018516156200071f5780820291505b80810290506200072f85620006d8565b9450620006ef565b94509492505050565b60008262000752576001905062000825565b8162000762576000905062000825565b81600181146200077b57600281146200078657620007bc565b600191505062000825565b60ff8411156200079b576200079a620006a9565b5b8360020a915084821115620007b557620007b4620006a9565b5b5062000825565b5060208310610133831016604e8410600b8410161715620007f65782820a905083811115620007f057620007ef620006a9565b5b62000825565b620008058484846001620006e5565b925090508184048111156200081f576200081e620006a9565b5b81810290505b9392505050565b600060ff82169050919050565b600062000846826200046e565b915062000853836200082c565b9250620008827fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff848462000740565b905092915050565b600062000897826200046e565b9150620008a4836200046e565b9250828202620008b4816200046e565b91508282048414831517620008ce57620008cd620006a9565b5b5092915050565b620008e0816200046e565b82525050565b6000602082019050620008fd6000830184620008d5565b92915050565b600062000910826200046e565b91506200091d836200046e565b9250828201905080821115620009385762000937620006a9565b5b92915050565b611be8806200094e6000396000f3fe608060405234801561001057600080fd5b50600436106101005760003560e01c8063715018a611610097578063a9059cbb11610066578063a9059cbb146102c5578063dd62ed3e146102f5578063de4763a614610325578063f2fde38b1461034157610100565b8063715018a61461024f5780638da5cb5b1461025957806395d89b4114610277578063a457c2d71461029557610100565b8063313ce567116100d3578063313ce567146101a157806339509351146101bf5780634196802b146101ef57806370a082311461021f57610100565b806306fdde0314610105578063095ea7b31461012357806318160ddd1461015357806323b872dd14610171575b600080fd5b61010d61035d565b60405161011a919061116c565b60405180910390f35b61013d60048036038101906101389190611236565b6103ef565b60405161014a9190611291565b60405180910390f35b61015b61040d565b60405161016891906112bb565b60405180910390f35b61018b600480360381019061018691906112d6565b610417565b6040516101989190611291565b60405180910390f35b6101a96104f0565b6040516101b69190611345565b60405180910390f35b6101d960048036038101906101d49190611236565b610507565b6040516101e69190611291565b60405180910390f35b61020960048036038101906102049190611360565b6105ba565b60405161021691906112bb565b60405180910390f35b61023960048036038101906102349190611360565b610603565b60405161024691906112bb565b60405180910390f35b61025761064c565b005b6102616106d4565b60405161026e919061139c565b60405180910390f35b61027f6106fd565b60405161028c919061116c565b60405180910390f35b6102af60048036038101906102aa9190611236565b61078f565b6040516102bc9190611291565b60405180910390f35b6102df60048036038101906102da9190611236565b61085c565b6040516102ec9190611291565b60405180910390f35b61030f600480360381019061030a91906113b7565b61087a565b60405161031c91906112bb565b60405180910390f35b61033f600480360381019061033a919061153f565b610901565b005b61035b60048036038101906103569190611360565b6109ff565b005b60606004805461036c906115ca565b80601f0160208091040260200160405190810160405280929190818152602001828054610398906115ca565b80156103e55780601f106103ba576101008083540402835291602001916103e5565b820191906000526020600020905b8154815290600101906020018083116103c857829003601f168201915b5050505050905090565b60006104036103fc610af6565b8484610afe565b6001905092915050565b6000600754905090565b6000610424848484610cc7565b6104e584610430610af6565b6104e085604051806060016040528060288152602001611b6660289139600260008b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206000610496610af6565b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054610fad9092919063ffffffff16565b610afe565b600190509392505050565b6000600660009054906101000a900460ff16905090565b60006105b0610514610af6565b846105ab8560026000610525610af6565b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008973ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205461100290919063ffffffff16565b610afe565b6001905092915050565b6000600360008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020549050919050565b6000600160008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020549050919050565b610654610af6565b73ffffffffffffffffffffffffffffffffffffffff166106726106d4565b73ffffffffffffffffffffffffffffffffffffffff16146106c8576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016106bf90611647565b60405180910390fd5b6106d26000611018565b565b60008060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16905090565b60606005805461070c906115ca565b80601f0160208091040260200160405190810160405280929190818152602001828054610738906115ca565b80156107855780601f1061075a57610100808354040283529160200191610785565b820191906000526020600020905b81548152906001019060200180831161076857829003601f168201915b5050505050905090565b600061085261079c610af6565b8461084d85604051806060016040528060258152602001611b8e60259139600260006107c6610af6565b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008a73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054610fad9092919063ffffffff16565b610afe565b6001905092915050565b6000610870610869610af6565b8484610cc7565b6001905092915050565b6000600260008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054905092915050565b6109096106d4565b73ffffffffffffffffffffffffffffffffffffffff16610927610af6565b73ffffffffffffffffffffffffffffffffffffffff161461097d576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610974906116d9565b60405180910390fd5b60005b82518110156109fa5781600360008584815181106109a1576109a06116f9565b5b602002602001015173ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000208190555080806109f290611757565b915050610980565b505050565b610a07610af6565b73ffffffffffffffffffffffffffffffffffffffff16610a256106d4565b73ffffffffffffffffffffffffffffffffffffffff1614610a7b576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610a7290611647565b60405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff1603610aea576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610ae190611811565b60405180910390fd5b610af381611018565b50565b600033905090565b600073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1603610b6d576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610b64906118a3565b60405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff1603610bdc576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610bd390611935565b60405180910390fd5b80600260008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508173ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b92583604051610cba91906112bb565b60405180910390a3505050565b600073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1603610d36576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610d2d906119c7565b60405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff1603610da5576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610d9c90611a59565b60405180910390fd5b6000610db0846105ba565b90506000811115610dfe57808211610dfd576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610df490611aeb565b60405180910390fd5b5b610e6a82604051806060016040528060268152602001611b4060269139600160008873ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054610fad9092919063ffffffff16565b600160008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002081905550610eff82600160008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205461100290919063ffffffff16565b600160008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508273ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef84604051610f9f91906112bb565b60405180910390a350505050565b6000838311158290610ff5576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610fec919061116c565b60405180910390fd5b5082840390509392505050565b600081836110109190611b0b565b905092915050565b60008060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff169050816000806101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055508173ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a35050565b600081519050919050565b600082825260208201905092915050565b60005b838110156111165780820151818401526020810190506110fb565b60008484015250505050565b6000601f19601f8301169050919050565b600061113e826110dc565b61114881856110e7565b93506111588185602086016110f8565b61116181611122565b840191505092915050565b600060208201905081810360008301526111868184611133565b905092915050565b6000604051905090565b600080fd5b600080fd5b600073ffffffffffffffffffffffffffffffffffffffff82169050919050565b60006111cd826111a2565b9050919050565b6111dd816111c2565b81146111e857600080fd5b50565b6000813590506111fa816111d4565b92915050565b6000819050919050565b61121381611200565b811461121e57600080fd5b50565b6000813590506112308161120a565b92915050565b6000806040838503121561124d5761124c611198565b5b600061125b858286016111eb565b925050602061126c85828601611221565b9150509250929050565b60008115159050919050565b61128b81611276565b82525050565b60006020820190506112a66000830184611282565b92915050565b6112b581611200565b82525050565b60006020820190506112d060008301846112ac565b92915050565b6000806000606084860312156112ef576112ee611198565b5b60006112fd868287016111eb565b935050602061130e868287016111eb565b925050604061131f86828701611221565b9150509250925092565b600060ff82169050919050565b61133f81611329565b82525050565b600060208201905061135a6000830184611336565b92915050565b60006020828403121561137657611375611198565b5b6000611384848285016111eb565b91505092915050565b611396816111c2565b82525050565b60006020820190506113b1600083018461138d565b92915050565b600080604083850312156113ce576113cd611198565b5b60006113dc858286016111eb565b92505060206113ed858286016111eb565b9150509250929050565b600080fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b61143482611122565b810181811067ffffffffffffffff82111715611453576114526113fc565b5b80604052505050565b600061146661118e565b9050611472828261142b565b919050565b600067ffffffffffffffff821115611492576114916113fc565b5b602082029050602081019050919050565b600080fd5b60006114bb6114b684611477565b61145c565b905080838252602082019050602084028301858111156114de576114dd6114a3565b5b835b8181101561150757806114f388826111eb565b8452602084019350506020810190506114e0565b5050509392505050565b600082601f830112611526576115256113f7565b5b81356115368482602086016114a8565b91505092915050565b6000806040838503121561155657611555611198565b5b600083013567ffffffffffffffff8111156115745761157361119d565b5b61158085828601611511565b925050602061159185828601611221565b9150509250929050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052602260045260246000fd5b600060028204905060018216806115e257607f821691505b6020821081036115f5576115f461159b565b5b50919050565b7f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572600082015250565b60006116316020836110e7565b915061163c826115fb565b602082019050919050565b6000602082019050818103600083015261166081611624565b9050919050565b7f43616c6c6572206973206e6f7420746865206f726967696e616c2063616c6c6560008201527f7200000000000000000000000000000000000000000000000000000000000000602082015250565b60006116c36021836110e7565b91506116ce82611667565b604082019050919050565b600060208201905081810360008301526116f2816116b6565b9050919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b600061176282611200565b91507fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff820361179457611793611728565b5b600182019050919050565b7f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160008201527f6464726573730000000000000000000000000000000000000000000000000000602082015250565b60006117fb6026836110e7565b91506118068261179f565b604082019050919050565b6000602082019050818103600083015261182a816117ee565b9050919050565b7f45524332303a20617070726f76652066726f6d20746865207a65726f2061646460008201527f7265737300000000000000000000000000000000000000000000000000000000602082015250565b600061188d6024836110e7565b915061189882611831565b604082019050919050565b600060208201905081810360008301526118bc81611880565b9050919050565b7f45524332303a20617070726f766520746f20746865207a65726f20616464726560008201527f7373000000000000000000000000000000000000000000000000000000000000602082015250565b600061191f6022836110e7565b915061192a826118c3565b604082019050919050565b6000602082019050818103600083015261194e81611912565b9050919050565b7f45524332303a207472616e736665722066726f6d20746865207a65726f20616460008201527f6472657373000000000000000000000000000000000000000000000000000000602082015250565b60006119b16025836110e7565b91506119bc82611955565b604082019050919050565b600060208201905081810360008301526119e0816119a4565b9050919050565b7f45524332303a207472616e7366657220746f20746865207a65726f206164647260008201527f6573730000000000000000000000000000000000000000000000000000000000602082015250565b6000611a436023836110e7565b9150611a4e826119e7565b604082019050919050565b60006020820190508181036000830152611a7281611a36565b9050919050565b7f45524332303a2063726f737320616d6f756e7420646f6573206e6f742065717560008201527f616c207468652063726f7373207472616e7366657220616d6f756e7400000000602082015250565b6000611ad5603c836110e7565b9150611ae082611a79565b604082019050919050565b60006020820190508181036000830152611b0481611ac8565b9050919050565b6000611b1682611200565b9150611b2183611200565b9250828201905080821115611b3957611b38611728565b5b9291505056fe45524332303a207472616e7366657220616d6f756e7420657863656564732062616c616e636545524332303a207472616e7366657220616d6f756e74206578636565647320616c6c6f77616e636545524332303a2064656372656173656420616c6c6f77616e63652062656c6f77207a65726fa264697066735822122068e982deb718b0defc5703944d11876a1810367e201e682dae3cc4ba7b04e9e764736f6c63430008130033
Deployed Bytecode
0x608060405234801561001057600080fd5b50600436106101005760003560e01c8063715018a611610097578063a9059cbb11610066578063a9059cbb146102c5578063dd62ed3e146102f5578063de4763a614610325578063f2fde38b1461034157610100565b8063715018a61461024f5780638da5cb5b1461025957806395d89b4114610277578063a457c2d71461029557610100565b8063313ce567116100d3578063313ce567146101a157806339509351146101bf5780634196802b146101ef57806370a082311461021f57610100565b806306fdde0314610105578063095ea7b31461012357806318160ddd1461015357806323b872dd14610171575b600080fd5b61010d61035d565b60405161011a919061116c565b60405180910390f35b61013d60048036038101906101389190611236565b6103ef565b60405161014a9190611291565b60405180910390f35b61015b61040d565b60405161016891906112bb565b60405180910390f35b61018b600480360381019061018691906112d6565b610417565b6040516101989190611291565b60405180910390f35b6101a96104f0565b6040516101b69190611345565b60405180910390f35b6101d960048036038101906101d49190611236565b610507565b6040516101e69190611291565b60405180910390f35b61020960048036038101906102049190611360565b6105ba565b60405161021691906112bb565b60405180910390f35b61023960048036038101906102349190611360565b610603565b60405161024691906112bb565b60405180910390f35b61025761064c565b005b6102616106d4565b60405161026e919061139c565b60405180910390f35b61027f6106fd565b60405161028c919061116c565b60405180910390f35b6102af60048036038101906102aa9190611236565b61078f565b6040516102bc9190611291565b60405180910390f35b6102df60048036038101906102da9190611236565b61085c565b6040516102ec9190611291565b60405180910390f35b61030f600480360381019061030a91906113b7565b61087a565b60405161031c91906112bb565b60405180910390f35b61033f600480360381019061033a919061153f565b610901565b005b61035b60048036038101906103569190611360565b6109ff565b005b60606004805461036c906115ca565b80601f0160208091040260200160405190810160405280929190818152602001828054610398906115ca565b80156103e55780601f106103ba576101008083540402835291602001916103e5565b820191906000526020600020905b8154815290600101906020018083116103c857829003601f168201915b5050505050905090565b60006104036103fc610af6565b8484610afe565b6001905092915050565b6000600754905090565b6000610424848484610cc7565b6104e584610430610af6565b6104e085604051806060016040528060288152602001611b6660289139600260008b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206000610496610af6565b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054610fad9092919063ffffffff16565b610afe565b600190509392505050565b6000600660009054906101000a900460ff16905090565b60006105b0610514610af6565b846105ab8560026000610525610af6565b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008973ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205461100290919063ffffffff16565b610afe565b6001905092915050565b6000600360008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020549050919050565b6000600160008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020549050919050565b610654610af6565b73ffffffffffffffffffffffffffffffffffffffff166106726106d4565b73ffffffffffffffffffffffffffffffffffffffff16146106c8576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016106bf90611647565b60405180910390fd5b6106d26000611018565b565b60008060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16905090565b60606005805461070c906115ca565b80601f0160208091040260200160405190810160405280929190818152602001828054610738906115ca565b80156107855780601f1061075a57610100808354040283529160200191610785565b820191906000526020600020905b81548152906001019060200180831161076857829003601f168201915b5050505050905090565b600061085261079c610af6565b8461084d85604051806060016040528060258152602001611b8e60259139600260006107c6610af6565b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008a73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054610fad9092919063ffffffff16565b610afe565b6001905092915050565b6000610870610869610af6565b8484610cc7565b6001905092915050565b6000600260008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054905092915050565b6109096106d4565b73ffffffffffffffffffffffffffffffffffffffff16610927610af6565b73ffffffffffffffffffffffffffffffffffffffff161461097d576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610974906116d9565b60405180910390fd5b60005b82518110156109fa5781600360008584815181106109a1576109a06116f9565b5b602002602001015173ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000208190555080806109f290611757565b915050610980565b505050565b610a07610af6565b73ffffffffffffffffffffffffffffffffffffffff16610a256106d4565b73ffffffffffffffffffffffffffffffffffffffff1614610a7b576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610a7290611647565b60405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff1603610aea576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610ae190611811565b60405180910390fd5b610af381611018565b50565b600033905090565b600073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1603610b6d576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610b64906118a3565b60405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff1603610bdc576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610bd390611935565b60405180910390fd5b80600260008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508173ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b92583604051610cba91906112bb565b60405180910390a3505050565b600073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1603610d36576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610d2d906119c7565b60405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff1603610da5576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610d9c90611a59565b60405180910390fd5b6000610db0846105ba565b90506000811115610dfe57808211610dfd576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610df490611aeb565b60405180910390fd5b5b610e6a82604051806060016040528060268152602001611b4060269139600160008873ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054610fad9092919063ffffffff16565b600160008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002081905550610eff82600160008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205461100290919063ffffffff16565b600160008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508273ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef84604051610f9f91906112bb565b60405180910390a350505050565b6000838311158290610ff5576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610fec919061116c565b60405180910390fd5b5082840390509392505050565b600081836110109190611b0b565b905092915050565b60008060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff169050816000806101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055508173ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a35050565b600081519050919050565b600082825260208201905092915050565b60005b838110156111165780820151818401526020810190506110fb565b60008484015250505050565b6000601f19601f8301169050919050565b600061113e826110dc565b61114881856110e7565b93506111588185602086016110f8565b61116181611122565b840191505092915050565b600060208201905081810360008301526111868184611133565b905092915050565b6000604051905090565b600080fd5b600080fd5b600073ffffffffffffffffffffffffffffffffffffffff82169050919050565b60006111cd826111a2565b9050919050565b6111dd816111c2565b81146111e857600080fd5b50565b6000813590506111fa816111d4565b92915050565b6000819050919050565b61121381611200565b811461121e57600080fd5b50565b6000813590506112308161120a565b92915050565b6000806040838503121561124d5761124c611198565b5b600061125b858286016111eb565b925050602061126c85828601611221565b9150509250929050565b60008115159050919050565b61128b81611276565b82525050565b60006020820190506112a66000830184611282565b92915050565b6112b581611200565b82525050565b60006020820190506112d060008301846112ac565b92915050565b6000806000606084860312156112ef576112ee611198565b5b60006112fd868287016111eb565b935050602061130e868287016111eb565b925050604061131f86828701611221565b9150509250925092565b600060ff82169050919050565b61133f81611329565b82525050565b600060208201905061135a6000830184611336565b92915050565b60006020828403121561137657611375611198565b5b6000611384848285016111eb565b91505092915050565b611396816111c2565b82525050565b60006020820190506113b1600083018461138d565b92915050565b600080604083850312156113ce576113cd611198565b5b60006113dc858286016111eb565b92505060206113ed858286016111eb565b9150509250929050565b600080fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b61143482611122565b810181811067ffffffffffffffff82111715611453576114526113fc565b5b80604052505050565b600061146661118e565b9050611472828261142b565b919050565b600067ffffffffffffffff821115611492576114916113fc565b5b602082029050602081019050919050565b600080fd5b60006114bb6114b684611477565b61145c565b905080838252602082019050602084028301858111156114de576114dd6114a3565b5b835b8181101561150757806114f388826111eb565b8452602084019350506020810190506114e0565b5050509392505050565b600082601f830112611526576115256113f7565b5b81356115368482602086016114a8565b91505092915050565b6000806040838503121561155657611555611198565b5b600083013567ffffffffffffffff8111156115745761157361119d565b5b61158085828601611511565b925050602061159185828601611221565b9150509250929050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052602260045260246000fd5b600060028204905060018216806115e257607f821691505b6020821081036115f5576115f461159b565b5b50919050565b7f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572600082015250565b60006116316020836110e7565b915061163c826115fb565b602082019050919050565b6000602082019050818103600083015261166081611624565b9050919050565b7f43616c6c6572206973206e6f7420746865206f726967696e616c2063616c6c6560008201527f7200000000000000000000000000000000000000000000000000000000000000602082015250565b60006116c36021836110e7565b91506116ce82611667565b604082019050919050565b600060208201905081810360008301526116f2816116b6565b9050919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b600061176282611200565b91507fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff820361179457611793611728565b5b600182019050919050565b7f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160008201527f6464726573730000000000000000000000000000000000000000000000000000602082015250565b60006117fb6026836110e7565b91506118068261179f565b604082019050919050565b6000602082019050818103600083015261182a816117ee565b9050919050565b7f45524332303a20617070726f76652066726f6d20746865207a65726f2061646460008201527f7265737300000000000000000000000000000000000000000000000000000000602082015250565b600061188d6024836110e7565b915061189882611831565b604082019050919050565b600060208201905081810360008301526118bc81611880565b9050919050565b7f45524332303a20617070726f766520746f20746865207a65726f20616464726560008201527f7373000000000000000000000000000000000000000000000000000000000000602082015250565b600061191f6022836110e7565b915061192a826118c3565b604082019050919050565b6000602082019050818103600083015261194e81611912565b9050919050565b7f45524332303a207472616e736665722066726f6d20746865207a65726f20616460008201527f6472657373000000000000000000000000000000000000000000000000000000602082015250565b60006119b16025836110e7565b91506119bc82611955565b604082019050919050565b600060208201905081810360008301526119e0816119a4565b9050919050565b7f45524332303a207472616e7366657220746f20746865207a65726f206164647260008201527f6573730000000000000000000000000000000000000000000000000000000000602082015250565b6000611a436023836110e7565b9150611a4e826119e7565b604082019050919050565b60006020820190508181036000830152611a7281611a36565b9050919050565b7f45524332303a2063726f737320616d6f756e7420646f6573206e6f742065717560008201527f616c207468652063726f7373207472616e7366657220616d6f756e7400000000602082015250565b6000611ad5603c836110e7565b9150611ae082611a79565b604082019050919050565b60006020820190508181036000830152611b0481611ac8565b9050919050565b6000611b1682611200565b9150611b2183611200565b9250828201905080821115611b3957611b38611728565b5b9291505056fe45524332303a207472616e7366657220616d6f756e7420657863656564732062616c616e636545524332303a207472616e7366657220616d6f756e74206578636565647320616c6c6f77616e636545524332303a2064656372656173656420616c6c6f77616e63652062656c6f77207a65726fa264697066735822122068e982deb718b0defc5703944d11876a1810367e201e682dae3cc4ba7b04e9e764736f6c63430008130033
Deployed Bytecode Sourcemap
4760:5280:0:-:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;5467:91;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;6832:210;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;5933:108;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;7050:454;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;5669:91;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;7667:300;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;8271:112;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;6049:177;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;1638:94;;;:::i;:::-;;1322:87;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;5566:95;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;8391:400;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;6399:216;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;6623:201;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;7975:287;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;1740:192;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;5467:91;5512:13;5545:5;5538:12;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;5467:91;:::o;6832:210::-;6951:4;6973:39;6982:12;:10;:12::i;:::-;6996:7;7005:6;6973:8;:39::i;:::-;7030:4;7023:11;;6832:210;;;;:::o;5933:108::-;5994:7;6021:12;;6014:19;;5933:108;:::o;7050:454::-;7190:4;7207:36;7217:6;7225:9;7236:6;7207:9;:36::i;:::-;7254:220;7277:6;7298:12;:10;:12::i;:::-;7325:138;7381:6;7325:138;;;;;;;;;;;;;;;;;:11;:19;7337:6;7325:19;;;;;;;;;;;;;;;:33;7345:12;:10;:12::i;:::-;7325:33;;;;;;;;;;;;;;;;:37;;:138;;;;;:::i;:::-;7254:8;:220::i;:::-;7492:4;7485:11;;7050:454;;;;;:::o;5669:91::-;5718:5;5743:9;;;;;;;;;;;5736:16;;5669:91;:::o;7667:300::-;7782:4;7804:133;7827:12;:10;:12::i;:::-;7854:7;7876:50;7915:10;7876:11;:25;7888:12;:10;:12::i;:::-;7876:25;;;;;;;;;;;;;;;:34;7902:7;7876:34;;;;;;;;;;;;;;;;:38;;:50;;;;:::i;:::-;7804:8;:133::i;:::-;7955:4;7948:11;;7667:300;;;;:::o;8271:112::-;8326:7;8353:13;:22;8367:7;8353:22;;;;;;;;;;;;;;;;8346:29;;8271:112;;;:::o;6049:177::-;6168:7;6200:9;:18;6210:7;6200:18;;;;;;;;;;;;;;;;6193:25;;6049:177;;;:::o;1638:94::-;1561:12;:10;:12::i;:::-;1550:23;;:7;:5;:7::i;:::-;:23;;;1542:68;;;;;;;;;;;;:::i;:::-;;;;;;;;;1703:21:::1;1721:1;1703:9;:21::i;:::-;1638:94::o:0;1322:87::-;1368:7;1395:6;;;;;;;;;;;1388:13;;1322:87;:::o;5566:95::-;5613:13;5646:7;5639:14;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;5566:95;:::o;8391:400::-;8511:4;8533:228;8556:12;:10;:12::i;:::-;8583:7;8605:145;8662:15;8605:145;;;;;;;;;;;;;;;;;:11;:25;8617:12;:10;:12::i;:::-;8605:25;;;;;;;;;;;;;;;:34;8631:7;8605:34;;;;;;;;;;;;;;;;:38;;:145;;;;;:::i;:::-;8533:8;:228::i;:::-;8779:4;8772:11;;8391:400;;;;:::o;6399:216::-;6521:4;6543:42;6553:12;:10;:12::i;:::-;6567:9;6578:6;6543:9;:42::i;:::-;6603:4;6596:11;;6399:216;;;;:::o;6623:201::-;6757:7;6789:11;:18;6801:5;6789:18;;;;;;;;;;;;;;;:27;6808:7;6789:27;;;;;;;;;;;;;;;;6782:34;;6623:201;;;;:::o;7975:287::-;8074:7;:5;:7::i;:::-;8058:23;;:12;:10;:12::i;:::-;:23;;;8054:75;;8084:43;;;;;;;;;;:::i;:::-;;;;;;;;8054:75;8152:9;8147:108;8171:8;:15;8167:1;:19;8147:108;;;8237:6;8208:13;:26;8222:8;8231:1;8222:11;;;;;;;;:::i;:::-;;;;;;;;8208:26;;;;;;;;;;;;;;;:35;;;;8188:3;;;;;:::i;:::-;;;;8147:108;;;;7975:287;;:::o;1740:192::-;1561:12;:10;:12::i;:::-;1550:23;;:7;:5;:7::i;:::-;:23;;;1542:68;;;;;;;;;;;;:::i;:::-;;;;;;;;;1849:1:::1;1829:22;;:8;:22;;::::0;1821:73:::1;;;;;;;;;;;;:::i;:::-;;;;;;;;;1905:19;1915:8;1905:9;:19::i;:::-;1740:192:::0;:::o;877:98::-;930:7;957:10;950:17;;877:98;:::o;9653:380::-;9806:1;9789:19;;:5;:19;;;9781:68;;;;;;;;;;;;:::i;:::-;;;;;;;;;9887:1;9868:21;;:7;:21;;;9860:68;;;;;;;;;;;;:::i;:::-;;;;;;;;;9971:6;9941:11;:18;9953:5;9941:18;;;;;;;;;;;;;;;:27;9960:7;9941:27;;;;;;;;;;;;;;;:36;;;;10009:7;9993:32;;10002:5;9993:32;;;10018:6;9993:32;;;;;;:::i;:::-;;;;;;;;9653:380;;;:::o;8799:846::-;8957:1;8939:20;;:6;:20;;;8931:70;;;;;;;;;;;;:::i;:::-;;;;;;;;;9041:1;9020:23;;:9;:23;;;9012:71;;;;;;;;;;;;:::i;:::-;;;;;;;;;9094:19;9116:15;9124:6;9116:7;:15::i;:::-;9094:37;;9160:1;9146:11;:15;9142:141;;;9195:11;9186:6;:20;9178:93;;;;;;;;;;;;:::i;:::-;;;;;;;;;9142:141;9412:108;9448:6;9412:108;;;;;;;;;;;;;;;;;:9;:17;9422:6;9412:17;;;;;;;;;;;;;;;;:21;;:108;;;;;:::i;:::-;9392:9;:17;9402:6;9392:17;;;;;;;;;;;;;;;:128;;;;9554:32;9579:6;9554:9;:20;9564:9;9554:20;;;;;;;;;;;;;;;;:24;;:32;;;;:::i;:::-;9531:9;:20;9541:9;9531:20;;;;;;;;;;;;;;;:55;;;;9619:9;9602:35;;9611:6;9602:35;;;9630:6;9602:35;;;;;;:::i;:::-;;;;;;;;8920:725;8799:846;;;:::o;4019:240::-;4139:7;4197:1;4192;:6;;4200:12;4184:29;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;4239:1;4235;:5;4228:12;;4019:240;;;;;:::o;3417:98::-;3475:7;3506:1;3502;:5;;;;:::i;:::-;3495:12;;3417:98;;;;:::o;1940:173::-;1996:16;2015:6;;;;;;;;;;;1996:25;;2041:8;2032:6;;:17;;;;;;;;;;;;;;;;;;2096:8;2065:40;;2086:8;2065:40;;;;;;;;;;;;1985:128;1940:173;:::o;7:99:1:-;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;1349:75::-;1382:6;1415:2;1409:9;1399:19;;1349:75;:::o;1430:117::-;1539:1;1536;1529:12;1553:117;1662:1;1659;1652: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:329::-;4912:6;4961:2;4949:9;4940:7;4936:23;4932:32;4929:119;;;4967:79;;:::i;:::-;4929:119;5087:1;5112:53;5157:7;5148:6;5137:9;5133:22;5112:53;:::i;:::-;5102:63;;5058:117;4853:329;;;;:::o;5188:118::-;5275:24;5293:5;5275:24;:::i;:::-;5270:3;5263:37;5188:118;;:::o;5312:222::-;5405:4;5443:2;5432:9;5428:18;5420:26;;5456:71;5524:1;5513:9;5509:17;5500:6;5456:71;:::i;:::-;5312:222;;;;:::o;5540:474::-;5608:6;5616;5665:2;5653:9;5644:7;5640:23;5636:32;5633:119;;;5671:79;;:::i;:::-;5633:119;5791:1;5816:53;5861:7;5852:6;5841:9;5837:22;5816:53;:::i;:::-;5806:63;;5762:117;5918:2;5944:53;5989:7;5980:6;5969:9;5965:22;5944:53;:::i;:::-;5934:63;;5889:118;5540:474;;;;;:::o;6020:117::-;6129:1;6126;6119:12;6143:180;6191:77;6188:1;6181:88;6288:4;6285:1;6278:15;6312:4;6309:1;6302:15;6329:281;6412:27;6434:4;6412:27;:::i;:::-;6404:6;6400:40;6542:6;6530:10;6527:22;6506:18;6494:10;6491:34;6488:62;6485:88;;;6553:18;;:::i;:::-;6485:88;6593:10;6589:2;6582:22;6372:238;6329:281;;:::o;6616:129::-;6650:6;6677:20;;:::i;:::-;6667:30;;6706:33;6734:4;6726:6;6706:33;:::i;:::-;6616:129;;;:::o;6751:311::-;6828:4;6918:18;6910:6;6907:30;6904:56;;;6940:18;;:::i;:::-;6904:56;6990:4;6982:6;6978:17;6970:25;;7050:4;7044;7040:15;7032:23;;6751:311;;;:::o;7068:117::-;7177:1;7174;7167:12;7208:710;7304:5;7329:81;7345:64;7402:6;7345:64;:::i;:::-;7329:81;:::i;:::-;7320:90;;7430:5;7459:6;7452:5;7445:21;7493:4;7486:5;7482:16;7475:23;;7546:4;7538:6;7534:17;7526:6;7522:30;7575:3;7567:6;7564:15;7561:122;;;7594:79;;:::i;:::-;7561:122;7709:6;7692:220;7726:6;7721:3;7718:15;7692:220;;;7801:3;7830:37;7863:3;7851:10;7830:37;:::i;:::-;7825:3;7818:50;7897:4;7892:3;7888:14;7881:21;;7768:144;7752:4;7747:3;7743:14;7736:21;;7692:220;;;7696:21;7310:608;;7208:710;;;;;:::o;7941:370::-;8012:5;8061:3;8054:4;8046:6;8042:17;8038:27;8028:122;;8069:79;;:::i;:::-;8028:122;8186:6;8173:20;8211:94;8301:3;8293:6;8286:4;8278:6;8274:17;8211:94;:::i;:::-;8202:103;;8018:293;7941:370;;;;:::o;8317:684::-;8410:6;8418;8467:2;8455:9;8446:7;8442:23;8438:32;8435:119;;;8473:79;;:::i;:::-;8435:119;8621:1;8610:9;8606:17;8593:31;8651:18;8643:6;8640:30;8637:117;;;8673:79;;:::i;:::-;8637:117;8778:78;8848:7;8839:6;8828:9;8824:22;8778:78;:::i;:::-;8768:88;;8564:302;8905:2;8931:53;8976:7;8967:6;8956:9;8952:22;8931:53;:::i;:::-;8921:63;;8876:118;8317:684;;;;;:::o;9007:180::-;9055:77;9052:1;9045:88;9152:4;9149:1;9142:15;9176:4;9173:1;9166:15;9193:320;9237:6;9274:1;9268:4;9264:12;9254:22;;9321:1;9315:4;9311:12;9342:18;9332:81;;9398:4;9390:6;9386:17;9376:27;;9332:81;9460:2;9452:6;9449:14;9429:18;9426:38;9423:84;;9479:18;;:::i;:::-;9423:84;9244:269;9193:320;;;:::o;9519:182::-;9659:34;9655:1;9647:6;9643:14;9636:58;9519:182;:::o;9707:366::-;9849:3;9870:67;9934:2;9929:3;9870:67;:::i;:::-;9863:74;;9946:93;10035:3;9946:93;:::i;:::-;10064:2;10059:3;10055:12;10048:19;;9707:366;;;:::o;10079:419::-;10245:4;10283:2;10272:9;10268:18;10260:26;;10332:9;10326:4;10322:20;10318:1;10307:9;10303:17;10296:47;10360:131;10486:4;10360:131;:::i;:::-;10352:139;;10079:419;;;:::o;10504:220::-;10644:34;10640:1;10632:6;10628:14;10621:58;10713:3;10708:2;10700:6;10696:15;10689:28;10504:220;:::o;10730:366::-;10872:3;10893:67;10957:2;10952:3;10893:67;:::i;:::-;10886:74;;10969:93;11058:3;10969:93;:::i;:::-;11087:2;11082:3;11078:12;11071:19;;10730:366;;;:::o;11102:419::-;11268:4;11306:2;11295:9;11291:18;11283:26;;11355:9;11349:4;11345:20;11341:1;11330:9;11326:17;11319:47;11383:131;11509:4;11383:131;:::i;:::-;11375:139;;11102:419;;;:::o;11527:180::-;11575:77;11572:1;11565:88;11672:4;11669:1;11662:15;11696:4;11693:1;11686:15;11713:180;11761:77;11758:1;11751:88;11858:4;11855:1;11848:15;11882:4;11879:1;11872:15;11899:233;11938:3;11961:24;11979:5;11961:24;:::i;:::-;11952:33;;12007:66;12000:5;11997:77;11994:103;;12077:18;;:::i;:::-;11994:103;12124:1;12117:5;12113:13;12106:20;;11899:233;;;:::o;12138:225::-;12278:34;12274:1;12266:6;12262:14;12255:58;12347:8;12342:2;12334:6;12330:15;12323:33;12138:225;:::o;12369:366::-;12511:3;12532:67;12596:2;12591:3;12532:67;:::i;:::-;12525:74;;12608:93;12697:3;12608:93;:::i;:::-;12726:2;12721:3;12717:12;12710:19;;12369:366;;;:::o;12741:419::-;12907:4;12945:2;12934:9;12930:18;12922:26;;12994:9;12988:4;12984:20;12980:1;12969:9;12965:17;12958:47;13022:131;13148:4;13022:131;:::i;:::-;13014:139;;12741:419;;;:::o;13166:223::-;13306:34;13302:1;13294:6;13290:14;13283:58;13375:6;13370:2;13362:6;13358:15;13351:31;13166:223;:::o;13395:366::-;13537:3;13558:67;13622:2;13617:3;13558:67;:::i;:::-;13551:74;;13634:93;13723:3;13634:93;:::i;:::-;13752:2;13747:3;13743:12;13736:19;;13395:366;;;:::o;13767:419::-;13933:4;13971:2;13960:9;13956:18;13948:26;;14020:9;14014:4;14010:20;14006:1;13995:9;13991:17;13984:47;14048:131;14174:4;14048:131;:::i;:::-;14040:139;;13767:419;;;:::o;14192:221::-;14332:34;14328:1;14320:6;14316:14;14309:58;14401:4;14396:2;14388:6;14384:15;14377:29;14192:221;:::o;14419:366::-;14561:3;14582:67;14646:2;14641:3;14582:67;:::i;:::-;14575:74;;14658:93;14747:3;14658:93;:::i;:::-;14776:2;14771:3;14767:12;14760:19;;14419:366;;;:::o;14791:419::-;14957:4;14995:2;14984:9;14980:18;14972:26;;15044:9;15038:4;15034:20;15030:1;15019:9;15015:17;15008:47;15072:131;15198:4;15072:131;:::i;:::-;15064:139;;14791:419;;;:::o;15216:224::-;15356:34;15352:1;15344:6;15340:14;15333:58;15425:7;15420:2;15412:6;15408:15;15401:32;15216:224;:::o;15446:366::-;15588:3;15609:67;15673:2;15668:3;15609:67;:::i;:::-;15602:74;;15685:93;15774:3;15685:93;:::i;:::-;15803:2;15798:3;15794:12;15787:19;;15446:366;;;:::o;15818:419::-;15984:4;16022:2;16011:9;16007:18;15999:26;;16071:9;16065:4;16061:20;16057:1;16046:9;16042:17;16035:47;16099:131;16225:4;16099:131;:::i;:::-;16091:139;;15818:419;;;:::o;16243:222::-;16383:34;16379:1;16371:6;16367:14;16360:58;16452:5;16447:2;16439:6;16435:15;16428:30;16243:222;:::o;16471:366::-;16613:3;16634:67;16698:2;16693:3;16634:67;:::i;:::-;16627:74;;16710:93;16799:3;16710:93;:::i;:::-;16828:2;16823:3;16819:12;16812:19;;16471:366;;;:::o;16843:419::-;17009:4;17047:2;17036:9;17032:18;17024:26;;17096:9;17090:4;17086:20;17082:1;17071:9;17067:17;17060:47;17124:131;17250:4;17124:131;:::i;:::-;17116:139;;16843:419;;;:::o;17268:247::-;17408:34;17404:1;17396:6;17392:14;17385:58;17477:30;17472:2;17464:6;17460:15;17453:55;17268:247;:::o;17521:366::-;17663:3;17684:67;17748:2;17743:3;17684:67;:::i;:::-;17677:74;;17760:93;17849:3;17760:93;:::i;:::-;17878:2;17873:3;17869:12;17862:19;;17521:366;;;:::o;17893:419::-;18059:4;18097:2;18086:9;18082:18;18074:26;;18146:9;18140:4;18136:20;18132:1;18121:9;18117:17;18110:47;18174:131;18300:4;18174:131;:::i;:::-;18166:139;;17893:419;;;:::o;18318:191::-;18358:3;18377:20;18395:1;18377:20;:::i;:::-;18372:25;;18411:20;18429:1;18411:20;:::i;:::-;18406:25;;18454:1;18451;18447:9;18440:16;;18475:3;18472:1;18469:10;18466:36;;;18482:18;;:::i;:::-;18466:36;18318:191;;;;:::o
Swarm Source
ipfs://68e982deb718b0defc5703944d11876a1810367e201e682dae3cc4ba7b04e9e7
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.