ERC-20
Gaming
Overview
Max Total Supply
216,711,641.23745454545454543 LOKA
Holders
7,344 ( 0.109%)
Market
Price
$0.22 @ 0.000063 ETH (+9.64%)
Onchain Market Cap
$46,857,607.78
Circulating Supply Market Cap
$24,823,834.00
Other Info
Token Contract (WITH 18 Decimals)
Balance
18,829.11631758 LOKAValue
$4,071.25 ( ~1.1864 Eth) [0.0087%]Loading...
Loading
Loading...
Loading
Loading...
Loading
# | Exchange | Pair | Price | 24H Volume | % Volume |
---|
Contract Name:
LOKA
Compiler Version
v0.8.10+commit.fc410830
Contract Source Code (Solidity)
/** *Submitted for verification at Etherscan.io on 2022-01-05 */ pragma solidity ^0.8.0; // SPDX-License-Identifier: MIT // OpenZeppelin Contracts v4.3.2 (token/ERC20/IERC20.sol) /** * @dev Interface of the ERC20 standard as defined in the EIP. */ interface IERC20 { /** * @dev Returns the amount of tokens in existence. */ function totalSupply() external view returns (uint256); /** * @dev Returns the amount of tokens owned by `account`. */ function balanceOf(address account) external view returns (uint256); /** * @dev Moves `amount` tokens from the caller's account to `recipient`. * * Returns a boolean value indicating whether the operation succeeded. * * Emits a {Transfer} event. */ function transfer(address recipient, uint256 amount) external returns (bool); /** * @dev Returns the remaining number of tokens that `spender` will be * allowed to spend on behalf of `owner` through {transferFrom}. This is * zero by default. * * This value changes when {approve} or {transferFrom} are called. */ function allowance(address owner, address spender) external view returns (uint256); /** * @dev Sets `amount` as the allowance of `spender` over the caller's tokens. * * Returns a boolean value indicating whether the operation succeeded. * * IMPORTANT: Beware that changing an allowance with this method brings the risk * that someone may use both the old and the new allowance by unfortunate * transaction ordering. One possible solution to mitigate this race * condition is to first reduce the spender's allowance to 0 and set the * desired value afterwards: * https://github.com/ethereum/EIPs/issues/20#issuecomment-263524729 * * Emits an {Approval} event. */ function approve(address spender, uint256 amount) external returns (bool); /** * @dev Moves `amount` tokens from `sender` to `recipient` using the * allowance mechanism. `amount` is then deducted from the caller's * allowance. * * Returns a boolean value indicating whether the operation succeeded. * * Emits a {Transfer} event. */ function transferFrom( address sender, address recipient, uint256 amount ) external returns (bool); /** * @dev Emitted when `value` tokens are moved from one account (`from`) to * another (`to`). * * Note that `value` may be zero. */ event Transfer(address indexed from, address indexed to, uint256 value); event Mint(address indexed to, uint256 value); /** * @dev Emitted when the allowance of a `spender` for an `owner` is set by * a call to {approve}. `value` is the new allowance. */ event Approval(address indexed owner, address indexed spender, uint256 value); } // OpenZeppelin Contracts v4.3.2 (token/ERC20/extensions/IERC20Metadata.sol) /** * @dev Interface for the optional metadata functions from the ERC20 standard. * * _Available since v4.1._ */ interface IERC20Metadata is IERC20 { /** * @dev Returns the name of the token. */ function name() external view returns (string memory); /** * @dev Returns the symbol of the token. */ function symbol() external view returns (string memory); /** * @dev Returns the decimals places of the token. */ function decimals() external view returns (uint8); } // OpenZeppelin Contracts v4.3.2 (utils/Context.sol) /** * @dev Provides information about the current execution context, including the * sender of the transaction and its data. While these are generally available * via msg.sender and msg.data, they should not be accessed in such a direct * manner, since when dealing with meta-transactions the account sending and * paying for execution may not be the actual sender (as far as an application * is concerned). * * This contract is only required for intermediate, library-like contracts. */ abstract contract Context { function _msgSender() internal view virtual returns (address) { return msg.sender; } } // OpenZeppelin Contracts v4.3.2 (token/ERC20/ERC20.sol) /** * @dev Implementation of the {IERC20} interface. * * This implementation is agnostic to the way tokens are created. This means * that a supply mechanism has to be added in a derived contract using {_mint}. * For a generic mechanism see {ERC20PresetMinterPauser}. * * TIP: For a detailed writeup see our guide * https://forum.zeppelin.solutions/t/how-to-implement-erc20-supply-mechanisms/226[How * to implement supply mechanisms]. * * We have followed general OpenZeppelin Contracts guidelines: functions revert * instead returning `false` on failure. This behavior is nonetheless * conventional and does not conflict with the expectations of ERC20 * applications. * * Additionally, an {Approval} event is emitted on calls to {transferFrom}. * This allows applications to reconstruct the allowance for all accounts just * by listening to said events. Other implementations of the EIP may not emit * these events, as it isn't required by the specification. * * Finally, the non-standard {decreaseAllowance} and {increaseAllowance} * functions have been added to mitigate the well-known issues around setting * allowances. See {IERC20-approve}. */ contract ERC20 is Context, IERC20, IERC20Metadata { mapping(address => uint256) private _balances; mapping(address => mapping(address => uint256)) private _allowances; uint256 private _totalSupply; string private _name; string private _symbol; /** * @dev Sets the values for {name} and {symbol}. * * The default value of {decimals} is 18. To select a different value for * {decimals} you should overload it. * * All two of these values are immutable: they can only be set once during * construction. */ constructor(string memory name_, string memory symbol_) { _name = name_; _symbol = symbol_; } /** * @dev Returns the name of the token. */ function name() public view virtual override returns (string memory) { return _name; } /** * @dev Returns the symbol of the token, usually a shorter version of the * name. */ function symbol() public view virtual override returns (string memory) { return _symbol; } /** * @dev Returns the number of decimals used to get its user representation. * For example, if `decimals` equals `2`, a balance of `505` tokens should * be displayed to a user as `5.05` (`505 / 10 ** 2`). * * Tokens usually opt for a value of 18, imitating the relationship between * Ether and Wei. This is the value {ERC20} uses, unless this function is * overridden; * * NOTE: This information is only used for _display_ purposes: it in * no way affects any of the arithmetic of the contract, including * {IERC20-balanceOf} and {IERC20-transfer}. */ function decimals() public view virtual override returns (uint8) { return 18; } /** * @dev See {IERC20-totalSupply}. */ function totalSupply() public view virtual override returns (uint256) { return _totalSupply; } /** * @dev See {IERC20-balanceOf}. */ function balanceOf(address account) public view virtual override returns (uint256) { return _balances[account]; } /** * @dev See {IERC20-transfer}. * * Requirements: * * - `recipient` cannot be the zero address. * - the caller must have a balance of at least `amount`. */ function transfer(address recipient, uint256 amount) public virtual override returns (bool) { _transfer(_msgSender(), recipient, amount); return true; } /** * @dev See {IERC20-allowance}. */ function allowance(address owner, address spender) public view virtual override returns (uint256) { return _allowances[owner][spender]; } /** * @dev See {IERC20-approve}. * * Requirements: * * - `spender` cannot be the zero address. */ function approve(address spender, uint256 amount) public virtual override returns (bool) { _approve(_msgSender(), spender, amount); return true; } /** * @dev See {IERC20-transferFrom}. * * Emits an {Approval} event indicating the updated allowance. This is not * required by the EIP. See the note at the beginning of {ERC20}. * * Requirements: * * - `sender` and `recipient` cannot be the zero address. * - `sender` must have a balance of at least `amount`. * - the caller must have allowance for ``sender``'s tokens of at least * `amount`. */ function transferFrom( address sender, address recipient, uint256 amount ) public virtual override returns (bool) { _transfer(sender, recipient, amount); uint256 currentAllowance = _allowances[sender][_msgSender()]; require(currentAllowance >= amount, "ERC20: transfer amount exceeds allowance"); unchecked { _approve(sender, _msgSender(), currentAllowance - amount); } return true; } /** * @dev Atomically increases the allowance granted to `spender` by the caller. * * This is an alternative to {approve} that can be used as a mitigation for * problems described in {IERC20-approve}. * * Emits an {Approval} event indicating the updated allowance. * * Requirements: * * - `spender` cannot be the zero address. */ function increaseAllowance(address spender, uint256 addedValue) public virtual returns (bool) { _approve(_msgSender(), spender, _allowances[_msgSender()][spender] + addedValue); return true; } /** * @dev Atomically decreases the allowance granted to `spender` by the caller. * * This is an alternative to {approve} that can be used as a mitigation for * problems described in {IERC20-approve}. * * Emits an {Approval} event indicating the updated allowance. * * Requirements: * * - `spender` cannot be the zero address. * - `spender` must have allowance for the caller of at least * `subtractedValue`. */ function decreaseAllowance(address spender, uint256 subtractedValue) public virtual returns (bool) { uint256 currentAllowance = _allowances[_msgSender()][spender]; require(currentAllowance >= subtractedValue, "ERC20: decreased allowance below zero"); unchecked { _approve(_msgSender(), spender, currentAllowance - subtractedValue); } return true; } /** * @dev Moves `amount` of tokens from `sender` to `recipient`. * * This internal function is equivalent to {transfer}, and can be used to * e.g. implement automatic token fees, slashing mechanisms, etc. * * Emits a {Transfer} event. * * Requirements: * * - `sender` cannot be the zero address. * - `recipient` cannot be the zero address. * - `sender` must have a balance of at least `amount`. */ 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"); _beforeTokenTransfer(sender, recipient, amount); uint256 senderBalance = _balances[sender]; require(senderBalance >= amount, "ERC20: transfer amount exceeds balance"); unchecked { _balances[sender] = senderBalance - amount; } _balances[recipient] += amount; emit Transfer(sender, recipient, amount); _afterTokenTransfer(sender, recipient, amount); } /** @dev Creates `amount` tokens and assigns them to `account`, increasing * the total supply. * * Emits a {Transfer} event with `from` set to the zero address. * * Requirements: * * - `account` cannot be the zero address. */ function _mint(address account, uint256 amount) internal virtual { require(account != address(0), "ERC20: mint to the zero address"); _beforeTokenTransfer(address(0), account, amount); _totalSupply += amount; _balances[account] += amount; emit Mint(account, amount); emit Transfer(address(0), account, amount); _afterTokenTransfer(address(0), account, amount); } /** * @dev Sets `amount` as the allowance of `spender` over the `owner` s tokens. * * This internal function is equivalent to `approve`, and can be used to * e.g. set automatic allowances for certain subsystems, etc. * * Emits an {Approval} event. * * Requirements: * * - `owner` cannot be the zero address. * - `spender` cannot be the zero address. */ 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); } /** * @dev Hook that is called before any transfer of tokens. This includes * minting and burning. * * Calling conditions: * * - when `from` and `to` are both non-zero, `amount` of ``from``'s tokens * will be transferred to `to`. * - when `from` is zero, `amount` tokens will be minted for `to`. * - when `to` is zero, `amount` of ``from``'s tokens will be burned. * - `from` and `to` are never both zero. * * To learn more about hooks, head to xref:ROOT:extending-contracts.adoc#using-hooks[Using Hooks]. */ function _beforeTokenTransfer( address from, address to, uint256 amount ) internal virtual {} /** * @dev Hook that is called after any transfer of tokens. This includes * minting and burning. * * Calling conditions: * * - when `from` and `to` are both non-zero, `amount` of ``from``'s tokens * has been transferred to `to`. * - when `from` is zero, `amount` tokens have been minted for `to`. * - when `to` is zero, `amount` of ``from``'s tokens have been burned. * - `from` and `to` are never both zero. * * To learn more about hooks, head to xref:ROOT:extending-contracts.adoc#using-hooks[Using Hooks]. */ function _afterTokenTransfer( address from, address to, uint256 amount ) internal virtual {} } // OpenZeppelin Contracts v4.3.2 (token/ERC20/extensions/ERC20Capped.sol) /** * @dev Extension of {ERC20} that adds a cap to the supply of tokens. */ abstract contract ERC20Capped is ERC20 { uint256 private immutable _cap; /** * @dev Sets the value of the `cap`. This value is immutable, it can only be * set once during construction. */ constructor(uint256 cap_) { require(cap_ > 0, "ERC20Capped: cap is 0"); _cap = cap_; } /** * @dev Returns the cap on the token's total supply. */ function cap() public view virtual returns (uint256) { return _cap; } /** * @dev See {ERC20-_mint}. */ function _mint(address account, uint256 amount) internal virtual override { require(ERC20.totalSupply() + amount <= cap(), "ERC20Capped: cap exceeded"); super._mint(account, amount); } } // OpenZeppelin Contracts v4.3.2 (access/Ownable.sol) /** * @dev Contract module which provides a basic access control mechanism, where * there is an account (an owner) that can be granted exclusive access to * specific functions. * * By default, the owner account will be the one that deploys the contract. This * can later be changed with {transferOwnership}. * * This module is used through inheritance. It will make available the modifier * `onlyOwner`, which can be applied to your functions to restrict their use to * the owner. */ abstract contract Ownable is Context { address private _owner; event OwnershipTransferred(address indexed previousOwner, address indexed newOwner); /** * @dev Initializes the contract setting the deployer as the initial owner. */ constructor() { _transferOwnership(_msgSender()); } /** * @dev Returns the address of the current owner. */ function owner() public view virtual returns (address) { return _owner; } /** * @dev Throws if called by any account other than the owner. */ modifier onlyOwner() { require(owner() == _msgSender(), "Ownable: caller is not the owner"); _; } /** * @dev Leaves the contract without owner. It will not be possible to call * `onlyOwner` functions anymore. Can only be called by the current owner. * * NOTE: Renouncing ownership will leave the contract without an owner, * thereby removing any functionality that is only available to the owner. */ function renounceOwnership() public virtual onlyOwner { _transferOwnership(address(0)); } /** * @dev Transfers ownership of the contract to a new account (`newOwner`). * Can only be called by the current owner. */ function transferOwnership(address newOwner) public virtual onlyOwner { require(newOwner != address(0), "Ownable: new owner is the zero address"); _transferOwnership(newOwner); } /** * @dev Transfers ownership of the contract to a new account (`newOwner`). * Internal function without access restriction. */ function _transferOwnership(address newOwner) internal virtual { address oldOwner = _owner; _owner = newOwner; emit OwnershipTransferred(oldOwner, newOwner); } } contract Membership is Context { address private owner; event MembershipChanged(address indexed owner, uint256 level); event OwnerTransferred(address indexed preOwner, address indexed newOwner); mapping(address => uint256) internal membership; constructor() { owner = _msgSender(); setMembership(_msgSender(), 1); } function transferOwner(address newOwner) public onlyOwner { address preOwner = owner; setMembership(newOwner, 1); setMembership(preOwner, 0); owner = newOwner; emit OwnerTransferred(preOwner, newOwner); } function setMembership(address key, uint256 level) public onlyOwner { membership[key] = level; emit MembershipChanged(key, level); } modifier onlyOwner() { require(isOwner(), "Membership : caller is not the owner"); _; } function isOwner() public view returns (bool) { return _msgSender() == owner; } modifier onlyAdmin() { require(isAdmin(), "Membership : caller is not a admin"); _; } function isAdmin() public view returns (bool) { return membership[_msgSender()] == 1; } modifier onlyClaimant() { require(isClaimant(), "Memberhsip : caller is not a claimant"); _; } function isClaimant() public view returns (bool) { return membership[_msgSender()] == 11; } function getMembership(address account) public view returns (uint256){ return membership[account]; } } contract LOKA is ERC20Capped, Ownable { constructor( string memory name, string memory symbol, uint256 cap ) ERC20(name, symbol) ERC20Capped(cap) { } function mint(address addr, uint256 amount) public onlyOwner { _mint(addr, amount); } function retain(address addr, uint256 amount, uint256 strtd, uint256 trm, uint256 tms) public onlyOwner { _mint(addr, amount); Claimant(addr).initialize(strtd, trm, tms); } mapping(address => uint256) private _allocates; function _allocate(address addr, uint256 amount) internal virtual { _allocates[addr] += amount; } function allocate(address addr, uint256 amount) public onlyOwner { _allocate(addr, amount); } function allocateOf(address account) public view virtual returns (uint256) { return _allocates[account]; } function take(address addr, uint256 amount) public { address sender = _msgSender(); require(_allocates[sender]>=amount, "TokenVesting: No takable amount"); _allocates[sender] -= amount; _mint(addr, amount); } } contract Claimant is Membership { LOKA public token; uint256 public started; uint256 public claimed; uint256 public term; uint256 public times; constructor(LOKA _token) Membership() { token = _token; } function initialize(uint256 strtd, uint256 trm, uint256 tms) public onlyAdmin { started = strtd; term = trm; times = tms; } function register(address m) public onlyAdmin { setMembership(m, 11); } function claimable() public view returns (uint256){ require(block.timestamp > started, "TokenVesting: Not claimable"); uint256 sequence = (block.timestamp - started) / term; ++sequence; if(sequence>times) sequence = times; uint256 unlocked = sequence * (totalAmount() / times); return unlocked - claimed; } function claim() public onlyClaimant { uint256 amount = claimable(); require(amount > 0, "TokenVesting: No claimable amount"); claimed += amount; token.transfer(_msgSender(), amount); } function totalClaimed() public view returns (uint256) { return claimed; } function totalAmount() public view returns (uint256) { return token.balanceOf(address(this))+claimed; } function getStarted() public view returns (uint256) { return started; } function getTerm() public view returns (uint256) { return term; } function getBlockTimestamp() public view returns (uint256) { return block.timestamp; } }
Contract Security Audit
- No Contract Security Audit Submitted- Submit Audit Here
[{"inputs":[{"internalType":"string","name":"name","type":"string"},{"internalType":"string","name":"symbol","type":"string"},{"internalType":"uint256","name":"cap","type":"uint256"}],"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":"value","type":"uint256"}],"name":"Approval","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"to","type":"address"},{"indexed":false,"internalType":"uint256","name":"value","type":"uint256"}],"name":"Mint","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":"addr","type":"address"},{"internalType":"uint256","name":"amount","type":"uint256"}],"name":"allocate","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"account","type":"address"}],"name":"allocateOf","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","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":[],"name":"cap","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":[{"internalType":"address","name":"addr","type":"address"},{"internalType":"uint256","name":"amount","type":"uint256"}],"name":"mint","outputs":[],"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":[{"internalType":"address","name":"addr","type":"address"},{"internalType":"uint256","name":"amount","type":"uint256"},{"internalType":"uint256","name":"strtd","type":"uint256"},{"internalType":"uint256","name":"trm","type":"uint256"},{"internalType":"uint256","name":"tms","type":"uint256"}],"name":"retain","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"symbol","outputs":[{"internalType":"string","name":"","type":"string"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"addr","type":"address"},{"internalType":"uint256","name":"amount","type":"uint256"}],"name":"take","outputs":[],"stateMutability":"nonpayable","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
60a06040523480156200001157600080fd5b50604051620026b0380380620026b083398181016040528101906200003791906200043c565b808383816003908051906020019062000052929190620001b4565b5080600490805190602001906200006b929190620001b4565b50505060008111620000b4576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401620000ab9062000537565b60405180910390fd5b806080818152505050620000dd620000d1620000e660201b60201c565b620000ee60201b60201c565b505050620005be565b600033905090565b6000600560009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16905081600560006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055508173ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a35050565b828054620001c29062000588565b90600052602060002090601f016020900481019282620001e6576000855562000232565b82601f106200020157805160ff191683800117855562000232565b8280016001018555821562000232579182015b828111156200023157825182559160200191906001019062000214565b5b50905062000241919062000245565b5090565b5b808211156200026057600081600090555060010162000246565b5090565b6000604051905090565b600080fd5b600080fd5b600080fd5b600080fd5b6000601f19601f8301169050919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b620002cd8262000282565b810181811067ffffffffffffffff82111715620002ef57620002ee62000293565b5b80604052505050565b60006200030462000264565b9050620003128282620002c2565b919050565b600067ffffffffffffffff82111562000335576200033462000293565b5b620003408262000282565b9050602081019050919050565b60005b838110156200036d57808201518184015260208101905062000350565b838111156200037d576000848401525b50505050565b60006200039a620003948462000317565b620002f8565b905082815260208101848484011115620003b957620003b86200027d565b5b620003c68482856200034d565b509392505050565b600082601f830112620003e657620003e562000278565b5b8151620003f884826020860162000383565b91505092915050565b6000819050919050565b620004168162000401565b81146200042257600080fd5b50565b60008151905062000436816200040b565b92915050565b6000806000606084860312156200045857620004576200026e565b5b600084015167ffffffffffffffff81111562000479576200047862000273565b5b6200048786828701620003ce565b935050602084015167ffffffffffffffff811115620004ab57620004aa62000273565b5b620004b986828701620003ce565b9250506040620004cc8682870162000425565b9150509250925092565b600082825260208201905092915050565b7f45524332304361707065643a2063617020697320300000000000000000000000600082015250565b60006200051f601583620004d6565b91506200052c82620004e7565b602082019050919050565b60006020820190508181036000830152620005528162000510565b9050919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052602260045260246000fd5b60006002820490506001821680620005a157607f821691505b60208210811415620005b857620005b762000559565b5b50919050565b6080516120d6620005da60003960006106fe01526120d66000f3fe608060405234801561001057600080fd5b506004361061012b5760003560e01c806352180208116100ad578063a457c2d711610071578063a457c2d714610332578063a9059cbb14610362578063b78b52df14610392578063dd62ed3e146103ae578063f2fde38b146103de5761012b565b806352180208146102a057806370a08231146102bc578063715018a6146102ec5780638da5cb5b146102f657806395d89b41146103145761012b565b806323b872dd116100f457806323b872dd146101e8578063313ce56714610218578063355274ea14610236578063395093511461025457806340c10f19146102845761012b565b806242d17c14610130578063044146871461016057806306fdde031461017c578063095ea7b31461019a57806318160ddd146101ca575b600080fd5b61014a600480360381019061014591906115e2565b6103fa565b6040516101579190611628565b60405180910390f35b61017a6004803603810190610175919061166f565b610443565b005b61018461053f565b6040516101919190611783565b60405180910390f35b6101b460048036038101906101af91906117a5565b6105d1565b6040516101c19190611800565b60405180910390f35b6101d26105ef565b6040516101df9190611628565b60405180910390f35b61020260048036038101906101fd919061181b565b6105f9565b60405161020f9190611800565b60405180910390f35b6102206106f1565b60405161022d919061188a565b60405180910390f35b61023e6106fa565b60405161024b9190611628565b60405180910390f35b61026e600480360381019061026991906117a5565b610722565b60405161027b9190611800565b60405180910390f35b61029e600480360381019061029991906117a5565b6107ce565b005b6102ba60048036038101906102b591906117a5565b610858565b005b6102d660048036038101906102d191906115e2565b61094b565b6040516102e39190611628565b60405180910390f35b6102f4610993565b005b6102fe610a1b565b60405161030b91906118b4565b60405180910390f35b61031c610a45565b6040516103299190611783565b60405180910390f35b61034c600480360381019061034791906117a5565b610ad7565b6040516103599190611800565b60405180910390f35b61037c600480360381019061037791906117a5565b610bc2565b6040516103899190611800565b60405180910390f35b6103ac60048036038101906103a791906117a5565b610be0565b005b6103c860048036038101906103c391906118cf565b610c6a565b6040516103d59190611628565b60405180910390f35b6103f860048036038101906103f391906115e2565b610cf1565b005b6000600660008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020549050919050565b61044b610de9565b73ffffffffffffffffffffffffffffffffffffffff16610469610a1b565b73ffffffffffffffffffffffffffffffffffffffff16146104bf576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016104b69061195b565b60405180910390fd5b6104c98585610df1565b8473ffffffffffffffffffffffffffffffffffffffff166380d859118484846040518463ffffffff1660e01b81526004016105069392919061197b565b600060405180830381600087803b15801561052057600080fd5b505af1158015610534573d6000803e3d6000fd5b505050505050505050565b60606003805461054e906119e1565b80601f016020809104026020016040519081016040528092919081815260200182805461057a906119e1565b80156105c75780601f1061059c576101008083540402835291602001916105c7565b820191906000526020600020905b8154815290600101906020018083116105aa57829003601f168201915b5050505050905090565b60006105e56105de610de9565b8484610e5b565b6001905092915050565b6000600254905090565b6000610606848484611026565b6000600160008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206000610651610de9565b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020549050828110156106d1576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016106c890611a85565b60405180910390fd5b6106e5856106dd610de9565b858403610e5b565b60019150509392505050565b60006012905090565b60007f0000000000000000000000000000000000000000000000000000000000000000905090565b60006107c461072f610de9565b84846001600061073d610de9565b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008873ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020546107bf9190611ad4565b610e5b565b6001905092915050565b6107d6610de9565b73ffffffffffffffffffffffffffffffffffffffff166107f4610a1b565b73ffffffffffffffffffffffffffffffffffffffff161461084a576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016108419061195b565b60405180910390fd5b6108548282610df1565b5050565b6000610862610de9565b905081600660008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205410156108e6576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016108dd90611b76565b60405180910390fd5b81600660008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008282546109359190611b96565b925050819055506109468383610df1565b505050565b60008060008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020549050919050565b61099b610de9565b73ffffffffffffffffffffffffffffffffffffffff166109b9610a1b565b73ffffffffffffffffffffffffffffffffffffffff1614610a0f576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610a069061195b565b60405180910390fd5b610a1960006112a7565b565b6000600560009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16905090565b606060048054610a54906119e1565b80601f0160208091040260200160405190810160405280929190818152602001828054610a80906119e1565b8015610acd5780601f10610aa257610100808354040283529160200191610acd565b820191906000526020600020905b815481529060010190602001808311610ab057829003601f168201915b5050505050905090565b60008060016000610ae6610de9565b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054905082811015610ba3576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610b9a90611c3c565b60405180910390fd5b610bb7610bae610de9565b85858403610e5b565b600191505092915050565b6000610bd6610bcf610de9565b8484611026565b6001905092915050565b610be8610de9565b73ffffffffffffffffffffffffffffffffffffffff16610c06610a1b565b73ffffffffffffffffffffffffffffffffffffffff1614610c5c576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610c539061195b565b60405180910390fd5b610c66828261136d565b5050565b6000600160008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054905092915050565b610cf9610de9565b73ffffffffffffffffffffffffffffffffffffffff16610d17610a1b565b73ffffffffffffffffffffffffffffffffffffffff1614610d6d576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610d649061195b565b60405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff161415610ddd576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610dd490611cce565b60405180910390fd5b610de6816112a7565b50565b600033905090565b610df96106fa565b81610e026105ef565b610e0c9190611ad4565b1115610e4d576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610e4490611d3a565b60405180910390fd5b610e5782826113c7565b5050565b600073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff161415610ecb576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610ec290611dcc565b60405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff161415610f3b576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610f3290611e5e565b60405180910390fd5b80600160008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508173ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925836040516110199190611628565b60405180910390a3505050565b600073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff161415611096576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161108d90611ef0565b60405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff161415611106576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016110fd90611f82565b60405180910390fd5b611111838383611575565b60008060008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054905081811015611197576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161118e90612014565b60405180910390fd5b8181036000808673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002081905550816000808573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600082825461122a9190611ad4565b925050819055508273ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef8460405161128e9190611628565b60405180910390a36112a184848461157a565b50505050565b6000600560009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16905081600560006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055508173ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a35050565b80600660008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008282546113bc9190611ad4565b925050819055505050565b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff161415611437576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161142e90612080565b60405180910390fd5b61144360008383611575565b80600260008282546114559190611ad4565b92505081905550806000808473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008282546114aa9190611ad4565b925050819055508173ffffffffffffffffffffffffffffffffffffffff167f0f6798a560793a54c3bcfe86a93cde1e73087d944c0ea20544137d4121396885826040516114f79190611628565b60405180910390a28173ffffffffffffffffffffffffffffffffffffffff16600073ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef8360405161155d9190611628565b60405180910390a36115716000838361157a565b5050565b505050565b505050565b600080fd5b600073ffffffffffffffffffffffffffffffffffffffff82169050919050565b60006115af82611584565b9050919050565b6115bf816115a4565b81146115ca57600080fd5b50565b6000813590506115dc816115b6565b92915050565b6000602082840312156115f8576115f761157f565b5b6000611606848285016115cd565b91505092915050565b6000819050919050565b6116228161160f565b82525050565b600060208201905061163d6000830184611619565b92915050565b61164c8161160f565b811461165757600080fd5b50565b60008135905061166981611643565b92915050565b600080600080600060a0868803121561168b5761168a61157f565b5b6000611699888289016115cd565b95505060206116aa8882890161165a565b94505060406116bb8882890161165a565b93505060606116cc8882890161165a565b92505060806116dd8882890161165a565b9150509295509295909350565b600081519050919050565b600082825260208201905092915050565b60005b83811015611724578082015181840152602081019050611709565b83811115611733576000848401525b50505050565b6000601f19601f8301169050919050565b6000611755826116ea565b61175f81856116f5565b935061176f818560208601611706565b61177881611739565b840191505092915050565b6000602082019050818103600083015261179d818461174a565b905092915050565b600080604083850312156117bc576117bb61157f565b5b60006117ca858286016115cd565b92505060206117db8582860161165a565b9150509250929050565b60008115159050919050565b6117fa816117e5565b82525050565b600060208201905061181560008301846117f1565b92915050565b6000806000606084860312156118345761183361157f565b5b6000611842868287016115cd565b9350506020611853868287016115cd565b92505060406118648682870161165a565b9150509250925092565b600060ff82169050919050565b6118848161186e565b82525050565b600060208201905061189f600083018461187b565b92915050565b6118ae816115a4565b82525050565b60006020820190506118c960008301846118a5565b92915050565b600080604083850312156118e6576118e561157f565b5b60006118f4858286016115cd565b9250506020611905858286016115cd565b9150509250929050565b7f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572600082015250565b60006119456020836116f5565b91506119508261190f565b602082019050919050565b6000602082019050818103600083015261197481611938565b9050919050565b60006060820190506119906000830186611619565b61199d6020830185611619565b6119aa6040830184611619565b949350505050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052602260045260246000fd5b600060028204905060018216806119f957607f821691505b60208210811415611a0d57611a0c6119b2565b5b50919050565b7f45524332303a207472616e7366657220616d6f756e742065786365656473206160008201527f6c6c6f77616e6365000000000000000000000000000000000000000000000000602082015250565b6000611a6f6028836116f5565b9150611a7a82611a13565b604082019050919050565b60006020820190508181036000830152611a9e81611a62565b9050919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b6000611adf8261160f565b9150611aea8361160f565b9250827fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff03821115611b1f57611b1e611aa5565b5b828201905092915050565b7f546f6b656e56657374696e673a204e6f2074616b61626c6520616d6f756e7400600082015250565b6000611b60601f836116f5565b9150611b6b82611b2a565b602082019050919050565b60006020820190508181036000830152611b8f81611b53565b9050919050565b6000611ba18261160f565b9150611bac8361160f565b925082821015611bbf57611bbe611aa5565b5b828203905092915050565b7f45524332303a2064656372656173656420616c6c6f77616e63652062656c6f7760008201527f207a65726f000000000000000000000000000000000000000000000000000000602082015250565b6000611c266025836116f5565b9150611c3182611bca565b604082019050919050565b60006020820190508181036000830152611c5581611c19565b9050919050565b7f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160008201527f6464726573730000000000000000000000000000000000000000000000000000602082015250565b6000611cb86026836116f5565b9150611cc382611c5c565b604082019050919050565b60006020820190508181036000830152611ce781611cab565b9050919050565b7f45524332304361707065643a2063617020657863656564656400000000000000600082015250565b6000611d246019836116f5565b9150611d2f82611cee565b602082019050919050565b60006020820190508181036000830152611d5381611d17565b9050919050565b7f45524332303a20617070726f76652066726f6d20746865207a65726f2061646460008201527f7265737300000000000000000000000000000000000000000000000000000000602082015250565b6000611db66024836116f5565b9150611dc182611d5a565b604082019050919050565b60006020820190508181036000830152611de581611da9565b9050919050565b7f45524332303a20617070726f766520746f20746865207a65726f20616464726560008201527f7373000000000000000000000000000000000000000000000000000000000000602082015250565b6000611e486022836116f5565b9150611e5382611dec565b604082019050919050565b60006020820190508181036000830152611e7781611e3b565b9050919050565b7f45524332303a207472616e736665722066726f6d20746865207a65726f20616460008201527f6472657373000000000000000000000000000000000000000000000000000000602082015250565b6000611eda6025836116f5565b9150611ee582611e7e565b604082019050919050565b60006020820190508181036000830152611f0981611ecd565b9050919050565b7f45524332303a207472616e7366657220746f20746865207a65726f206164647260008201527f6573730000000000000000000000000000000000000000000000000000000000602082015250565b6000611f6c6023836116f5565b9150611f7782611f10565b604082019050919050565b60006020820190508181036000830152611f9b81611f5f565b9050919050565b7f45524332303a207472616e7366657220616d6f756e742065786365656473206260008201527f616c616e63650000000000000000000000000000000000000000000000000000602082015250565b6000611ffe6026836116f5565b915061200982611fa2565b604082019050919050565b6000602082019050818103600083015261202d81611ff1565b9050919050565b7f45524332303a206d696e7420746f20746865207a65726f206164647265737300600082015250565b600061206a601f836116f5565b915061207582612034565b602082019050919050565b600060208201905081810360008301526120998161205d565b905091905056fea2646970667358221220357e690451ddc734a8d73ddd0465c936d8fdb043b8967b2dd588aa7667b2dfdb64736f6c634300080a0033000000000000000000000000000000000000000000000000000000000000006000000000000000000000000000000000000000000000000000000000000000a00000000000000000000000000000000000000000019d971e4fe8401e7400000000000000000000000000000000000000000000000000000000000000000000184c6561677565206f66204b696e67646f6d73204172656e61000000000000000000000000000000000000000000000000000000000000000000000000000000044c4f4b4100000000000000000000000000000000000000000000000000000000
Deployed Bytecode
0x608060405234801561001057600080fd5b506004361061012b5760003560e01c806352180208116100ad578063a457c2d711610071578063a457c2d714610332578063a9059cbb14610362578063b78b52df14610392578063dd62ed3e146103ae578063f2fde38b146103de5761012b565b806352180208146102a057806370a08231146102bc578063715018a6146102ec5780638da5cb5b146102f657806395d89b41146103145761012b565b806323b872dd116100f457806323b872dd146101e8578063313ce56714610218578063355274ea14610236578063395093511461025457806340c10f19146102845761012b565b806242d17c14610130578063044146871461016057806306fdde031461017c578063095ea7b31461019a57806318160ddd146101ca575b600080fd5b61014a600480360381019061014591906115e2565b6103fa565b6040516101579190611628565b60405180910390f35b61017a6004803603810190610175919061166f565b610443565b005b61018461053f565b6040516101919190611783565b60405180910390f35b6101b460048036038101906101af91906117a5565b6105d1565b6040516101c19190611800565b60405180910390f35b6101d26105ef565b6040516101df9190611628565b60405180910390f35b61020260048036038101906101fd919061181b565b6105f9565b60405161020f9190611800565b60405180910390f35b6102206106f1565b60405161022d919061188a565b60405180910390f35b61023e6106fa565b60405161024b9190611628565b60405180910390f35b61026e600480360381019061026991906117a5565b610722565b60405161027b9190611800565b60405180910390f35b61029e600480360381019061029991906117a5565b6107ce565b005b6102ba60048036038101906102b591906117a5565b610858565b005b6102d660048036038101906102d191906115e2565b61094b565b6040516102e39190611628565b60405180910390f35b6102f4610993565b005b6102fe610a1b565b60405161030b91906118b4565b60405180910390f35b61031c610a45565b6040516103299190611783565b60405180910390f35b61034c600480360381019061034791906117a5565b610ad7565b6040516103599190611800565b60405180910390f35b61037c600480360381019061037791906117a5565b610bc2565b6040516103899190611800565b60405180910390f35b6103ac60048036038101906103a791906117a5565b610be0565b005b6103c860048036038101906103c391906118cf565b610c6a565b6040516103d59190611628565b60405180910390f35b6103f860048036038101906103f391906115e2565b610cf1565b005b6000600660008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020549050919050565b61044b610de9565b73ffffffffffffffffffffffffffffffffffffffff16610469610a1b565b73ffffffffffffffffffffffffffffffffffffffff16146104bf576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016104b69061195b565b60405180910390fd5b6104c98585610df1565b8473ffffffffffffffffffffffffffffffffffffffff166380d859118484846040518463ffffffff1660e01b81526004016105069392919061197b565b600060405180830381600087803b15801561052057600080fd5b505af1158015610534573d6000803e3d6000fd5b505050505050505050565b60606003805461054e906119e1565b80601f016020809104026020016040519081016040528092919081815260200182805461057a906119e1565b80156105c75780601f1061059c576101008083540402835291602001916105c7565b820191906000526020600020905b8154815290600101906020018083116105aa57829003601f168201915b5050505050905090565b60006105e56105de610de9565b8484610e5b565b6001905092915050565b6000600254905090565b6000610606848484611026565b6000600160008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206000610651610de9565b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020549050828110156106d1576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016106c890611a85565b60405180910390fd5b6106e5856106dd610de9565b858403610e5b565b60019150509392505050565b60006012905090565b60007f0000000000000000000000000000000000000000019d971e4fe8401e74000000905090565b60006107c461072f610de9565b84846001600061073d610de9565b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008873ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020546107bf9190611ad4565b610e5b565b6001905092915050565b6107d6610de9565b73ffffffffffffffffffffffffffffffffffffffff166107f4610a1b565b73ffffffffffffffffffffffffffffffffffffffff161461084a576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016108419061195b565b60405180910390fd5b6108548282610df1565b5050565b6000610862610de9565b905081600660008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205410156108e6576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016108dd90611b76565b60405180910390fd5b81600660008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008282546109359190611b96565b925050819055506109468383610df1565b505050565b60008060008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020549050919050565b61099b610de9565b73ffffffffffffffffffffffffffffffffffffffff166109b9610a1b565b73ffffffffffffffffffffffffffffffffffffffff1614610a0f576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610a069061195b565b60405180910390fd5b610a1960006112a7565b565b6000600560009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16905090565b606060048054610a54906119e1565b80601f0160208091040260200160405190810160405280929190818152602001828054610a80906119e1565b8015610acd5780601f10610aa257610100808354040283529160200191610acd565b820191906000526020600020905b815481529060010190602001808311610ab057829003601f168201915b5050505050905090565b60008060016000610ae6610de9565b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054905082811015610ba3576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610b9a90611c3c565b60405180910390fd5b610bb7610bae610de9565b85858403610e5b565b600191505092915050565b6000610bd6610bcf610de9565b8484611026565b6001905092915050565b610be8610de9565b73ffffffffffffffffffffffffffffffffffffffff16610c06610a1b565b73ffffffffffffffffffffffffffffffffffffffff1614610c5c576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610c539061195b565b60405180910390fd5b610c66828261136d565b5050565b6000600160008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054905092915050565b610cf9610de9565b73ffffffffffffffffffffffffffffffffffffffff16610d17610a1b565b73ffffffffffffffffffffffffffffffffffffffff1614610d6d576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610d649061195b565b60405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff161415610ddd576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610dd490611cce565b60405180910390fd5b610de6816112a7565b50565b600033905090565b610df96106fa565b81610e026105ef565b610e0c9190611ad4565b1115610e4d576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610e4490611d3a565b60405180910390fd5b610e5782826113c7565b5050565b600073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff161415610ecb576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610ec290611dcc565b60405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff161415610f3b576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610f3290611e5e565b60405180910390fd5b80600160008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508173ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925836040516110199190611628565b60405180910390a3505050565b600073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff161415611096576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161108d90611ef0565b60405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff161415611106576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016110fd90611f82565b60405180910390fd5b611111838383611575565b60008060008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054905081811015611197576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161118e90612014565b60405180910390fd5b8181036000808673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002081905550816000808573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600082825461122a9190611ad4565b925050819055508273ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef8460405161128e9190611628565b60405180910390a36112a184848461157a565b50505050565b6000600560009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16905081600560006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055508173ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a35050565b80600660008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008282546113bc9190611ad4565b925050819055505050565b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff161415611437576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161142e90612080565b60405180910390fd5b61144360008383611575565b80600260008282546114559190611ad4565b92505081905550806000808473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008282546114aa9190611ad4565b925050819055508173ffffffffffffffffffffffffffffffffffffffff167f0f6798a560793a54c3bcfe86a93cde1e73087d944c0ea20544137d4121396885826040516114f79190611628565b60405180910390a28173ffffffffffffffffffffffffffffffffffffffff16600073ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef8360405161155d9190611628565b60405180910390a36115716000838361157a565b5050565b505050565b505050565b600080fd5b600073ffffffffffffffffffffffffffffffffffffffff82169050919050565b60006115af82611584565b9050919050565b6115bf816115a4565b81146115ca57600080fd5b50565b6000813590506115dc816115b6565b92915050565b6000602082840312156115f8576115f761157f565b5b6000611606848285016115cd565b91505092915050565b6000819050919050565b6116228161160f565b82525050565b600060208201905061163d6000830184611619565b92915050565b61164c8161160f565b811461165757600080fd5b50565b60008135905061166981611643565b92915050565b600080600080600060a0868803121561168b5761168a61157f565b5b6000611699888289016115cd565b95505060206116aa8882890161165a565b94505060406116bb8882890161165a565b93505060606116cc8882890161165a565b92505060806116dd8882890161165a565b9150509295509295909350565b600081519050919050565b600082825260208201905092915050565b60005b83811015611724578082015181840152602081019050611709565b83811115611733576000848401525b50505050565b6000601f19601f8301169050919050565b6000611755826116ea565b61175f81856116f5565b935061176f818560208601611706565b61177881611739565b840191505092915050565b6000602082019050818103600083015261179d818461174a565b905092915050565b600080604083850312156117bc576117bb61157f565b5b60006117ca858286016115cd565b92505060206117db8582860161165a565b9150509250929050565b60008115159050919050565b6117fa816117e5565b82525050565b600060208201905061181560008301846117f1565b92915050565b6000806000606084860312156118345761183361157f565b5b6000611842868287016115cd565b9350506020611853868287016115cd565b92505060406118648682870161165a565b9150509250925092565b600060ff82169050919050565b6118848161186e565b82525050565b600060208201905061189f600083018461187b565b92915050565b6118ae816115a4565b82525050565b60006020820190506118c960008301846118a5565b92915050565b600080604083850312156118e6576118e561157f565b5b60006118f4858286016115cd565b9250506020611905858286016115cd565b9150509250929050565b7f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572600082015250565b60006119456020836116f5565b91506119508261190f565b602082019050919050565b6000602082019050818103600083015261197481611938565b9050919050565b60006060820190506119906000830186611619565b61199d6020830185611619565b6119aa6040830184611619565b949350505050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052602260045260246000fd5b600060028204905060018216806119f957607f821691505b60208210811415611a0d57611a0c6119b2565b5b50919050565b7f45524332303a207472616e7366657220616d6f756e742065786365656473206160008201527f6c6c6f77616e6365000000000000000000000000000000000000000000000000602082015250565b6000611a6f6028836116f5565b9150611a7a82611a13565b604082019050919050565b60006020820190508181036000830152611a9e81611a62565b9050919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b6000611adf8261160f565b9150611aea8361160f565b9250827fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff03821115611b1f57611b1e611aa5565b5b828201905092915050565b7f546f6b656e56657374696e673a204e6f2074616b61626c6520616d6f756e7400600082015250565b6000611b60601f836116f5565b9150611b6b82611b2a565b602082019050919050565b60006020820190508181036000830152611b8f81611b53565b9050919050565b6000611ba18261160f565b9150611bac8361160f565b925082821015611bbf57611bbe611aa5565b5b828203905092915050565b7f45524332303a2064656372656173656420616c6c6f77616e63652062656c6f7760008201527f207a65726f000000000000000000000000000000000000000000000000000000602082015250565b6000611c266025836116f5565b9150611c3182611bca565b604082019050919050565b60006020820190508181036000830152611c5581611c19565b9050919050565b7f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160008201527f6464726573730000000000000000000000000000000000000000000000000000602082015250565b6000611cb86026836116f5565b9150611cc382611c5c565b604082019050919050565b60006020820190508181036000830152611ce781611cab565b9050919050565b7f45524332304361707065643a2063617020657863656564656400000000000000600082015250565b6000611d246019836116f5565b9150611d2f82611cee565b602082019050919050565b60006020820190508181036000830152611d5381611d17565b9050919050565b7f45524332303a20617070726f76652066726f6d20746865207a65726f2061646460008201527f7265737300000000000000000000000000000000000000000000000000000000602082015250565b6000611db66024836116f5565b9150611dc182611d5a565b604082019050919050565b60006020820190508181036000830152611de581611da9565b9050919050565b7f45524332303a20617070726f766520746f20746865207a65726f20616464726560008201527f7373000000000000000000000000000000000000000000000000000000000000602082015250565b6000611e486022836116f5565b9150611e5382611dec565b604082019050919050565b60006020820190508181036000830152611e7781611e3b565b9050919050565b7f45524332303a207472616e736665722066726f6d20746865207a65726f20616460008201527f6472657373000000000000000000000000000000000000000000000000000000602082015250565b6000611eda6025836116f5565b9150611ee582611e7e565b604082019050919050565b60006020820190508181036000830152611f0981611ecd565b9050919050565b7f45524332303a207472616e7366657220746f20746865207a65726f206164647260008201527f6573730000000000000000000000000000000000000000000000000000000000602082015250565b6000611f6c6023836116f5565b9150611f7782611f10565b604082019050919050565b60006020820190508181036000830152611f9b81611f5f565b9050919050565b7f45524332303a207472616e7366657220616d6f756e742065786365656473206260008201527f616c616e63650000000000000000000000000000000000000000000000000000602082015250565b6000611ffe6026836116f5565b915061200982611fa2565b604082019050919050565b6000602082019050818103600083015261202d81611ff1565b9050919050565b7f45524332303a206d696e7420746f20746865207a65726f206164647265737300600082015250565b600061206a601f836116f5565b915061207582612034565b602082019050919050565b600060208201905081810360008301526120998161205d565b905091905056fea2646970667358221220357e690451ddc734a8d73ddd0465c936d8fdb043b8967b2dd588aa7667b2dfdb64736f6c634300080a0033
Constructor Arguments (ABI-Encoded and is the last bytes of the Contract Creation Code above)
000000000000000000000000000000000000000000000000000000000000006000000000000000000000000000000000000000000000000000000000000000a00000000000000000000000000000000000000000019d971e4fe8401e7400000000000000000000000000000000000000000000000000000000000000000000184c6561677565206f66204b696e67646f6d73204172656e61000000000000000000000000000000000000000000000000000000000000000000000000000000044c4f4b4100000000000000000000000000000000000000000000000000000000
-----Decoded View---------------
Arg [0] : name (string): League of Kingdoms Arena
Arg [1] : symbol (string): LOKA
Arg [2] : cap (uint256): 500000000000000000000000000
-----Encoded View---------------
7 Constructor Arguments found :
Arg [0] : 0000000000000000000000000000000000000000000000000000000000000060
Arg [1] : 00000000000000000000000000000000000000000000000000000000000000a0
Arg [2] : 0000000000000000000000000000000000000000019d971e4fe8401e74000000
Arg [3] : 0000000000000000000000000000000000000000000000000000000000000018
Arg [4] : 4c6561677565206f66204b696e67646f6d73204172656e610000000000000000
Arg [5] : 0000000000000000000000000000000000000000000000000000000000000004
Arg [6] : 4c4f4b4100000000000000000000000000000000000000000000000000000000
Deployed Bytecode Sourcemap
20359:1184:0:-:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;21165:120;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;20679:195;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;6289:100;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;8456:169;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;7409:108;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;9107:492;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;7251:93;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;15947:83;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;10008:215;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;20568:99;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;21291:249;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;7580:127;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;17929:103;;;:::i;:::-;;17278:87;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;6508:104;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;10726:413;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;7920:175;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;21052:107;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;8158:151;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;18187:201;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;21165:120;21231:7;21258:10;:19;21269:7;21258:19;;;;;;;;;;;;;;;;21251:26;;21165:120;;;:::o;20679:195::-;17509:12;:10;:12::i;:::-;17498:23;;:7;:5;:7::i;:::-;:23;;;17490:68;;;;;;;;;;;;:::i;:::-;;;;;;;;;20794:19:::1;20800:4;20806:6;20794:5;:19::i;:::-;20833:4;20824:25;;;20850:5;20857:3;20862;20824:42;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;::::0;::::1;;;;;;;;;20679:195:::0;;;;;:::o;6289:100::-;6343:13;6376:5;6369:12;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;6289:100;:::o;8456:169::-;8539:4;8556:39;8565:12;:10;:12::i;:::-;8579:7;8588:6;8556:8;:39::i;:::-;8613:4;8606:11;;8456:169;;;;:::o;7409:108::-;7470:7;7497:12;;7490:19;;7409:108;:::o;9107:492::-;9247:4;9264:36;9274:6;9282:9;9293:6;9264:9;:36::i;:::-;9313:24;9340:11;:19;9352:6;9340:19;;;;;;;;;;;;;;;:33;9360:12;:10;:12::i;:::-;9340:33;;;;;;;;;;;;;;;;9313:60;;9412:6;9392:16;:26;;9384:79;;;;;;;;;;;;:::i;:::-;;;;;;;;;9499:57;9508:6;9516:12;:10;:12::i;:::-;9549:6;9530:16;:25;9499:8;:57::i;:::-;9587:4;9580:11;;;9107:492;;;;;:::o;7251:93::-;7309:5;7334:2;7327:9;;7251:93;:::o;15947:83::-;15991:7;16018:4;16011:11;;15947:83;:::o;10008:215::-;10096:4;10113:80;10122:12;:10;:12::i;:::-;10136:7;10182:10;10145:11;:25;10157:12;:10;:12::i;:::-;10145:25;;;;;;;;;;;;;;;:34;10171:7;10145:34;;;;;;;;;;;;;;;;:47;;;;:::i;:::-;10113:8;:80::i;:::-;10211:4;10204:11;;10008:215;;;;:::o;20568:99::-;17509:12;:10;:12::i;:::-;17498:23;;:7;:5;:7::i;:::-;:23;;;17490:68;;;;;;;;;;;;:::i;:::-;;;;;;;;;20640:19:::1;20646:4;20652:6;20640:5;:19::i;:::-;20568:99:::0;;:::o;21291:249::-;21353:14;21370:12;:10;:12::i;:::-;21353:29;;21421:6;21401:10;:18;21412:6;21401:18;;;;;;;;;;;;;;;;:26;;21393:70;;;;;;;;;;;;:::i;:::-;;;;;;;;;21496:6;21474:10;:18;21485:6;21474:18;;;;;;;;;;;;;;;;:28;;;;;;;:::i;:::-;;;;;;;;21513:19;21519:4;21525:6;21513:5;:19::i;:::-;21342:198;21291:249;;:::o;7580:127::-;7654:7;7681:9;:18;7691:7;7681:18;;;;;;;;;;;;;;;;7674:25;;7580:127;;;:::o;17929:103::-;17509:12;:10;:12::i;:::-;17498:23;;:7;:5;:7::i;:::-;:23;;;17490:68;;;;;;;;;;;;:::i;:::-;;;;;;;;;17994:30:::1;18021:1;17994:18;:30::i;:::-;17929:103::o:0;17278:87::-;17324:7;17351:6;;;;;;;;;;;17344:13;;17278:87;:::o;6508:104::-;6564:13;6597:7;6590:14;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;6508:104;:::o;10726:413::-;10819:4;10836:24;10863:11;:25;10875:12;:10;:12::i;:::-;10863:25;;;;;;;;;;;;;;;:34;10889:7;10863:34;;;;;;;;;;;;;;;;10836:61;;10936:15;10916:16;:35;;10908:85;;;;;;;;;;;;:::i;:::-;;;;;;;;;11029:67;11038:12;:10;:12::i;:::-;11052:7;11080:15;11061:16;:34;11029:8;:67::i;:::-;11127:4;11120:11;;;10726:413;;;;:::o;7920:175::-;8006:4;8023:42;8033:12;:10;:12::i;:::-;8047:9;8058:6;8023:9;:42::i;:::-;8083:4;8076:11;;7920:175;;;;:::o;21052:107::-;17509:12;:10;:12::i;:::-;17498:23;;:7;:5;:7::i;:::-;:23;;;17490:68;;;;;;;;;;;;:::i;:::-;;;;;;;;;21128:23:::1;21138:4;21144:6;21128:9;:23::i;:::-;21052:107:::0;;:::o;8158:151::-;8247:7;8274:11;:18;8286:5;8274:18;;;;;;;;;;;;;;;:27;8293:7;8274:27;;;;;;;;;;;;;;;;8267:34;;8158:151;;;;:::o;18187:201::-;17509:12;:10;:12::i;:::-;17498:23;;:7;:5;:7::i;:::-;:23;;;17490:68;;;;;;;;;;;;:::i;:::-;;;;;;;;;18296:1:::1;18276:22;;:8;:22;;;;18268:73;;;;;;;;;;;;:::i;:::-;;;;;;;;;18352:28;18371:8;18352:18;:28::i;:::-;18187:201:::0;:::o;4146:98::-;4199:7;4226:10;4219:17;;4146:98;:::o;16088:207::-;16213:5;:3;:5::i;:::-;16203:6;16181:19;:17;:19::i;:::-;:28;;;;:::i;:::-;:37;;16173:75;;;;;;;;;;;;:::i;:::-;;;;;;;;;16259:28;16271:7;16280:6;16259:11;:28::i;:::-;16088:207;;:::o;13533:380::-;13686:1;13669:19;;:5;:19;;;;13661:68;;;;;;;;;;;;:::i;:::-;;;;;;;;;13767:1;13748:21;;:7;:21;;;;13740:68;;;;;;;;;;;;:::i;:::-;;;;;;;;;13851:6;13821:11;:18;13833:5;13821:18;;;;;;;;;;;;;;;:27;13840:7;13821:27;;;;;;;;;;;;;;;:36;;;;13889:7;13873:32;;13882:5;13873:32;;;13898:6;13873:32;;;;;;:::i;:::-;;;;;;;;13533:380;;;:::o;11629:733::-;11787:1;11769:20;;:6;:20;;;;11761:70;;;;;;;;;;;;:::i;:::-;;;;;;;;;11871:1;11850:23;;:9;:23;;;;11842:71;;;;;;;;;;;;:::i;:::-;;;;;;;;;11926:47;11947:6;11955:9;11966:6;11926:20;:47::i;:::-;11986:21;12010:9;:17;12020:6;12010:17;;;;;;;;;;;;;;;;11986:41;;12063:6;12046:13;:23;;12038:74;;;;;;;;;;;;:::i;:::-;;;;;;;;;12184:6;12168:13;:22;12148:9;:17;12158:6;12148:17;;;;;;;;;;;;;;;:42;;;;12236:6;12212:9;:20;12222:9;12212:20;;;;;;;;;;;;;;;;:30;;;;;;;:::i;:::-;;;;;;;;12277:9;12260:35;;12269:6;12260:35;;;12288:6;12260:35;;;;;;:::i;:::-;;;;;;;;12308:46;12328:6;12336:9;12347:6;12308:19;:46::i;:::-;11750:612;11629:733;;;:::o;18548:191::-;18622:16;18641:6;;;;;;;;;;;18622:25;;18667:8;18658:6;;:17;;;;;;;;;;;;;;;;;;18722:8;18691:40;;18712:8;18691:40;;;;;;;;;;;;18611:128;18548:191;:::o;20935:111::-;21032:6;21012:10;:16;21023:4;21012:16;;;;;;;;;;;;;;;;:26;;;;;;;:::i;:::-;;;;;;;;20935:111;;:::o;12649:446::-;12752:1;12733:21;;:7;:21;;;;12725:65;;;;;;;;;;;;:::i;:::-;;;;;;;;;12803:49;12832:1;12836:7;12845:6;12803:20;:49::i;:::-;12881:6;12865:12;;:22;;;;;;;:::i;:::-;;;;;;;;12920:6;12898:9;:18;12908:7;12898:18;;;;;;;;;;;;;;;;:28;;;;;;;:::i;:::-;;;;;;;;12957:7;12952:21;;;12966:6;12952:21;;;;;;:::i;:::-;;;;;;;;13010:7;12989:37;;13006:1;12989:37;;;13019:6;12989:37;;;;;;:::i;:::-;;;;;;;;13039:48;13067:1;13071:7;13080:6;13039:19;:48::i;:::-;12649:446;;:::o;14513:125::-;;;;:::o;15242:124::-;;;;:::o;88:117:1:-;197:1;194;187:12;334:126;371:7;411:42;404:5;400:54;389:65;;334:126;;;:::o;466:96::-;503:7;532:24;550:5;532:24;:::i;:::-;521:35;;466:96;;;:::o;568:122::-;641:24;659:5;641:24;:::i;:::-;634:5;631:35;621:63;;680:1;677;670:12;621:63;568:122;:::o;696:139::-;742:5;780:6;767:20;758:29;;796:33;823:5;796:33;:::i;:::-;696:139;;;;:::o;841:329::-;900:6;949:2;937:9;928:7;924:23;920:32;917:119;;;955:79;;:::i;:::-;917:119;1075:1;1100:53;1145:7;1136:6;1125:9;1121:22;1100:53;:::i;:::-;1090:63;;1046:117;841:329;;;;:::o;1176:77::-;1213:7;1242:5;1231:16;;1176:77;;;:::o;1259:118::-;1346:24;1364:5;1346:24;:::i;:::-;1341:3;1334:37;1259:118;;:::o;1383:222::-;1476:4;1514:2;1503:9;1499:18;1491:26;;1527:71;1595:1;1584:9;1580:17;1571:6;1527:71;:::i;:::-;1383:222;;;;:::o;1611:122::-;1684:24;1702:5;1684:24;:::i;:::-;1677:5;1674:35;1664:63;;1723:1;1720;1713:12;1664:63;1611:122;:::o;1739:139::-;1785:5;1823:6;1810:20;1801:29;;1839:33;1866:5;1839:33;:::i;:::-;1739:139;;;;:::o;1884:911::-;1979:6;1987;1995;2003;2011;2060:3;2048:9;2039:7;2035:23;2031:33;2028:120;;;2067:79;;:::i;:::-;2028:120;2187:1;2212:53;2257:7;2248:6;2237:9;2233:22;2212:53;:::i;:::-;2202:63;;2158:117;2314:2;2340:53;2385:7;2376:6;2365:9;2361:22;2340:53;:::i;:::-;2330:63;;2285:118;2442:2;2468:53;2513:7;2504:6;2493:9;2489:22;2468:53;:::i;:::-;2458:63;;2413:118;2570:2;2596:53;2641:7;2632:6;2621:9;2617:22;2596:53;:::i;:::-;2586:63;;2541:118;2698:3;2725:53;2770:7;2761:6;2750:9;2746:22;2725:53;:::i;:::-;2715:63;;2669:119;1884:911;;;;;;;;:::o;2801:99::-;2853:6;2887:5;2881:12;2871:22;;2801:99;;;:::o;2906:169::-;2990:11;3024:6;3019:3;3012:19;3064:4;3059:3;3055:14;3040:29;;2906:169;;;;:::o;3081:307::-;3149:1;3159:113;3173:6;3170:1;3167:13;3159:113;;;3258:1;3253:3;3249:11;3243:18;3239:1;3234:3;3230:11;3223:39;3195:2;3192:1;3188:10;3183:15;;3159:113;;;3290:6;3287:1;3284:13;3281:101;;;3370:1;3361:6;3356:3;3352:16;3345:27;3281:101;3130:258;3081:307;;;:::o;3394:102::-;3435:6;3486:2;3482:7;3477:2;3470:5;3466:14;3462:28;3452:38;;3394:102;;;:::o;3502:364::-;3590:3;3618:39;3651:5;3618:39;:::i;:::-;3673:71;3737:6;3732:3;3673:71;:::i;:::-;3666:78;;3753:52;3798:6;3793:3;3786:4;3779:5;3775:16;3753:52;:::i;:::-;3830:29;3852:6;3830:29;:::i;:::-;3825:3;3821:39;3814:46;;3594:272;3502:364;;;;:::o;3872:313::-;3985:4;4023:2;4012:9;4008:18;4000:26;;4072:9;4066:4;4062:20;4058:1;4047:9;4043:17;4036:47;4100:78;4173:4;4164:6;4100:78;:::i;:::-;4092:86;;3872:313;;;;:::o;4191:474::-;4259:6;4267;4316:2;4304:9;4295:7;4291:23;4287:32;4284:119;;;4322:79;;:::i;:::-;4284:119;4442:1;4467:53;4512:7;4503:6;4492:9;4488:22;4467:53;:::i;:::-;4457:63;;4413:117;4569:2;4595:53;4640:7;4631:6;4620:9;4616:22;4595:53;:::i;:::-;4585:63;;4540:118;4191:474;;;;;:::o;4671:90::-;4705:7;4748:5;4741:13;4734:21;4723:32;;4671:90;;;:::o;4767:109::-;4848:21;4863:5;4848:21;:::i;:::-;4843:3;4836:34;4767:109;;:::o;4882:210::-;4969:4;5007:2;4996:9;4992:18;4984:26;;5020:65;5082:1;5071:9;5067:17;5058:6;5020:65;:::i;:::-;4882:210;;;;:::o;5098:619::-;5175:6;5183;5191;5240:2;5228:9;5219:7;5215:23;5211:32;5208:119;;;5246:79;;:::i;:::-;5208:119;5366:1;5391:53;5436:7;5427:6;5416:9;5412:22;5391:53;:::i;:::-;5381:63;;5337:117;5493:2;5519:53;5564:7;5555:6;5544:9;5540:22;5519:53;:::i;:::-;5509:63;;5464:118;5621:2;5647:53;5692:7;5683:6;5672:9;5668:22;5647:53;:::i;:::-;5637:63;;5592:118;5098:619;;;;;:::o;5723:86::-;5758:7;5798:4;5791:5;5787:16;5776:27;;5723:86;;;:::o;5815:112::-;5898:22;5914:5;5898:22;:::i;:::-;5893:3;5886:35;5815:112;;:::o;5933:214::-;6022:4;6060:2;6049:9;6045:18;6037:26;;6073:67;6137:1;6126:9;6122:17;6113:6;6073:67;:::i;:::-;5933:214;;;;:::o;6153:118::-;6240:24;6258:5;6240:24;:::i;:::-;6235:3;6228:37;6153:118;;:::o;6277:222::-;6370:4;6408:2;6397:9;6393:18;6385:26;;6421:71;6489:1;6478:9;6474:17;6465:6;6421:71;:::i;:::-;6277:222;;;;:::o;6505:474::-;6573:6;6581;6630:2;6618:9;6609:7;6605:23;6601:32;6598:119;;;6636:79;;:::i;:::-;6598:119;6756:1;6781:53;6826:7;6817:6;6806:9;6802:22;6781:53;:::i;:::-;6771:63;;6727:117;6883:2;6909:53;6954:7;6945:6;6934:9;6930:22;6909:53;:::i;:::-;6899:63;;6854:118;6505:474;;;;;:::o;6985:182::-;7125:34;7121:1;7113:6;7109:14;7102:58;6985:182;:::o;7173:366::-;7315:3;7336:67;7400:2;7395:3;7336:67;:::i;:::-;7329:74;;7412:93;7501:3;7412:93;:::i;:::-;7530:2;7525:3;7521:12;7514:19;;7173:366;;;:::o;7545:419::-;7711:4;7749:2;7738:9;7734:18;7726:26;;7798:9;7792:4;7788:20;7784:1;7773:9;7769:17;7762:47;7826:131;7952:4;7826:131;:::i;:::-;7818:139;;7545:419;;;:::o;7970:442::-;8119:4;8157:2;8146:9;8142:18;8134:26;;8170:71;8238:1;8227:9;8223:17;8214:6;8170:71;:::i;:::-;8251:72;8319:2;8308:9;8304:18;8295:6;8251:72;:::i;:::-;8333;8401:2;8390:9;8386:18;8377:6;8333:72;:::i;:::-;7970:442;;;;;;:::o;8418:180::-;8466:77;8463:1;8456:88;8563:4;8560:1;8553:15;8587:4;8584:1;8577:15;8604:320;8648:6;8685:1;8679:4;8675:12;8665:22;;8732:1;8726:4;8722:12;8753:18;8743:81;;8809:4;8801:6;8797:17;8787:27;;8743:81;8871:2;8863:6;8860:14;8840:18;8837:38;8834:84;;;8890:18;;:::i;:::-;8834:84;8655:269;8604:320;;;:::o;8930:227::-;9070:34;9066:1;9058:6;9054:14;9047:58;9139:10;9134:2;9126:6;9122:15;9115:35;8930:227;:::o;9163:366::-;9305:3;9326:67;9390:2;9385:3;9326:67;:::i;:::-;9319:74;;9402:93;9491:3;9402:93;:::i;:::-;9520:2;9515:3;9511:12;9504:19;;9163:366;;;:::o;9535:419::-;9701:4;9739:2;9728:9;9724:18;9716:26;;9788:9;9782:4;9778:20;9774:1;9763:9;9759:17;9752:47;9816:131;9942:4;9816:131;:::i;:::-;9808:139;;9535:419;;;:::o;9960:180::-;10008:77;10005:1;9998:88;10105:4;10102:1;10095:15;10129:4;10126:1;10119:15;10146:305;10186:3;10205:20;10223:1;10205:20;:::i;:::-;10200:25;;10239:20;10257:1;10239:20;:::i;:::-;10234:25;;10393:1;10325:66;10321:74;10318:1;10315:81;10312:107;;;10399:18;;:::i;:::-;10312:107;10443:1;10440;10436:9;10429:16;;10146:305;;;;:::o;10457:181::-;10597:33;10593:1;10585:6;10581:14;10574:57;10457:181;:::o;10644:366::-;10786:3;10807:67;10871:2;10866:3;10807:67;:::i;:::-;10800:74;;10883:93;10972:3;10883:93;:::i;:::-;11001:2;10996:3;10992:12;10985:19;;10644:366;;;:::o;11016:419::-;11182:4;11220:2;11209:9;11205:18;11197:26;;11269:9;11263:4;11259:20;11255:1;11244:9;11240:17;11233:47;11297:131;11423:4;11297:131;:::i;:::-;11289:139;;11016:419;;;:::o;11441:191::-;11481:4;11501:20;11519:1;11501:20;:::i;:::-;11496:25;;11535:20;11553:1;11535:20;:::i;:::-;11530:25;;11574:1;11571;11568:8;11565:34;;;11579:18;;:::i;:::-;11565:34;11624:1;11621;11617:9;11609:17;;11441:191;;;;:::o;11638:224::-;11778:34;11774:1;11766:6;11762:14;11755:58;11847:7;11842:2;11834:6;11830:15;11823:32;11638:224;:::o;11868:366::-;12010:3;12031:67;12095:2;12090:3;12031:67;:::i;:::-;12024:74;;12107:93;12196:3;12107:93;:::i;:::-;12225:2;12220:3;12216:12;12209:19;;11868:366;;;:::o;12240:419::-;12406:4;12444:2;12433:9;12429:18;12421:26;;12493:9;12487:4;12483:20;12479:1;12468:9;12464:17;12457:47;12521:131;12647:4;12521:131;:::i;:::-;12513:139;;12240:419;;;:::o;12665:225::-;12805:34;12801:1;12793:6;12789:14;12782:58;12874:8;12869:2;12861:6;12857:15;12850:33;12665:225;:::o;12896:366::-;13038:3;13059:67;13123:2;13118:3;13059:67;:::i;:::-;13052:74;;13135:93;13224:3;13135:93;:::i;:::-;13253:2;13248:3;13244:12;13237:19;;12896:366;;;:::o;13268:419::-;13434:4;13472:2;13461:9;13457:18;13449:26;;13521:9;13515:4;13511:20;13507:1;13496:9;13492:17;13485:47;13549:131;13675:4;13549:131;:::i;:::-;13541:139;;13268:419;;;:::o;13693:175::-;13833:27;13829:1;13821:6;13817:14;13810:51;13693:175;:::o;13874:366::-;14016:3;14037:67;14101:2;14096:3;14037:67;:::i;:::-;14030:74;;14113:93;14202:3;14113:93;:::i;:::-;14231:2;14226:3;14222:12;14215:19;;13874:366;;;:::o;14246:419::-;14412:4;14450:2;14439:9;14435:18;14427:26;;14499:9;14493:4;14489:20;14485:1;14474:9;14470:17;14463:47;14527:131;14653:4;14527:131;:::i;:::-;14519:139;;14246:419;;;:::o;14671:223::-;14811:34;14807:1;14799:6;14795:14;14788:58;14880:6;14875:2;14867:6;14863:15;14856:31;14671:223;:::o;14900:366::-;15042:3;15063:67;15127:2;15122:3;15063:67;:::i;:::-;15056:74;;15139:93;15228:3;15139:93;:::i;:::-;15257:2;15252:3;15248:12;15241:19;;14900:366;;;:::o;15272:419::-;15438:4;15476:2;15465:9;15461:18;15453:26;;15525:9;15519:4;15515:20;15511:1;15500:9;15496:17;15489:47;15553:131;15679:4;15553:131;:::i;:::-;15545:139;;15272:419;;;:::o;15697:221::-;15837:34;15833:1;15825:6;15821:14;15814:58;15906:4;15901:2;15893:6;15889:15;15882:29;15697:221;:::o;15924:366::-;16066:3;16087:67;16151:2;16146:3;16087:67;:::i;:::-;16080:74;;16163:93;16252:3;16163:93;:::i;:::-;16281:2;16276:3;16272:12;16265:19;;15924:366;;;:::o;16296:419::-;16462:4;16500:2;16489:9;16485:18;16477:26;;16549:9;16543:4;16539:20;16535:1;16524:9;16520:17;16513:47;16577:131;16703:4;16577:131;:::i;:::-;16569:139;;16296:419;;;:::o;16721:224::-;16861:34;16857:1;16849:6;16845:14;16838:58;16930:7;16925:2;16917:6;16913:15;16906:32;16721:224;:::o;16951:366::-;17093:3;17114:67;17178:2;17173:3;17114:67;:::i;:::-;17107:74;;17190:93;17279:3;17190:93;:::i;:::-;17308:2;17303:3;17299:12;17292:19;;16951:366;;;:::o;17323:419::-;17489:4;17527:2;17516:9;17512:18;17504:26;;17576:9;17570:4;17566:20;17562:1;17551:9;17547:17;17540:47;17604:131;17730:4;17604:131;:::i;:::-;17596:139;;17323:419;;;:::o;17748:222::-;17888:34;17884:1;17876:6;17872:14;17865:58;17957:5;17952:2;17944:6;17940:15;17933:30;17748:222;:::o;17976:366::-;18118:3;18139:67;18203:2;18198:3;18139:67;:::i;:::-;18132:74;;18215:93;18304:3;18215:93;:::i;:::-;18333:2;18328:3;18324:12;18317:19;;17976:366;;;:::o;18348:419::-;18514:4;18552:2;18541:9;18537:18;18529:26;;18601:9;18595:4;18591:20;18587:1;18576:9;18572:17;18565:47;18629:131;18755:4;18629:131;:::i;:::-;18621:139;;18348:419;;;:::o;18773:225::-;18913:34;18909:1;18901:6;18897:14;18890:58;18982:8;18977:2;18969:6;18965:15;18958:33;18773:225;:::o;19004:366::-;19146:3;19167:67;19231:2;19226:3;19167:67;:::i;:::-;19160:74;;19243:93;19332:3;19243:93;:::i;:::-;19361:2;19356:3;19352:12;19345:19;;19004:366;;;:::o;19376:419::-;19542:4;19580:2;19569:9;19565:18;19557:26;;19629:9;19623:4;19619:20;19615:1;19604:9;19600:17;19593:47;19657:131;19783:4;19657:131;:::i;:::-;19649:139;;19376:419;;;:::o;19801:181::-;19941:33;19937:1;19929:6;19925:14;19918:57;19801:181;:::o;19988:366::-;20130:3;20151:67;20215:2;20210:3;20151:67;:::i;:::-;20144:74;;20227:93;20316:3;20227:93;:::i;:::-;20345:2;20340:3;20336:12;20329:19;;19988:366;;;:::o;20360:419::-;20526:4;20564:2;20553:9;20549:18;20541:26;;20613:9;20607:4;20603:20;20599:1;20588:9;20584:17;20577:47;20641:131;20767:4;20641:131;:::i;:::-;20633:139;;20360:419;;;:::o
Swarm Source
ipfs://357e690451ddc734a8d73ddd0465c936d8fdb043b8967b2dd588aa7667b2dfdb
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.