ETH Price: $3,449.38 (+1.49%)

Token

CAGE (C4G3)
 

Overview

Max Total Supply

100,000,000 C4G3

Holders

325 (0.00%)

Market

Onchain Market Cap

$0.00

Circulating Supply Market Cap

-

Other Info

Token Contract (WITH 18 Decimals)

Balance
86,396.565153648373773258 C4G3

Value
$0.00
0xa1f8c1208b2e7c4d546cda11da873e3f9f117328
Loading...
Loading
Loading...
Loading
Loading...
Loading

OVERVIEW

C4G3 token contract has migrated to 0x1b308d8c92EE6b06faBAFE3c8ed21a9DbBE5FaCD

# Exchange Pair Price  24H Volume % Volume

Contract Source Code Verified (Exact Match)

Contract Name:
C4g3

Compiler Version
v0.8.6+commit.11564f7e

Optimization Enabled:
No with 200 runs

Other Settings:
default evmVersion, MIT license

Contract Source Code (Solidity Multiple files format)

File 1 of 2: C4g3.sol
// SPDX-License-Identifier: MIT
pragma solidity ^0.8.6;
pragma experimental ABIEncoderV2;

import "./SafeMath.sol";

contract C4g3 {
    /// @notice EIP-20 token name for this token
    string public constant name = "CAGE";

    /// @notice EIP-20 token symbol for this token
    string public constant symbol = "C4G3";

    /// @notice EIP-20 token decimals for this token
    uint8 public constant decimals = 18;

    /// @notice Total number of tokens in circulation
    uint public totalSupply = 100_000_000e18; // 100 million C4G3

    /// @notice Official record of token balances for each account
    mapping (address => uint96) internal balances;

    /// @notice The EIP-712 typehash for the contract's domain
    bytes32 public constant DOMAIN_TYPEHASH = keccak256("EIP712Domain(string name,uint256 chainId,address verifyingContract)");

       /// @notice The EIP-712 typehash for the permit struct used by the contract
    bytes32 public constant PERMIT_TYPEHASH = keccak256("Permit(address owner,address spender,uint256 value,uint256 nonce,uint256 deadline)");

    /// @notice A record of states for signing / validating signatures
    mapping (address => uint) public nonces;

    /// @notice The standard EIP-20 transfer event
    event Transfer(address indexed from, address indexed to, uint256 amount);

    /// @notice The standard EIP-20 approval event
    event Approval(address indexed owner, address indexed spender, uint256 amount);

    /// @notice Allowance amounts on behalf of others
    mapping (address => mapping (address => uint96)) internal allowances;



    /**
     * @notice Construct a new C4g3 token
     * @param account The initial account to grant all the tokens
     */
    constructor(address account) public {
        balances[account] = uint96(totalSupply);
        emit Transfer(address(0), account, totalSupply);
    }


    /**
     * @notice Get the number of tokens `spender` is approved to spend on behalf of `account`
     * @param account The address of the account holding the funds
     * @param spender The address of the account spending the funds
     * @return The number of tokens approved
     */
    function allowance(address account, address spender) external view returns (uint) {
        return allowances[account][spender];
    }

    /**
     * @notice Approve `spender` to transfer up to `amount` from `src`
     * @dev This will overwrite the approval amount for `spender`
     *  and is subject to issues noted [here](https://eips.ethereum.org/EIPS/eip-20#approve)
     * @param spender The address of the account which may transfer tokens
     * @param rawAmount The number of tokens that are approved (2^256-1 means infinite)
     * @return Whether or not the approval succeeded
     */
    function approve(address spender, uint rawAmount) external returns (bool) {
        uint96 amount;
        if (rawAmount == type(uint).max) {
            amount = type(uint96).max;
        }  else {
            amount = safe96(rawAmount, "C4g3::approve: amount exceeds 96 bits");
        }

        allowances[msg.sender][spender] = amount;

        emit Approval(msg.sender, spender, amount);
        return true;
    }

    /**
     * @notice Triggers an approval from owner to spends
     * @param owner The address to approve from
     * @param spender The address to be approved
     * @param rawAmount The number of tokens that are approved (2^256-1 means infinite)
     * @param deadline The time at which to expire the signature
     * @param v The recovery byte of the signature
     * @param r Half of the ECDSA signature pair
     * @param s Half of the ECDSA signature pair
     */
    function permit(address owner, address spender, uint rawAmount, uint deadline, uint8 v, bytes32 r, bytes32 s) external {
        uint96 amount;
        if (rawAmount == type(uint).max) {
            amount = type(uint96).max;
        } else {
            amount = safe96(rawAmount, "C4g3::permit: amount exceeds 96 bits");
        }

        bytes32 domainSeparator = keccak256(abi.encode(DOMAIN_TYPEHASH, keccak256(bytes(name)), getChainId(), address(this)));
        bytes32 structHash = keccak256(abi.encode(PERMIT_TYPEHASH, owner, spender, rawAmount, nonces[owner]++, deadline));
        bytes32 digest = keccak256(abi.encodePacked("\x19\x01", domainSeparator, structHash));
        address signatory = ecrecover(digest, v, r, s);
        require(signatory != address(0), "C4g3::permit: invalid signature");
        require(signatory == owner, "C4g3::permit: unauthorized");
        require(block.timestamp <= deadline, "C4g3::permit: signature expired");

        allowances[owner][spender] = amount;

        emit Approval(owner, spender, amount);
    }

    /**
     * @notice Get the number of tokens held by the `account`
     * @param account The address of the account to get the balance of
     * @return The number of tokens held
     */
    function balanceOf(address account) external view returns (uint) {
        return balances[account];
    }

    /**
     * @notice Transfer `amount` tokens from `msg.sender` to `dst`
     * @param dst The address of the destination account
     * @param rawAmount The number of tokens to transfer
     * @return Whether or not the transfer succeeded
     */
    function transfer(address dst, uint rawAmount) external returns (bool) {
        uint96 amount = safe96(rawAmount, "C4g3::transfer: amount exceeds 96 bits");
        _transferTokens(msg.sender, dst, amount);
        return true;
    }

    /**
     * @notice Transfer `amount` tokens from `src` to `dst`
     * @param src The address of the source account
     * @param dst The address of the destination account
     * @param rawAmount The number of tokens to transfer
     * @return Whether or not the transfer succeeded
     */
    function transferFrom(address src, address dst, uint rawAmount) external returns (bool) {
        address spender = msg.sender;
        uint96 spenderAllowance = allowances[src][spender];
        uint96 amount = safe96(rawAmount, "C4g3::approve: amount exceeds 96 bits");

        if (spender != src && spenderAllowance != type(uint96).max) {
            uint96 newAllowance = sub96(spenderAllowance, amount, "C4g3::transferFrom: transfer amount exceeds spender allowance");
            allowances[src][spender] = newAllowance;

            emit Approval(src, spender, newAllowance);
        }

        _transferTokens(src, dst, amount);
        return true;
    }


    function _transferTokens(address src, address dst, uint96 amount) internal {
        require(src != address(0), "C4g3::_transferTokens: cannot transfer from the zero address");
        require(dst != address(0), "C4g3::_transferTokens: cannot transfer to the zero address");

        balances[src] = sub96(balances[src], amount, "C4g3::_transferTokens: transfer amount exceeds balance");
        balances[dst] = add96(balances[dst], amount, "C4g3::_transferTokens: transfer amount overflows");
        emit Transfer(src, dst, amount);

    }

    function safe32(uint n, string memory errorMessage) internal pure returns (uint32) {
        require(n < 2**32, errorMessage);
        return uint32(n);
    }

    function safe96(uint n, string memory errorMessage) internal pure returns (uint96) {
        require(n < 2**96, errorMessage);
        return uint96(n);
    }

    function add96(uint96 a, uint96 b, string memory errorMessage) internal pure returns (uint96) {
        uint96 c = a + b;
        require(c >= a, errorMessage);
        return c;
    }

    function sub96(uint96 a, uint96 b, string memory errorMessage) internal pure returns (uint96) {
        require(b <= a, errorMessage);
        return a - b;
    }

    function getChainId() internal view returns (uint) {
        uint256 chainId;
        assembly { chainId := chainid() }
        return chainId;
    }
}

File 2 of 2: SafeMath.sol
// SPDX-License-Identifier: MIT
pragma solidity ^0.8.6;

// From https://github.com/OpenZeppelin/openzeppelin-contracts/blob/master/contracts/math/Math.sol
// Subject to the MIT license.

/**
 * @dev Wrappers over Solidity's arithmetic operations with added overflow
 * checks.
 *
 * Arithmetic operations in Solidity wrap on overflow. This can easily result
 * in bugs, because programmers usually assume that an overflow raises an
 * error, which is the standard behavior in high level programming languages.
 * `SafeMath` restores this intuition by reverting the transaction when an
 * operation overflows.
 *
 * Using this library instead of the unchecked operations eliminates an entire
 * class of bugs, so it's recommended to use it always.
 */
library SafeMath {
    /**
     * @dev Returns the addition of two unsigned integers, reverting on overflow.
     *
     * Counterpart to Solidity's `+` operator.
     *
     * Requirements:
     * - Addition cannot overflow.
     */
    function add(uint256 a, uint256 b) internal pure returns (uint256) {
        uint256 c = a + b;
        require(c >= a, "SafeMath: addition overflow");

        return c;
    }

    /**
     * @dev Returns the addition of two unsigned integers, reverting with custom message on overflow.
     *
     * Counterpart to Solidity's `+` operator.
     *
     * Requirements:
     * - Addition cannot overflow.
     */
    function add(uint256 a, uint256 b, string memory errorMessage) internal pure returns (uint256) {
        uint256 c = a + b;
        require(c >= a, errorMessage);

        return c;
    }

    /**
     * @dev Returns the subtraction of two unsigned integers, reverting on underflow (when the result is negative).
     *
     * Counterpart to Solidity's `-` operator.
     *
     * Requirements:
     * - Subtraction cannot underflow.
     */
    function sub(uint256 a, uint256 b) internal pure returns (uint256) {
        return sub(a, b, "SafeMath: subtraction underflow");
    }

    /**
     * @dev Returns the subtraction of two unsigned integers, reverting with custom message on underflow (when the result is negative).
     *
     * Counterpart to Solidity's `-` operator.
     *
     * Requirements:
     * - Subtraction cannot underflow.
     */
    function sub(uint256 a, uint256 b, string memory errorMessage) internal pure returns (uint256) {
        require(b <= a, errorMessage);
        uint256 c = a - b;

        return c;
    }

    /**
     * @dev Returns the multiplication of two unsigned integers, reverting on overflow.
     *
     * Counterpart to Solidity's `*` operator.
     *
     * Requirements:
     * - Multiplication cannot overflow.
     */
    function mul(uint256 a, uint256 b) internal pure returns (uint256) {
        // Gas optimization: this is cheaper than requiring 'a' not being zero, but the
        // benefit is lost if 'b' is also tested.
        // See: https://github.com/OpenZeppelin/openzeppelin-contracts/pull/522
        if (a == 0) {
            return 0;
        }

        uint256 c = a * b;
        require(c / a == b, "SafeMath: multiplication overflow");

        return c;
    }

    /**
     * @dev Returns the multiplication of two unsigned integers, reverting on overflow.
     *
     * Counterpart to Solidity's `*` operator.
     *
     * Requirements:
     * - Multiplication cannot overflow.
     */
    function mul(uint256 a, uint256 b, string memory errorMessage) internal pure returns (uint256) {
        // Gas optimization: this is cheaper than requiring 'a' not being zero, but the
        // benefit is lost if 'b' is also tested.
        // See: https://github.com/OpenZeppelin/openzeppelin-contracts/pull/522
        if (a == 0) {
            return 0;
        }

        uint256 c = a * b;
        require(c / a == b, errorMessage);

        return c;
    }

    /**
     * @dev Returns the integer division of two unsigned integers.
     * Reverts on division by zero. The result is rounded towards zero.
     *
     * Counterpart to Solidity's `/` operator. Note: this function uses a
     * `revert` opcode (which leaves remaining gas untouched) while Solidity
     * uses an invalid opcode to revert (consuming all remaining gas).
     *
     * Requirements:
     * - The divisor cannot be zero.
     */
    function div(uint256 a, uint256 b) internal pure returns (uint256) {
        return div(a, b, "SafeMath: division by zero");
    }

    /**
     * @dev Returns the integer division of two unsigned integers.
     * Reverts with custom message on division by zero. The result is rounded towards zero.
     *
     * Counterpart to Solidity's `/` operator. Note: this function uses a
     * `revert` opcode (which leaves remaining gas untouched) while Solidity
     * uses an invalid opcode to revert (consuming all remaining gas).
     *
     * Requirements:
     * - The divisor cannot be zero.
     */
    function div(uint256 a, uint256 b, string memory errorMessage) internal pure returns (uint256) {
        // Solidity only automatically asserts when dividing by 0
        require(b > 0, errorMessage);
        uint256 c = a / b;
        // assert(a == b * c + a % b); // There is no case in which this doesn't hold

        return c;
    }

    /**
     * @dev Returns the remainder of dividing two unsigned integers. (unsigned integer modulo),
     * Reverts when dividing by zero.
     *
     * Counterpart to Solidity's `%` operator. This function uses a `revert`
     * opcode (which leaves remaining gas untouched) while Solidity uses an
     * invalid opcode to revert (consuming all remaining gas).
     *
     * Requirements:
     * - The divisor cannot be zero.
     */
    function mod(uint256 a, uint256 b) internal pure returns (uint256) {
        return mod(a, b, "SafeMath: modulo by zero");
    }

    /**
     * @dev Returns the remainder of dividing two unsigned integers. (unsigned integer modulo),
     * Reverts with custom message when dividing by zero.
     *
     * Counterpart to Solidity's `%` operator. This function uses a `revert`
     * opcode (which leaves remaining gas untouched) while Solidity uses an
     * invalid opcode to revert (consuming all remaining gas).
     *
     * Requirements:
     * - The divisor cannot be zero.
     */
    function mod(uint256 a, uint256 b, string memory errorMessage) internal pure returns (uint256) {
        require(b != 0, errorMessage);
        return a % b;
    }
}

Contract Security Audit

Contract ABI

[{"inputs":[{"internalType":"address","name":"account","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":"amount","type":"uint256"}],"name":"Approval","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"from","type":"address"},{"indexed":true,"internalType":"address","name":"to","type":"address"},{"indexed":false,"internalType":"uint256","name":"amount","type":"uint256"}],"name":"Transfer","type":"event"},{"inputs":[],"name":"DOMAIN_TYPEHASH","outputs":[{"internalType":"bytes32","name":"","type":"bytes32"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"PERMIT_TYPEHASH","outputs":[{"internalType":"bytes32","name":"","type":"bytes32"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"account","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":"rawAmount","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":"decimals","outputs":[{"internalType":"uint8","name":"","type":"uint8"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"name","outputs":[{"internalType":"string","name":"","type":"string"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"","type":"address"}],"name":"nonces","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"owner","type":"address"},{"internalType":"address","name":"spender","type":"address"},{"internalType":"uint256","name":"rawAmount","type":"uint256"},{"internalType":"uint256","name":"deadline","type":"uint256"},{"internalType":"uint8","name":"v","type":"uint8"},{"internalType":"bytes32","name":"r","type":"bytes32"},{"internalType":"bytes32","name":"s","type":"bytes32"}],"name":"permit","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"symbol","outputs":[{"internalType":"string","name":"","type":"string"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"totalSupply","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"dst","type":"address"},{"internalType":"uint256","name":"rawAmount","type":"uint256"}],"name":"transfer","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"src","type":"address"},{"internalType":"address","name":"dst","type":"address"},{"internalType":"uint256","name":"rawAmount","type":"uint256"}],"name":"transferFrom","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"}]

60806040526a52b7d2dcc80cd2e40000006000553480156200002057600080fd5b5060405162001e8638038062001e8683398181016040528101906200004691906200013e565b600054600160008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a8154816bffffffffffffffffffffffff02191690836bffffffffffffffffffffffff1602179055508073ffffffffffffffffffffffffffffffffffffffff16600073ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef60005460405162000118919062000181565b60405180910390a350620001fb565b6000815190506200013881620001e1565b92915050565b600060208284031215620001575762000156620001dc565b5b6000620001678482850162000127565b91505092915050565b6200017b81620001d2565b82525050565b600060208201905062000198600083018462000170565b92915050565b6000620001ab82620001b2565b9050919050565b600073ffffffffffffffffffffffffffffffffffffffff82169050919050565b6000819050919050565b600080fd5b620001ec816200019e565b8114620001f857600080fd5b50565b611c7b806200020b6000396000f3fe608060405234801561001057600080fd5b50600436106100cf5760003560e01c8063313ce5671161008c57806395d89b411161006657806395d89b411461022a578063a9059cbb14610248578063d505accf14610278578063dd62ed3e14610294576100cf565b8063313ce567146101ac57806370a08231146101ca5780637ecebe00146101fa576100cf565b806306fdde03146100d4578063095ea7b3146100f257806318160ddd1461012257806320606b701461014057806323b872dd1461015e57806330adf81f1461018e575b600080fd5b6100dc6102c4565b6040516100e99190611691565b60405180910390f35b61010c6004803603810190610107919061137d565b6102fd565b6040516101199190611570565b60405180910390f35b61012a61047c565b6040516101379190611753565b60405180910390f35b610148610482565b604051610155919061158b565b60405180910390f35b61017860048036038101906101739190611288565b6104a6565b6040516101859190611570565b60405180910390f35b61019661071a565b6040516101a3919061158b565b60405180910390f35b6101b461073e565b6040516101c1919061176e565b60405180910390f35b6101e460048036038101906101df919061121b565b610743565b6040516101f19190611753565b60405180910390f35b610214600480360381019061020f919061121b565b6107b2565b6040516102219190611753565b60405180910390f35b6102326107ca565b60405161023f9190611691565b60405180910390f35b610262600480360381019061025d919061137d565b610803565b60405161026f9190611570565b60405180910390f35b610292600480360381019061028d91906112db565b610840565b005b6102ae60048036038101906102a99190611248565b610c9e565b6040516102bb9190611753565b60405180910390f35b6040518060400160405280600481526020017f434147450000000000000000000000000000000000000000000000000000000081525081565b6000807fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff83141561033c576bffffffffffffffffffffffff9050610361565b61035e83604051806060016040528060258152602001611bfb60259139610d4b565b90505b80600360003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a8154816bffffffffffffffffffffffff02191690836bffffffffffffffffffffffff1602179055508373ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925836040516104699190611789565b60405180910390a3600191505092915050565b60005481565b7f8cad95687ba82c2ce50e74f7b754645e5117c3a5bec8151c0726d5857980a86681565b6000803390506000600360008773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a90046bffffffffffffffffffffffff169050600061056985604051806060016040528060258152602001611bfb60259139610d4b565b90508673ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff16141580156105c357506bffffffffffffffffffffffff8016826bffffffffffffffffffffffff1614155b156107015760006105ed83836040518060600160405280603d8152602001611b58603d9139610da9565b905080600360008a73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a8154816bffffffffffffffffffffffff02191690836bffffffffffffffffffffffff1602179055508373ffffffffffffffffffffffffffffffffffffffff168873ffffffffffffffffffffffffffffffffffffffff167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925836040516106f79190611789565b60405180910390a3505b61070c878783610e23565b600193505050509392505050565b7f6e71edae12b1b97f4d1f60370fef10105fa2faae0126114a169c64845d6126c981565b601281565b6000600160008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a90046bffffffffffffffffffffffff166bffffffffffffffffffffffff169050919050565b60026020528060005260406000206000915090505481565b6040518060400160405280600481526020017f433447330000000000000000000000000000000000000000000000000000000081525081565b60008061082883604051806060016040528060268152602001611c2060269139610d4b565b9050610835338583610e23565b600191505092915050565b60007fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff86141561087e576bffffffffffffffffffffffff90506108a3565b6108a086604051806060016040528060248152602001611b3460249139610d4b565b90505b60007f8cad95687ba82c2ce50e74f7b754645e5117c3a5bec8151c0726d5857980a8666040518060400160405280600481526020017f43414745000000000000000000000000000000000000000000000000000000008152508051906020012061090b61113b565b3060405160200161091f9493929190611607565b60405160208183030381529060405280519060200120905060007f6e71edae12b1b97f4d1f60370fef10105fa2faae0126114a169c64845d6126c98a8a8a600260008f73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008154809291906109ad906118fd565b919050558b6040516020016109c7969594939291906115a6565b604051602081830303815290604052805190602001209050600082826040516020016109f4929190611539565b604051602081830303815290604052805190602001209050600060018289898960405160008152602001604052604051610a31949392919061164c565b6020604051602081039080840390855afa158015610a53573d6000803e3d6000fd5b505050602060405103519050600073ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff161415610acf576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610ac6906116d3565b60405180910390fd5b8b73ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff1614610b3d576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610b3490611713565b60405180910390fd5b88421115610b80576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610b77906116f3565b60405180910390fd5b84600360008e73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008d73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a8154816bffffffffffffffffffffffff02191690836bffffffffffffffffffffffff1602179055508a73ffffffffffffffffffffffffffffffffffffffff168c73ffffffffffffffffffffffffffffffffffffffff167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b92587604051610c889190611789565b60405180910390a3505050505050505050505050565b6000600360008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a90046bffffffffffffffffffffffff166bffffffffffffffffffffffff16905092915050565b60006c0100000000000000000000000083108290610d9f576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610d969190611691565b60405180910390fd5b5082905092915050565b6000836bffffffffffffffffffffffff16836bffffffffffffffffffffffff1611158290610e0d576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610e049190611691565b60405180910390fd5b508284610e1a919061180d565b90509392505050565b600073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff161415610e93576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610e8a90611733565b60405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff161415610f03576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610efa906116b3565b60405180910390fd5b610f7d600160008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a90046bffffffffffffffffffffffff1682604051806060016040528060368152602001611b9560369139610da9565b600160008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a8154816bffffffffffffffffffffffff02191690836bffffffffffffffffffffffff160217905550611064600160008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a90046bffffffffffffffffffffffff1682604051806060016040528060308152602001611bcb60309139611148565b600160008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a8154816bffffffffffffffffffffffff02191690836bffffffffffffffffffffffff1602179055508173ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef8360405161112e9190611789565b60405180910390a3505050565b6000804690508091505090565b600080838561115791906117cb565b9050846bffffffffffffffffffffffff16816bffffffffffffffffffffffff16101583906111bb576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016111b29190611691565b60405180910390fd5b50809150509392505050565b6000813590506111d681611ad7565b92915050565b6000813590506111eb81611aee565b92915050565b60008135905061120081611b05565b92915050565b60008135905061121581611b1c565b92915050565b6000602082840312156112315761123061197f565b5b600061123f848285016111c7565b91505092915050565b6000806040838503121561125f5761125e61197f565b5b600061126d858286016111c7565b925050602061127e858286016111c7565b9150509250929050565b6000806000606084860312156112a1576112a061197f565b5b60006112af868287016111c7565b93505060206112c0868287016111c7565b92505060406112d1868287016111f1565b9150509250925092565b600080600080600080600060e0888a0312156112fa576112f961197f565b5b60006113088a828b016111c7565b97505060206113198a828b016111c7565b965050604061132a8a828b016111f1565b955050606061133b8a828b016111f1565b945050608061134c8a828b01611206565b93505060a061135d8a828b016111dc565b92505060c061136e8a828b016111dc565b91505092959891949750929550565b600080604083850312156113945761139361197f565b5b60006113a2858286016111c7565b92505060206113b3858286016111f1565b9150509250929050565b6113c681611841565b82525050565b6113d581611853565b82525050565b6113e48161185f565b82525050565b6113fb6113f68261185f565b611946565b82525050565b600061140c826117a4565b61141681856117af565b93506114268185602086016118ca565b61142f81611984565b840191505092915050565b6000611447603a836117af565b915061145282611995565b604082019050919050565b600061146a6002836117c0565b9150611475826119e4565b600282019050919050565b600061148d601f836117af565b915061149882611a0d565b602082019050919050565b60006114b0601f836117af565b91506114bb82611a36565b602082019050919050565b60006114d3601a836117af565b91506114de82611a5f565b602082019050919050565b60006114f6603c836117af565b915061150182611a88565b604082019050919050565b61151581611889565b82525050565b61152481611893565b82525050565b611533816118b8565b82525050565b60006115448261145d565b915061155082856113ea565b60208201915061156082846113ea565b6020820191508190509392505050565b600060208201905061158560008301846113cc565b92915050565b60006020820190506115a060008301846113db565b92915050565b600060c0820190506115bb60008301896113db565b6115c860208301886113bd565b6115d560408301876113bd565b6115e2606083018661150c565b6115ef608083018561150c565b6115fc60a083018461150c565b979650505050505050565b600060808201905061161c60008301876113db565b61162960208301866113db565b611636604083018561150c565b61164360608301846113bd565b95945050505050565b600060808201905061166160008301876113db565b61166e602083018661151b565b61167b60408301856113db565b61168860608301846113db565b95945050505050565b600060208201905081810360008301526116ab8184611401565b905092915050565b600060208201905081810360008301526116cc8161143a565b9050919050565b600060208201905081810360008301526116ec81611480565b9050919050565b6000602082019050818103600083015261170c816114a3565b9050919050565b6000602082019050818103600083015261172c816114c6565b9050919050565b6000602082019050818103600083015261174c816114e9565b9050919050565b6000602082019050611768600083018461150c565b92915050565b6000602082019050611783600083018461151b565b92915050565b600060208201905061179e600083018461152a565b92915050565b600081519050919050565b600082825260208201905092915050565b600081905092915050565b60006117d6826118a0565b91506117e1836118a0565b9250826bffffffffffffffffffffffff0382111561180257611801611950565b5b828201905092915050565b6000611818826118a0565b9150611823836118a0565b92508282101561183657611835611950565b5b828203905092915050565b600061184c82611869565b9050919050565b60008115159050919050565b6000819050919050565b600073ffffffffffffffffffffffffffffffffffffffff82169050919050565b6000819050919050565b600060ff82169050919050565b60006bffffffffffffffffffffffff82169050919050565b60006118c3826118a0565b9050919050565b60005b838110156118e85780820151818401526020810190506118cd565b838111156118f7576000848401525b50505050565b600061190882611889565b91507fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff82141561193b5761193a611950565b5b600182019050919050565b6000819050919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b600080fd5b6000601f19601f8301169050919050565b7f433467333a3a5f7472616e73666572546f6b656e733a2063616e6e6f7420747260008201527f616e7366657220746f20746865207a65726f2061646472657373000000000000602082015250565b7f1901000000000000000000000000000000000000000000000000000000000000600082015250565b7f433467333a3a7065726d69743a20696e76616c6964207369676e617475726500600082015250565b7f433467333a3a7065726d69743a207369676e6174757265206578706972656400600082015250565b7f433467333a3a7065726d69743a20756e617574686f72697a6564000000000000600082015250565b7f433467333a3a5f7472616e73666572546f6b656e733a2063616e6e6f7420747260008201527f616e736665722066726f6d20746865207a65726f206164647265737300000000602082015250565b611ae081611841565b8114611aeb57600080fd5b50565b611af78161185f565b8114611b0257600080fd5b50565b611b0e81611889565b8114611b1957600080fd5b50565b611b2581611893565b8114611b3057600080fd5b5056fe433467333a3a7065726d69743a20616d6f756e7420657863656564732039362062697473433467333a3a7472616e7366657246726f6d3a207472616e7366657220616d6f756e742065786365656473207370656e64657220616c6c6f77616e6365433467333a3a5f7472616e73666572546f6b656e733a207472616e7366657220616d6f756e7420657863656564732062616c616e6365433467333a3a5f7472616e73666572546f6b656e733a207472616e7366657220616d6f756e74206f766572666c6f7773433467333a3a617070726f76653a20616d6f756e7420657863656564732039362062697473433467333a3a7472616e736665723a20616d6f756e7420657863656564732039362062697473a2646970667358221220b5cb0c4c9f7874d2742a4a66debdbc3cfc13a900deee5ea8379e63603d3a908564736f6c63430008060033000000000000000000000000432d4951dc62139614dcba122f1b73d618fdf312

Deployed Bytecode

0x608060405234801561001057600080fd5b50600436106100cf5760003560e01c8063313ce5671161008c57806395d89b411161006657806395d89b411461022a578063a9059cbb14610248578063d505accf14610278578063dd62ed3e14610294576100cf565b8063313ce567146101ac57806370a08231146101ca5780637ecebe00146101fa576100cf565b806306fdde03146100d4578063095ea7b3146100f257806318160ddd1461012257806320606b701461014057806323b872dd1461015e57806330adf81f1461018e575b600080fd5b6100dc6102c4565b6040516100e99190611691565b60405180910390f35b61010c6004803603810190610107919061137d565b6102fd565b6040516101199190611570565b60405180910390f35b61012a61047c565b6040516101379190611753565b60405180910390f35b610148610482565b604051610155919061158b565b60405180910390f35b61017860048036038101906101739190611288565b6104a6565b6040516101859190611570565b60405180910390f35b61019661071a565b6040516101a3919061158b565b60405180910390f35b6101b461073e565b6040516101c1919061176e565b60405180910390f35b6101e460048036038101906101df919061121b565b610743565b6040516101f19190611753565b60405180910390f35b610214600480360381019061020f919061121b565b6107b2565b6040516102219190611753565b60405180910390f35b6102326107ca565b60405161023f9190611691565b60405180910390f35b610262600480360381019061025d919061137d565b610803565b60405161026f9190611570565b60405180910390f35b610292600480360381019061028d91906112db565b610840565b005b6102ae60048036038101906102a99190611248565b610c9e565b6040516102bb9190611753565b60405180910390f35b6040518060400160405280600481526020017f434147450000000000000000000000000000000000000000000000000000000081525081565b6000807fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff83141561033c576bffffffffffffffffffffffff9050610361565b61035e83604051806060016040528060258152602001611bfb60259139610d4b565b90505b80600360003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a8154816bffffffffffffffffffffffff02191690836bffffffffffffffffffffffff1602179055508373ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925836040516104699190611789565b60405180910390a3600191505092915050565b60005481565b7f8cad95687ba82c2ce50e74f7b754645e5117c3a5bec8151c0726d5857980a86681565b6000803390506000600360008773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a90046bffffffffffffffffffffffff169050600061056985604051806060016040528060258152602001611bfb60259139610d4b565b90508673ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff16141580156105c357506bffffffffffffffffffffffff8016826bffffffffffffffffffffffff1614155b156107015760006105ed83836040518060600160405280603d8152602001611b58603d9139610da9565b905080600360008a73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a8154816bffffffffffffffffffffffff02191690836bffffffffffffffffffffffff1602179055508373ffffffffffffffffffffffffffffffffffffffff168873ffffffffffffffffffffffffffffffffffffffff167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925836040516106f79190611789565b60405180910390a3505b61070c878783610e23565b600193505050509392505050565b7f6e71edae12b1b97f4d1f60370fef10105fa2faae0126114a169c64845d6126c981565b601281565b6000600160008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a90046bffffffffffffffffffffffff166bffffffffffffffffffffffff169050919050565b60026020528060005260406000206000915090505481565b6040518060400160405280600481526020017f433447330000000000000000000000000000000000000000000000000000000081525081565b60008061082883604051806060016040528060268152602001611c2060269139610d4b565b9050610835338583610e23565b600191505092915050565b60007fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff86141561087e576bffffffffffffffffffffffff90506108a3565b6108a086604051806060016040528060248152602001611b3460249139610d4b565b90505b60007f8cad95687ba82c2ce50e74f7b754645e5117c3a5bec8151c0726d5857980a8666040518060400160405280600481526020017f43414745000000000000000000000000000000000000000000000000000000008152508051906020012061090b61113b565b3060405160200161091f9493929190611607565b60405160208183030381529060405280519060200120905060007f6e71edae12b1b97f4d1f60370fef10105fa2faae0126114a169c64845d6126c98a8a8a600260008f73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008154809291906109ad906118fd565b919050558b6040516020016109c7969594939291906115a6565b604051602081830303815290604052805190602001209050600082826040516020016109f4929190611539565b604051602081830303815290604052805190602001209050600060018289898960405160008152602001604052604051610a31949392919061164c565b6020604051602081039080840390855afa158015610a53573d6000803e3d6000fd5b505050602060405103519050600073ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff161415610acf576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610ac6906116d3565b60405180910390fd5b8b73ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff1614610b3d576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610b3490611713565b60405180910390fd5b88421115610b80576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610b77906116f3565b60405180910390fd5b84600360008e73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008d73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a8154816bffffffffffffffffffffffff02191690836bffffffffffffffffffffffff1602179055508a73ffffffffffffffffffffffffffffffffffffffff168c73ffffffffffffffffffffffffffffffffffffffff167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b92587604051610c889190611789565b60405180910390a3505050505050505050505050565b6000600360008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a90046bffffffffffffffffffffffff166bffffffffffffffffffffffff16905092915050565b60006c0100000000000000000000000083108290610d9f576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610d969190611691565b60405180910390fd5b5082905092915050565b6000836bffffffffffffffffffffffff16836bffffffffffffffffffffffff1611158290610e0d576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610e049190611691565b60405180910390fd5b508284610e1a919061180d565b90509392505050565b600073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff161415610e93576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610e8a90611733565b60405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff161415610f03576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610efa906116b3565b60405180910390fd5b610f7d600160008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a90046bffffffffffffffffffffffff1682604051806060016040528060368152602001611b9560369139610da9565b600160008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a8154816bffffffffffffffffffffffff02191690836bffffffffffffffffffffffff160217905550611064600160008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a90046bffffffffffffffffffffffff1682604051806060016040528060308152602001611bcb60309139611148565b600160008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a8154816bffffffffffffffffffffffff02191690836bffffffffffffffffffffffff1602179055508173ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef8360405161112e9190611789565b60405180910390a3505050565b6000804690508091505090565b600080838561115791906117cb565b9050846bffffffffffffffffffffffff16816bffffffffffffffffffffffff16101583906111bb576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016111b29190611691565b60405180910390fd5b50809150509392505050565b6000813590506111d681611ad7565b92915050565b6000813590506111eb81611aee565b92915050565b60008135905061120081611b05565b92915050565b60008135905061121581611b1c565b92915050565b6000602082840312156112315761123061197f565b5b600061123f848285016111c7565b91505092915050565b6000806040838503121561125f5761125e61197f565b5b600061126d858286016111c7565b925050602061127e858286016111c7565b9150509250929050565b6000806000606084860312156112a1576112a061197f565b5b60006112af868287016111c7565b93505060206112c0868287016111c7565b92505060406112d1868287016111f1565b9150509250925092565b600080600080600080600060e0888a0312156112fa576112f961197f565b5b60006113088a828b016111c7565b97505060206113198a828b016111c7565b965050604061132a8a828b016111f1565b955050606061133b8a828b016111f1565b945050608061134c8a828b01611206565b93505060a061135d8a828b016111dc565b92505060c061136e8a828b016111dc565b91505092959891949750929550565b600080604083850312156113945761139361197f565b5b60006113a2858286016111c7565b92505060206113b3858286016111f1565b9150509250929050565b6113c681611841565b82525050565b6113d581611853565b82525050565b6113e48161185f565b82525050565b6113fb6113f68261185f565b611946565b82525050565b600061140c826117a4565b61141681856117af565b93506114268185602086016118ca565b61142f81611984565b840191505092915050565b6000611447603a836117af565b915061145282611995565b604082019050919050565b600061146a6002836117c0565b9150611475826119e4565b600282019050919050565b600061148d601f836117af565b915061149882611a0d565b602082019050919050565b60006114b0601f836117af565b91506114bb82611a36565b602082019050919050565b60006114d3601a836117af565b91506114de82611a5f565b602082019050919050565b60006114f6603c836117af565b915061150182611a88565b604082019050919050565b61151581611889565b82525050565b61152481611893565b82525050565b611533816118b8565b82525050565b60006115448261145d565b915061155082856113ea565b60208201915061156082846113ea565b6020820191508190509392505050565b600060208201905061158560008301846113cc565b92915050565b60006020820190506115a060008301846113db565b92915050565b600060c0820190506115bb60008301896113db565b6115c860208301886113bd565b6115d560408301876113bd565b6115e2606083018661150c565b6115ef608083018561150c565b6115fc60a083018461150c565b979650505050505050565b600060808201905061161c60008301876113db565b61162960208301866113db565b611636604083018561150c565b61164360608301846113bd565b95945050505050565b600060808201905061166160008301876113db565b61166e602083018661151b565b61167b60408301856113db565b61168860608301846113db565b95945050505050565b600060208201905081810360008301526116ab8184611401565b905092915050565b600060208201905081810360008301526116cc8161143a565b9050919050565b600060208201905081810360008301526116ec81611480565b9050919050565b6000602082019050818103600083015261170c816114a3565b9050919050565b6000602082019050818103600083015261172c816114c6565b9050919050565b6000602082019050818103600083015261174c816114e9565b9050919050565b6000602082019050611768600083018461150c565b92915050565b6000602082019050611783600083018461151b565b92915050565b600060208201905061179e600083018461152a565b92915050565b600081519050919050565b600082825260208201905092915050565b600081905092915050565b60006117d6826118a0565b91506117e1836118a0565b9250826bffffffffffffffffffffffff0382111561180257611801611950565b5b828201905092915050565b6000611818826118a0565b9150611823836118a0565b92508282101561183657611835611950565b5b828203905092915050565b600061184c82611869565b9050919050565b60008115159050919050565b6000819050919050565b600073ffffffffffffffffffffffffffffffffffffffff82169050919050565b6000819050919050565b600060ff82169050919050565b60006bffffffffffffffffffffffff82169050919050565b60006118c3826118a0565b9050919050565b60005b838110156118e85780820151818401526020810190506118cd565b838111156118f7576000848401525b50505050565b600061190882611889565b91507fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff82141561193b5761193a611950565b5b600182019050919050565b6000819050919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b600080fd5b6000601f19601f8301169050919050565b7f433467333a3a5f7472616e73666572546f6b656e733a2063616e6e6f7420747260008201527f616e7366657220746f20746865207a65726f2061646472657373000000000000602082015250565b7f1901000000000000000000000000000000000000000000000000000000000000600082015250565b7f433467333a3a7065726d69743a20696e76616c6964207369676e617475726500600082015250565b7f433467333a3a7065726d69743a207369676e6174757265206578706972656400600082015250565b7f433467333a3a7065726d69743a20756e617574686f72697a6564000000000000600082015250565b7f433467333a3a5f7472616e73666572546f6b656e733a2063616e6e6f7420747260008201527f616e736665722066726f6d20746865207a65726f206164647265737300000000602082015250565b611ae081611841565b8114611aeb57600080fd5b50565b611af78161185f565b8114611b0257600080fd5b50565b611b0e81611889565b8114611b1957600080fd5b50565b611b2581611893565b8114611b3057600080fd5b5056fe433467333a3a7065726d69743a20616d6f756e7420657863656564732039362062697473433467333a3a7472616e7366657246726f6d3a207472616e7366657220616d6f756e742065786365656473207370656e64657220616c6c6f77616e6365433467333a3a5f7472616e73666572546f6b656e733a207472616e7366657220616d6f756e7420657863656564732062616c616e6365433467333a3a5f7472616e73666572546f6b656e733a207472616e7366657220616d6f756e74206f766572666c6f7773433467333a3a617070726f76653a20616d6f756e7420657863656564732039362062697473433467333a3a7472616e736665723a20616d6f756e7420657863656564732039362062697473a2646970667358221220b5cb0c4c9f7874d2742a4a66debdbc3cfc13a900deee5ea8379e63603d3a908564736f6c63430008060033

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

000000000000000000000000432d4951dc62139614dcba122f1b73d618fdf312

-----Decoded View---------------
Arg [0] : account (address): 0x432D4951dC62139614DCba122F1B73D618Fdf312

-----Encoded View---------------
1 Constructor Arguments found :
Arg [0] : 000000000000000000000000432d4951dc62139614dcba122f1b73d618fdf312


Deployed Bytecode Sourcemap

117:7753:0:-:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;186:36;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;2765:420;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;474:40;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;723:122;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;5815:664;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;935:137;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;378:35;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;4918:106;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;1150:39;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;280:38;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;5280:234;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;3663:1059;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;2163:134;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;186:36;;;;;;;;;;;;;;;;;;;:::o;2765:420::-;2833:4;2849:13;2889:14;2876:9;:27;2872:182;;;2928:16;2919:25;;2872:182;;;2985:58;2992:9;2985:58;;;;;;;;;;;;;;;;;:6;:58::i;:::-;2976:67;;2872:182;3098:6;3064:10;:22;3075:10;3064:22;;;;;;;;;;;;;;;:31;3087:7;3064:31;;;;;;;;;;;;;;;;:40;;;;;;;;;;;;;;;;;;3141:7;3120:37;;3129:10;3120:37;;;3150:6;3120:37;;;;;;:::i;:::-;;;;;;;;3174:4;3167:11;;;2765:420;;;;:::o;474:40::-;;;;:::o;723:122::-;765:80;723:122;:::o;5815:664::-;5897:4;5913:15;5931:10;5913:28;;5951:23;5977:10;:15;5988:3;5977:15;;;;;;;;;;;;;;;:24;5993:7;5977:24;;;;;;;;;;;;;;;;;;;;;;;;;5951:50;;6011:13;6027:58;6034:9;6027:58;;;;;;;;;;;;;;;;;:6;:58::i;:::-;6011:74;;6111:3;6100:14;;:7;:14;;;;:54;;;;;6138:16;6118:36;;:16;:36;;;;6100:54;6096:312;;;6170:19;6192:96;6198:16;6216:6;6192:96;;;;;;;;;;;;;;;;;:5;:96::i;:::-;6170:118;;6329:12;6302:10;:15;6313:3;6302:15;;;;;;;;;;;;;;;:24;6318:7;6302:24;;;;;;;;;;;;;;;;:39;;;;;;;;;;;;;;;;;;6375:7;6361:36;;6370:3;6361:36;;;6384:12;6361:36;;;;;;:::i;:::-;;;;;;;;6156:252;6096:312;6418:33;6434:3;6439;6444:6;6418:15;:33::i;:::-;6468:4;6461:11;;;;;5815:664;;;;;:::o;935:137::-;977:95;935:137;:::o;378:35::-;411:2;378:35;:::o;4918:106::-;4977:4;5000:8;:17;5009:7;5000:17;;;;;;;;;;;;;;;;;;;;;;;;;4993:24;;;;4918:106;;;:::o;1150:39::-;;;;;;;;;;;;;;;;;:::o;280:38::-;;;;;;;;;;;;;;;;;;;:::o;5280:234::-;5345:4;5361:13;5377:59;5384:9;5377:59;;;;;;;;;;;;;;;;;:6;:59::i;:::-;5361:75;;5446:40;5462:10;5474:3;5479:6;5446:15;:40::i;:::-;5503:4;5496:11;;;5280:234;;;;:::o;3663:1059::-;3792:13;3832:14;3819:9;:27;3815:180;;;3871:16;3862:25;;3815:180;;;3927:57;3934:9;3927:57;;;;;;;;;;;;;;;;;:6;:57::i;:::-;3918:66;;3815:180;4005:23;765:80;4085:4;;;;;;;;;;;;;;;;;4069:22;;;;;;4093:12;:10;:12::i;:::-;4115:4;4041:80;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;4031:91;;;;;;4005:117;;4132:18;977:95;4191:5;4198:7;4207:9;4218:6;:13;4225:5;4218:13;;;;;;;;;;;;;;;;:15;;;;;;;;;:::i;:::-;;;;;4235:8;4163:81;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;4153:92;;;;;;4132:113;;4255:14;4311:15;4328:10;4282:57;;;;;;;;;:::i;:::-;;;;;;;;;;;;;4272:68;;;;;;4255:85;;4350:17;4370:26;4380:6;4388:1;4391;4394;4370:26;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;4350:46;;4435:1;4414:23;;:9;:23;;;;4406:67;;;;;;;;;;;;:::i;:::-;;;;;;;;;4504:5;4491:18;;:9;:18;;;4483:57;;;;;;;;;;;;:::i;:::-;;;;;;;;;4577:8;4558:15;:27;;4550:71;;;;;;;;;;;;:::i;:::-;;;;;;;;;4661:6;4632:10;:17;4643:5;4632:17;;;;;;;;;;;;;;;:26;4650:7;4632:26;;;;;;;;;;;;;;;;:35;;;;;;;;;;;;;;;;;;4699:7;4683:32;;4692:5;4683:32;;;4708:6;4683:32;;;;;;:::i;:::-;;;;;;;;3782:940;;;;;3663:1059;;;;;;;:::o;2163:134::-;2239:4;2262:10;:19;2273:7;2262:19;;;;;;;;;;;;;;;:28;2282:7;2262:28;;;;;;;;;;;;;;;;;;;;;;;;;2255:35;;;;2163:134;;;;:::o;7197:158::-;7272:6;7302:5;7298:1;:9;7309:12;7290:32;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;7346:1;7332:16;;7197:158;;;;:::o;7551:162::-;7637:6;7668:1;7663:6;;:1;:6;;;;7671:12;7655:29;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;7705:1;7701;:5;;;;:::i;:::-;7694:12;;7551:162;;;;;:::o;6486:541::-;6594:1;6579:17;;:3;:17;;;;6571:90;;;;;;;;;;;;:::i;:::-;;;;;;;;;6694:1;6679:17;;:3;:17;;;;6671:88;;;;;;;;;;;;:::i;:::-;;;;;;;;;6786:86;6792:8;:13;6801:3;6792:13;;;;;;;;;;;;;;;;;;;;;;;;;6807:6;6786:86;;;;;;;;;;;;;;;;;:5;:86::i;:::-;6770:8;:13;6779:3;6770:13;;;;;;;;;;;;;;;;:102;;;;;;;;;;;;;;;;;;6898:80;6904:8;:13;6913:3;6904:13;;;;;;;;;;;;;;;;;;;;;;;;;6919:6;6898:80;;;;;;;;;;;;;;;;;:5;:80::i;:::-;6882:8;:13;6891:3;6882:13;;;;;;;;;;;;;;;;:96;;;;;;;;;;;;;;;;;;7007:3;6993:26;;7002:3;6993:26;;;7012:6;6993:26;;;;;;:::i;:::-;;;;;;;;6486:541;;;:::o;7719:149::-;7764:4;7780:15;7827:9;7816:20;;7854:7;7847:14;;;7719:149;:::o;7361:184::-;7447:6;7465:8;7480:1;7476;:5;;;;:::i;:::-;7465:16;;7504:1;7499:6;;:1;:6;;;;7507:12;7491:29;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;7537:1;7530:8;;;7361:184;;;;;:::o;7:139:2:-;53:5;91:6;78:20;69:29;;107:33;134:5;107:33;:::i;:::-;59:87;;;;:::o;152:139::-;198:5;236:6;223:20;214:29;;252:33;279:5;252:33;:::i;:::-;204:87;;;;:::o;297:139::-;343:5;381:6;368:20;359:29;;397:33;424:5;397:33;:::i;:::-;349:87;;;;:::o;442:135::-;486:5;524:6;511:20;502:29;;540:31;565:5;540:31;:::i;:::-;492:85;;;;:::o;583:329::-;642:6;691:2;679:9;670:7;666:23;662:32;659:2;;;697:79;;:::i;:::-;659:2;817:1;842:53;887:7;878:6;867:9;863:22;842:53;:::i;:::-;832:63;;788:117;649:263;;;;:::o;918:474::-;986:6;994;1043:2;1031:9;1022:7;1018:23;1014:32;1011:2;;;1049:79;;:::i;:::-;1011:2;1169:1;1194:53;1239:7;1230:6;1219:9;1215:22;1194:53;:::i;:::-;1184:63;;1140:117;1296:2;1322:53;1367:7;1358:6;1347:9;1343:22;1322:53;:::i;:::-;1312:63;;1267:118;1001:391;;;;;:::o;1398:619::-;1475:6;1483;1491;1540:2;1528:9;1519:7;1515:23;1511:32;1508:2;;;1546:79;;:::i;:::-;1508:2;1666:1;1691:53;1736:7;1727:6;1716:9;1712:22;1691:53;:::i;:::-;1681:63;;1637:117;1793:2;1819:53;1864:7;1855:6;1844:9;1840:22;1819:53;:::i;:::-;1809:63;;1764:118;1921:2;1947:53;1992:7;1983:6;1972:9;1968:22;1947:53;:::i;:::-;1937:63;;1892:118;1498:519;;;;;:::o;2023:1199::-;2134:6;2142;2150;2158;2166;2174;2182;2231:3;2219:9;2210:7;2206:23;2202:33;2199:2;;;2238:79;;:::i;:::-;2199:2;2358:1;2383:53;2428:7;2419:6;2408:9;2404:22;2383:53;:::i;:::-;2373:63;;2329:117;2485:2;2511:53;2556:7;2547:6;2536:9;2532:22;2511:53;:::i;:::-;2501:63;;2456:118;2613:2;2639:53;2684:7;2675:6;2664:9;2660:22;2639:53;:::i;:::-;2629:63;;2584:118;2741:2;2767:53;2812:7;2803:6;2792:9;2788:22;2767:53;:::i;:::-;2757:63;;2712:118;2869:3;2896:51;2939:7;2930:6;2919:9;2915:22;2896:51;:::i;:::-;2886:61;;2840:117;2996:3;3023:53;3068:7;3059:6;3048:9;3044:22;3023:53;:::i;:::-;3013:63;;2967:119;3125:3;3152:53;3197:7;3188:6;3177:9;3173:22;3152:53;:::i;:::-;3142:63;;3096:119;2189:1033;;;;;;;;;;:::o;3228:474::-;3296:6;3304;3353:2;3341:9;3332:7;3328:23;3324:32;3321:2;;;3359:79;;:::i;:::-;3321:2;3479:1;3504:53;3549:7;3540:6;3529:9;3525:22;3504:53;:::i;:::-;3494:63;;3450:117;3606:2;3632:53;3677:7;3668:6;3657:9;3653:22;3632:53;:::i;:::-;3622:63;;3577:118;3311:391;;;;;:::o;3708:118::-;3795:24;3813:5;3795:24;:::i;:::-;3790:3;3783:37;3773:53;;:::o;3832:109::-;3913:21;3928:5;3913:21;:::i;:::-;3908:3;3901:34;3891:50;;:::o;3947:118::-;4034:24;4052:5;4034:24;:::i;:::-;4029:3;4022:37;4012:53;;:::o;4071:157::-;4176:45;4196:24;4214:5;4196:24;:::i;:::-;4176:45;:::i;:::-;4171:3;4164:58;4154:74;;:::o;4234:364::-;4322:3;4350:39;4383:5;4350:39;:::i;:::-;4405:71;4469:6;4464:3;4405:71;:::i;:::-;4398:78;;4485:52;4530:6;4525:3;4518:4;4511:5;4507:16;4485:52;:::i;:::-;4562:29;4584:6;4562:29;:::i;:::-;4557:3;4553:39;4546:46;;4326:272;;;;;:::o;4604:366::-;4746:3;4767:67;4831:2;4826:3;4767:67;:::i;:::-;4760:74;;4843:93;4932:3;4843:93;:::i;:::-;4961:2;4956:3;4952:12;4945:19;;4750:220;;;:::o;4976:400::-;5136:3;5157:84;5239:1;5234:3;5157:84;:::i;:::-;5150:91;;5250:93;5339:3;5250:93;:::i;:::-;5368:1;5363:3;5359:11;5352:18;;5140:236;;;:::o;5382:366::-;5524:3;5545:67;5609:2;5604:3;5545:67;:::i;:::-;5538:74;;5621:93;5710:3;5621:93;:::i;:::-;5739:2;5734:3;5730:12;5723:19;;5528:220;;;:::o;5754:366::-;5896:3;5917:67;5981:2;5976:3;5917:67;:::i;:::-;5910:74;;5993:93;6082:3;5993:93;:::i;:::-;6111:2;6106:3;6102:12;6095:19;;5900:220;;;:::o;6126:366::-;6268:3;6289:67;6353:2;6348:3;6289:67;:::i;:::-;6282:74;;6365:93;6454:3;6365:93;:::i;:::-;6483:2;6478:3;6474:12;6467:19;;6272:220;;;:::o;6498:366::-;6640:3;6661:67;6725:2;6720:3;6661:67;:::i;:::-;6654:74;;6737:93;6826:3;6737:93;:::i;:::-;6855:2;6850:3;6846:12;6839:19;;6644:220;;;:::o;6870:118::-;6957:24;6975:5;6957:24;:::i;:::-;6952:3;6945:37;6935:53;;:::o;6994:112::-;7077:22;7093:5;7077:22;:::i;:::-;7072:3;7065:35;7055:51;;:::o;7112:129::-;7198:36;7228:5;7198:36;:::i;:::-;7193:3;7186:49;7176:65;;:::o;7247:663::-;7488:3;7510:148;7654:3;7510:148;:::i;:::-;7503:155;;7668:75;7739:3;7730:6;7668:75;:::i;:::-;7768:2;7763:3;7759:12;7752:19;;7781:75;7852:3;7843:6;7781:75;:::i;:::-;7881:2;7876:3;7872:12;7865:19;;7901:3;7894:10;;7492:418;;;;;:::o;7916:210::-;8003:4;8041:2;8030:9;8026:18;8018:26;;8054:65;8116:1;8105:9;8101:17;8092:6;8054:65;:::i;:::-;8008:118;;;;:::o;8132:222::-;8225:4;8263:2;8252:9;8248:18;8240:26;;8276:71;8344:1;8333:9;8329:17;8320:6;8276:71;:::i;:::-;8230:124;;;;:::o;8360:775::-;8593:4;8631:3;8620:9;8616:19;8608:27;;8645:71;8713:1;8702:9;8698:17;8689:6;8645:71;:::i;:::-;8726:72;8794:2;8783:9;8779:18;8770:6;8726:72;:::i;:::-;8808;8876:2;8865:9;8861:18;8852:6;8808:72;:::i;:::-;8890;8958:2;8947:9;8943:18;8934:6;8890:72;:::i;:::-;8972:73;9040:3;9029:9;9025:19;9016:6;8972:73;:::i;:::-;9055;9123:3;9112:9;9108:19;9099:6;9055:73;:::i;:::-;8598:537;;;;;;;;;:::o;9141:553::-;9318:4;9356:3;9345:9;9341:19;9333:27;;9370:71;9438:1;9427:9;9423:17;9414:6;9370:71;:::i;:::-;9451:72;9519:2;9508:9;9504:18;9495:6;9451:72;:::i;:::-;9533;9601:2;9590:9;9586:18;9577:6;9533:72;:::i;:::-;9615;9683:2;9672:9;9668:18;9659:6;9615:72;:::i;:::-;9323:371;;;;;;;:::o;9700:545::-;9873:4;9911:3;9900:9;9896:19;9888:27;;9925:71;9993:1;9982:9;9978:17;9969:6;9925:71;:::i;:::-;10006:68;10070:2;10059:9;10055:18;10046:6;10006:68;:::i;:::-;10084:72;10152:2;10141:9;10137:18;10128:6;10084:72;:::i;:::-;10166;10234:2;10223:9;10219:18;10210:6;10166:72;:::i;:::-;9878:367;;;;;;;:::o;10251:313::-;10364:4;10402:2;10391:9;10387:18;10379:26;;10451:9;10445:4;10441:20;10437:1;10426:9;10422:17;10415:47;10479:78;10552:4;10543:6;10479:78;:::i;:::-;10471:86;;10369:195;;;;:::o;10570:419::-;10736:4;10774:2;10763:9;10759:18;10751:26;;10823:9;10817:4;10813:20;10809:1;10798:9;10794:17;10787:47;10851:131;10977:4;10851:131;:::i;:::-;10843:139;;10741:248;;;:::o;10995:419::-;11161:4;11199:2;11188:9;11184:18;11176:26;;11248:9;11242:4;11238:20;11234:1;11223:9;11219:17;11212:47;11276:131;11402:4;11276:131;:::i;:::-;11268:139;;11166:248;;;:::o;11420:419::-;11586:4;11624:2;11613:9;11609:18;11601:26;;11673:9;11667:4;11663:20;11659:1;11648:9;11644:17;11637:47;11701:131;11827:4;11701:131;:::i;:::-;11693:139;;11591:248;;;:::o;11845:419::-;12011:4;12049:2;12038:9;12034:18;12026:26;;12098:9;12092:4;12088:20;12084:1;12073:9;12069:17;12062:47;12126:131;12252:4;12126:131;:::i;:::-;12118:139;;12016:248;;;:::o;12270:419::-;12436:4;12474:2;12463:9;12459:18;12451:26;;12523:9;12517:4;12513:20;12509:1;12498:9;12494:17;12487:47;12551:131;12677:4;12551:131;:::i;:::-;12543:139;;12441:248;;;:::o;12695:222::-;12788:4;12826:2;12815:9;12811:18;12803:26;;12839:71;12907:1;12896:9;12892:17;12883:6;12839:71;:::i;:::-;12793:124;;;;:::o;12923:214::-;13012:4;13050:2;13039:9;13035:18;13027:26;;13063:67;13127:1;13116:9;13112:17;13103:6;13063:67;:::i;:::-;13017:120;;;;:::o;13143:220::-;13235:4;13273:2;13262:9;13258:18;13250:26;;13286:70;13353:1;13342:9;13338:17;13329:6;13286:70;:::i;:::-;13240:123;;;;:::o;13450:99::-;13502:6;13536:5;13530:12;13520:22;;13509:40;;;:::o;13555:169::-;13639:11;13673:6;13668:3;13661:19;13713:4;13708:3;13704:14;13689:29;;13651:73;;;;:::o;13730:148::-;13832:11;13869:3;13854:18;;13844:34;;;;:::o;13884:262::-;13923:3;13942:19;13959:1;13942:19;:::i;:::-;13937:24;;13975:19;13992:1;13975:19;:::i;:::-;13970:24;;14088:1;14060:26;14056:34;14053:1;14050:41;14047:2;;;14094:18;;:::i;:::-;14047:2;14138:1;14135;14131:9;14124:16;;13927:219;;;;:::o;14152:188::-;14191:4;14211:19;14228:1;14211:19;:::i;:::-;14206:24;;14244:19;14261:1;14244:19;:::i;:::-;14239:24;;14282:1;14279;14276:8;14273:2;;;14287:18;;:::i;:::-;14273:2;14332:1;14329;14325:9;14317:17;;14196:144;;;;:::o;14346:96::-;14383:7;14412:24;14430:5;14412:24;:::i;:::-;14401:35;;14391:51;;;:::o;14448:90::-;14482:7;14525:5;14518:13;14511:21;14500:32;;14490:48;;;:::o;14544:77::-;14581:7;14610:5;14599:16;;14589:32;;;:::o;14627:126::-;14664:7;14704:42;14697:5;14693:54;14682:65;;14672:81;;;:::o;14759:77::-;14796:7;14825:5;14814:16;;14804:32;;;:::o;14842:86::-;14877:7;14917:4;14910:5;14906:16;14895:27;;14885:43;;;:::o;14934:109::-;14970:7;15010:26;15003:5;14999:38;14988:49;;14978:65;;;:::o;15049:111::-;15098:9;15131:23;15148:5;15131:23;:::i;:::-;15118:36;;15108:52;;;:::o;15166:307::-;15234:1;15244:113;15258:6;15255:1;15252:13;15244:113;;;15343:1;15338:3;15334:11;15328:18;15324:1;15319:3;15315:11;15308:39;15280:2;15277:1;15273:10;15268:15;;15244:113;;;15375:6;15372:1;15369:13;15366:2;;;15455:1;15446:6;15441:3;15437:16;15430:27;15366:2;15215:258;;;;:::o;15479:233::-;15518:3;15541:24;15559:5;15541:24;:::i;:::-;15532:33;;15587:66;15580:5;15577:77;15574:2;;;15657:18;;:::i;:::-;15574:2;15704:1;15697:5;15693:13;15686:20;;15522:190;;;:::o;15718:79::-;15757:7;15786:5;15775:16;;15765:32;;;:::o;15803:180::-;15851:77;15848:1;15841:88;15948:4;15945:1;15938:15;15972:4;15969:1;15962:15;16112:117;16221:1;16218;16211:12;16235:102;16276:6;16327:2;16323:7;16318:2;16311:5;16307:14;16303:28;16293:38;;16283:54;;;:::o;16343:245::-;16483:34;16479:1;16471:6;16467:14;16460:58;16552:28;16547:2;16539:6;16535:15;16528:53;16449:139;:::o;16594:214::-;16734:66;16730:1;16722:6;16718:14;16711:90;16700:108;:::o;16814:181::-;16954:33;16950:1;16942:6;16938:14;16931:57;16920:75;:::o;17001:181::-;17141:33;17137:1;17129:6;17125:14;17118:57;17107:75;:::o;17188:176::-;17328:28;17324:1;17316:6;17312:14;17305:52;17294:70;:::o;17370:247::-;17510:34;17506:1;17498:6;17494:14;17487:58;17579:30;17574:2;17566:6;17562:15;17555:55;17476:141;:::o;17623:122::-;17696:24;17714:5;17696:24;:::i;:::-;17689:5;17686:35;17676:2;;17735:1;17732;17725:12;17676:2;17666:79;:::o;17751:122::-;17824:24;17842:5;17824:24;:::i;:::-;17817:5;17814:35;17804:2;;17863:1;17860;17853:12;17804:2;17794:79;:::o;17879:122::-;17952:24;17970:5;17952:24;:::i;:::-;17945:5;17942:35;17932:2;;17991:1;17988;17981:12;17932:2;17922:79;:::o;18007:118::-;18078:22;18094:5;18078:22;:::i;:::-;18071:5;18068:33;18058:2;;18115:1;18112;18105:12;18058:2;18048:77;:::o

Swarm Source

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