ETH Price: $2,804.02 (-5.08%)

Token

Mover (mo)

Overview

Max Total Supply

1,000,000,000 mo

Holders

970

Transfers

-
0

Market

Price

$0.00 @ 0.000000 ETH

Onchain Market Cap

-

Circulating Supply Market Cap

-

Other Info

Token Contract (WITH 18 Decimals)

Loading...
Loading
Loading...
Loading
Loading...
Loading

Click here to update the token information / general information

Contract Source Code Verified (Exact Match)

Contract Name:
MoToken

Compiler Version
v0.8.0+commit.c7dfd78e

Optimization Enabled:
No with 200 runs

Other Settings:
default evmVersion, None license

Contract Source Code (Solidity Multiple files format)

File 2 of 3: MoToken.sol
// SPDX-License-Identifier: GPL-3.0-or-later
pragma solidity >=0.8.0;

import "./IBEP20.sol";
import "./SafeMath.sol";


contract Ownable {
    address public _owner;

    /**
     * @dev Throws if called by any account other than the owner.
     */
    modifier onlyOwner() {
        require(_owner == msg.sender, "Ownable: caller is not the owner");
        _;
    }

    function changeOwner(address newOwner) public onlyOwner {
        _owner = newOwner;
    }
}




contract MoToken is IBEP20, Ownable {
    
    using SafeMath for uint256;

    mapping (address => uint256) private _balances;

    mapping (address => mapping (address => uint256)) private _allowances;

    string constant  _name = "Mover";
    string constant _symbol = "mo";
    uint8 immutable _decimals = 18;
    uint256 private _totalSupply = 1000000000*10**18;
    constructor()
    {
        _owner = msg.sender;
        _balances[_owner] = _totalSupply;
        emit Transfer(address(0), _owner, _totalSupply);     
    }

 
    function name() public  pure returns (string memory) {
        return _name;
    }

    function symbol() public  pure returns (string memory) {
        return _symbol;
    }

    function decimals() public pure returns (uint8) {
        return _decimals;
    }
    
    function totalSupply() public view override returns (uint256) {
        return _totalSupply;
    }

    function balanceOf(address account) public view override returns (uint256) {
        return _balances[account];
    }

    function transfer(address recipient, uint256 amount) public override returns (bool) {
        _transfer(msg.sender, recipient, amount);
        return true;
    }

    function allowance(address owner, address spender) public view override returns (uint256) {
        return _allowances[owner][spender];
    }

    function approve(address spender, uint256 value) public override returns (bool) {
        _approve(msg.sender, spender, value);
        return true;
    }

    function transferFrom(address sender, address recipient, uint256 amount) public override returns (bool) {
        _transfer(sender, recipient, amount);
        _approve(sender, msg.sender, _allowances[sender][msg.sender].sub(amount));
        return true;
    }

    function increaseAllowance(address spender, uint256 addedValue) public returns (bool) {
        _approve(msg.sender, spender, _allowances[msg.sender][spender].add(addedValue));
        return true;
    }

    function decreaseAllowance(address spender, uint256 subtractedValue) public returns (bool) {
        _approve(msg.sender, spender, _allowances[msg.sender][spender].sub(subtractedValue));
        return true;
    }
    
    function burn(uint256 amount) public override returns (bool) {
        _burn(msg.sender, amount);
        return true;
    }
    
    function burnFrom(address account, uint256 amount) public override returns (bool) {
        _burn(account, amount);
        _approve(account, msg.sender, _allowances[account][msg.sender].sub(amount));
        return true;
    }

    function _transfer(address sender, address recipient, uint256 amount) internal {
        require(sender != address(0), "ERC20: transfer from the zero address");
        require(recipient != address(0), "ERC20: transfer to the zero address");

        
        uint256 transferAmount = amount;
        
            
  
        
        _balances[sender] = _balances[sender].sub(amount);
        _balances[recipient] = _balances[recipient].add(transferAmount);
        emit Transfer(sender, recipient, transferAmount);
    }
    
    function _burn(address account, uint256 value) internal {
        require(account != address(0), "ERC20: burn from the zero address");

        _totalSupply = _totalSupply.sub(value);
        _balances[account] = _balances[account].sub(value);
        emit Transfer(account, address(0), value);
    }

    function _approve(address owner, address spender, uint256 value) internal {
        require(owner != address(0), "ERC20: approve from the zero address");
        require(spender != address(0), "ERC20: approve to the zero address");

        _allowances[owner][spender] = value;
        emit Approval(owner, spender, value);
    }


}

File 1 of 3: IBEP20.sol
// SPDX-License-Identifier: GPL-3.0-or-later

pragma solidity >=0.4.0;

interface IBEP20 {
    /**
     * @dev Returns the amount of tokens in existence.
     */
    function totalSupply() external view returns (uint256);

    /**
     * @dev Returns the amount of tokens owned by `account`.
     */
    function balanceOf(address account) external view returns (uint256);

    /**
     * @dev Moves `amount` tokens from the caller's account to `recipient`.
     *
     * Returns a boolean value indicating whether the operation succeeded.
     *
     * Emits a {Transfer} event.
     */
    function transfer(address recipient, uint256 amount) external returns (bool);

    /**
     * @dev Returns the remaining number of tokens that `spender` will be
     * allowed to spend on behalf of `owner` through {transferFrom}. This is
     * zero by default.
     *
     * This value changes when {approve} or {transferFrom} are called.
     */
    function allowance(address owner, address spender) external view returns (uint256);

    /**
     * @dev Sets `amount` as the allowance of `spender` over the caller's tokens.
     *
     * Returns a boolean value indicating whether the operation succeeded.
     *
     * IMPORTANT: Beware that changing an allowance with this method brings the risk
     * that someone may use both the old and the new allowance by unfortunate
     * transaction ordering. One possible solution to mitigate this race
     * condition is to first reduce the spender's allowance to 0 and set the
     * desired value afterwards:
     * https://github.com/ethereum/EIPs/issues/20#issuecomment-263524729
     *
     * Emits an {Approval} event.
     */
    function approve(address spender, uint256 amount) external returns (bool);

    /**
     * @dev Moves `amount` tokens from `sender` to `recipient` using the
     * allowance mechanism. `amount` is then deducted from the caller's
     * allowance.
     *
     * Returns a boolean value indicating whether the operation succeeded.
     *
     * Emits a {Transfer} event.
     */
    function transferFrom(address sender, address recipient, uint256 amount) external returns (bool);
    
    function burnFrom(address account, uint256 amount) external returns (bool);

    function burn(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: SafeMath.sol
// SPDX-License-Identifier: MIT

pragma solidity >=0.4.0;

/**
 * @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 subtraction of two unsigned integers, reverting on
     * overflow (when the result is negative).
     *
     * Counterpart to Solidity's `-` operator.
     *
     * Requirements:
     *
     * - Subtraction cannot overflow.
     */
    function sub(uint256 a, uint256 b) internal pure returns (uint256) {
        return sub(a, b, 'SafeMath: subtraction overflow');
    }

    /**
     * @dev Returns the subtraction of two unsigned integers, reverting with custom message on
     * overflow (when the result is negative).
     *
     * Counterpart to Solidity's `-` operator.
     *
     * Requirements:
     *
     * - Subtraction cannot overflow.
     */
    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 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) {
        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;
    }

    function min(uint256 x, uint256 y) internal pure returns (uint256 z) {
        z = x < y ? x : y;
    }

    // babylonian method (https://en.wikipedia.org/wiki/Methods_of_computing_square_roots#Babylonian_method)
    function sqrt(uint256 y) internal pure returns (uint256 z) {
        if (y > 3) {
            z = y;
            uint256 x = y / 2 + 1;
            while (x < z) {
                z = x;
                x = (y / x + x) / 2;
            }
        } else if (y != 0) {
            z = 1;
        }
    }
}

Contract Security Audit

Contract ABI

API
[{"inputs":[],"stateMutability":"nonpayable","type":"constructor"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"owner","type":"address"},{"indexed":true,"internalType":"address","name":"spender","type":"address"},{"indexed":false,"internalType":"uint256","name":"value","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":"value","type":"uint256"}],"name":"Transfer","type":"event"},{"inputs":[],"name":"_owner","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"owner","type":"address"},{"internalType":"address","name":"spender","type":"address"}],"name":"allowance","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"spender","type":"address"},{"internalType":"uint256","name":"value","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":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"account","type":"address"},{"internalType":"uint256","name":"amount","type":"uint256"}],"name":"burnFrom","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"newOwner","type":"address"}],"name":"changeOwner","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"decimals","outputs":[{"internalType":"uint8","name":"","type":"uint8"}],"stateMutability":"pure","type":"function"},{"inputs":[{"internalType":"address","name":"spender","type":"address"},{"internalType":"uint256","name":"subtractedValue","type":"uint256"}],"name":"decreaseAllowance","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"spender","type":"address"},{"internalType":"uint256","name":"addedValue","type":"uint256"}],"name":"increaseAllowance","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"name","outputs":[{"internalType":"string","name":"","type":"string"}],"stateMutability":"pure","type":"function"},{"inputs":[],"name":"symbol","outputs":[{"internalType":"string","name":"","type":"string"}],"stateMutability":"pure","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"}]

60a0604052601260ff1660809060ff1660f81b8152506b033b2e3c9fd0803ce800000060035534801561003157600080fd5b50336000806101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550600354600160008060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000208190555060008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16600073ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef6003546040516101599190610175565b60405180910390a361019a565b61016f81610190565b82525050565b600060208201905061018a6000830184610166565b92915050565b6000819050919050565b60805160f81c61170b6101b8600039600061046f015261170b6000f3fe608060405234801561001057600080fd5b50600436106100f55760003560e01c806370a0823111610097578063a6f9dae111610066578063a6f9dae1146102c2578063a9059cbb146102de578063b2bdfa7b1461030e578063dd62ed3e1461032c576100f5565b806370a082311461021457806379cc67901461024457806395d89b4114610274578063a457c2d714610292576100f5565b806323b872dd116100d357806323b872dd14610166578063313ce5671461019657806339509351146101b457806342966c68146101e4576100f5565b806306fdde03146100fa578063095ea7b31461011857806318160ddd14610148575b600080fd5b61010261035c565b60405161010f9190611401565b60405180910390f35b610132600480360381019061012d9190611073565b610399565b60405161013f91906113e6565b60405180910390f35b6101506103b0565b60405161015d9190611503565b60405180910390f35b610180600480360381019061017b9190611024565b6103ba565b60405161018d91906113e6565b60405180910390f35b61019e61046b565b6040516101ab919061151e565b60405180910390f35b6101ce60048036038101906101c99190611073565b610493565b6040516101db91906113e6565b60405180910390f35b6101fe60048036038101906101f991906110af565b610538565b60405161020b91906113e6565b60405180910390f35b61022e60048036038101906102299190610fbf565b61054d565b60405161023b9190611503565b60405180910390f35b61025e60048036038101906102599190611073565b610596565b60405161026b91906113e6565b60405180910390f35b61027c610645565b6040516102899190611401565b60405180910390f35b6102ac60048036038101906102a79190611073565b610682565b6040516102b991906113e6565b60405180910390f35b6102dc60048036038101906102d79190610fbf565b610727565b005b6102f860048036038101906102f39190611073565b6107f8565b60405161030591906113e6565b60405180910390f35b61031661080f565b60405161032391906113cb565b60405180910390f35b61034660048036038101906103419190610fe8565b610833565b6040516103539190611503565b60405180910390f35b60606040518060400160405280600581526020017f4d6f766572000000000000000000000000000000000000000000000000000000815250905090565b60006103a63384846108ba565b6001905092915050565b6000600354905090565b60006103c7848484610a85565b610460843361045b85600260008a73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054610cff90919063ffffffff16565b6108ba565b600190509392505050565b60007f0000000000000000000000000000000000000000000000000000000000000000905090565b600061052e338461052985600260003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008973ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054610d4990919063ffffffff16565b6108ba565b6001905092915050565b60006105443383610da7565b60019050919050565b6000600160008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020549050919050565b60006105a28383610da7565b61063b833361063685600260008973ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054610cff90919063ffffffff16565b6108ba565b6001905092915050565b60606040518060400160405280600281526020017f6d6f000000000000000000000000000000000000000000000000000000000000815250905090565b600061071d338461071885600260003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008973ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054610cff90919063ffffffff16565b6108ba565b6001905092915050565b3373ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16146107b5576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016107ac90611483565b60405180910390fd5b806000806101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555050565b6000610805338484610a85565b6001905092915050565b60008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b6000600260008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054905092915050565b600073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff16141561092a576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610921906114e3565b60405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff16141561099a576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161099190611443565b60405180910390fd5b80600260008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508173ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b92583604051610a789190611503565b60405180910390a3505050565b600073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff161415610af5576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610aec906114c3565b60405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff161415610b65576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610b5c90611423565b60405180910390fd5b6000819050610bbc82600160008773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054610cff90919063ffffffff16565b600160008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002081905550610c5181600160008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054610d4990919063ffffffff16565b600160008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508273ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef83604051610cf19190611503565b60405180910390a350505050565b6000610d4183836040518060400160405280601e81526020017f536166654d6174683a207375627472616374696f6e206f766572666c6f770000815250610f31565b905092915050565b6000808284610d589190611555565b905083811015610d9d576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610d9490611463565b60405180910390fd5b8091505092915050565b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff161415610e17576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610e0e906114a3565b60405180910390fd5b610e2c81600354610cff90919063ffffffff16565b600381905550610e8481600160008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054610cff90919063ffffffff16565b600160008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002081905550600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef83604051610f259190611503565b60405180910390a35050565b6000838311158290610f79576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610f709190611401565b60405180910390fd5b5060008385610f8891906115ab565b9050809150509392505050565b600081359050610fa4816116a7565b92915050565b600081359050610fb9816116be565b92915050565b600060208284031215610fd157600080fd5b6000610fdf84828501610f95565b91505092915050565b60008060408385031215610ffb57600080fd5b600061100985828601610f95565b925050602061101a85828601610f95565b9150509250929050565b60008060006060848603121561103957600080fd5b600061104786828701610f95565b935050602061105886828701610f95565b925050604061106986828701610faa565b9150509250925092565b6000806040838503121561108657600080fd5b600061109485828601610f95565b92505060206110a585828601610faa565b9150509250929050565b6000602082840312156110c157600080fd5b60006110cf84828501610faa565b91505092915050565b6110e1816115df565b82525050565b6110f0816115f1565b82525050565b600061110182611539565b61110b8185611544565b935061111b818560208601611634565b61112481611696565b840191505092915050565b600061113c602383611544565b91507f45524332303a207472616e7366657220746f20746865207a65726f206164647260008301527f65737300000000000000000000000000000000000000000000000000000000006020830152604082019050919050565b60006111a2602283611544565b91507f45524332303a20617070726f766520746f20746865207a65726f20616464726560008301527f73730000000000000000000000000000000000000000000000000000000000006020830152604082019050919050565b6000611208601b83611544565b91507f536166654d6174683a206164646974696f6e206f766572666c6f7700000000006000830152602082019050919050565b6000611248602083611544565b91507f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e65726000830152602082019050919050565b6000611288602183611544565b91507f45524332303a206275726e2066726f6d20746865207a65726f2061646472657360008301527f73000000000000000000000000000000000000000000000000000000000000006020830152604082019050919050565b60006112ee602583611544565b91507f45524332303a207472616e736665722066726f6d20746865207a65726f20616460008301527f64726573730000000000000000000000000000000000000000000000000000006020830152604082019050919050565b6000611354602483611544565b91507f45524332303a20617070726f76652066726f6d20746865207a65726f2061646460008301527f72657373000000000000000000000000000000000000000000000000000000006020830152604082019050919050565b6113b68161161d565b82525050565b6113c581611627565b82525050565b60006020820190506113e060008301846110d8565b92915050565b60006020820190506113fb60008301846110e7565b92915050565b6000602082019050818103600083015261141b81846110f6565b905092915050565b6000602082019050818103600083015261143c8161112f565b9050919050565b6000602082019050818103600083015261145c81611195565b9050919050565b6000602082019050818103600083015261147c816111fb565b9050919050565b6000602082019050818103600083015261149c8161123b565b9050919050565b600060208201905081810360008301526114bc8161127b565b9050919050565b600060208201905081810360008301526114dc816112e1565b9050919050565b600060208201905081810360008301526114fc81611347565b9050919050565b600060208201905061151860008301846113ad565b92915050565b600060208201905061153360008301846113bc565b92915050565b600081519050919050565b600082825260208201905092915050565b60006115608261161d565b915061156b8361161d565b9250827fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff038211156115a05761159f611667565b5b828201905092915050565b60006115b68261161d565b91506115c18361161d565b9250828210156115d4576115d3611667565b5b828203905092915050565b60006115ea826115fd565b9050919050565b60008115159050919050565b600073ffffffffffffffffffffffffffffffffffffffff82169050919050565b6000819050919050565b600060ff82169050919050565b60005b83811015611652578082015181840152602081019050611637565b83811115611661576000848401525b50505050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b6000601f19601f8301169050919050565b6116b0816115df565b81146116bb57600080fd5b50565b6116c78161161d565b81146116d257600080fd5b5056fea26469706673582212204ec356b550ae27b960b8b93b6585e4c6b6522afbf6a940a7a391b49c05d3b4a664736f6c63430008000033

Deployed Bytecode

0x608060405234801561001057600080fd5b50600436106100f55760003560e01c806370a0823111610097578063a6f9dae111610066578063a6f9dae1146102c2578063a9059cbb146102de578063b2bdfa7b1461030e578063dd62ed3e1461032c576100f5565b806370a082311461021457806379cc67901461024457806395d89b4114610274578063a457c2d714610292576100f5565b806323b872dd116100d357806323b872dd14610166578063313ce5671461019657806339509351146101b457806342966c68146101e4576100f5565b806306fdde03146100fa578063095ea7b31461011857806318160ddd14610148575b600080fd5b61010261035c565b60405161010f9190611401565b60405180910390f35b610132600480360381019061012d9190611073565b610399565b60405161013f91906113e6565b60405180910390f35b6101506103b0565b60405161015d9190611503565b60405180910390f35b610180600480360381019061017b9190611024565b6103ba565b60405161018d91906113e6565b60405180910390f35b61019e61046b565b6040516101ab919061151e565b60405180910390f35b6101ce60048036038101906101c99190611073565b610493565b6040516101db91906113e6565b60405180910390f35b6101fe60048036038101906101f991906110af565b610538565b60405161020b91906113e6565b60405180910390f35b61022e60048036038101906102299190610fbf565b61054d565b60405161023b9190611503565b60405180910390f35b61025e60048036038101906102599190611073565b610596565b60405161026b91906113e6565b60405180910390f35b61027c610645565b6040516102899190611401565b60405180910390f35b6102ac60048036038101906102a79190611073565b610682565b6040516102b991906113e6565b60405180910390f35b6102dc60048036038101906102d79190610fbf565b610727565b005b6102f860048036038101906102f39190611073565b6107f8565b60405161030591906113e6565b60405180910390f35b61031661080f565b60405161032391906113cb565b60405180910390f35b61034660048036038101906103419190610fe8565b610833565b6040516103539190611503565b60405180910390f35b60606040518060400160405280600581526020017f4d6f766572000000000000000000000000000000000000000000000000000000815250905090565b60006103a63384846108ba565b6001905092915050565b6000600354905090565b60006103c7848484610a85565b610460843361045b85600260008a73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054610cff90919063ffffffff16565b6108ba565b600190509392505050565b60007f0000000000000000000000000000000000000000000000000000000000000012905090565b600061052e338461052985600260003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008973ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054610d4990919063ffffffff16565b6108ba565b6001905092915050565b60006105443383610da7565b60019050919050565b6000600160008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020549050919050565b60006105a28383610da7565b61063b833361063685600260008973ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054610cff90919063ffffffff16565b6108ba565b6001905092915050565b60606040518060400160405280600281526020017f6d6f000000000000000000000000000000000000000000000000000000000000815250905090565b600061071d338461071885600260003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008973ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054610cff90919063ffffffff16565b6108ba565b6001905092915050565b3373ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16146107b5576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016107ac90611483565b60405180910390fd5b806000806101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555050565b6000610805338484610a85565b6001905092915050565b60008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b6000600260008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054905092915050565b600073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff16141561092a576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610921906114e3565b60405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff16141561099a576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161099190611443565b60405180910390fd5b80600260008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508173ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b92583604051610a789190611503565b60405180910390a3505050565b600073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff161415610af5576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610aec906114c3565b60405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff161415610b65576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610b5c90611423565b60405180910390fd5b6000819050610bbc82600160008773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054610cff90919063ffffffff16565b600160008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002081905550610c5181600160008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054610d4990919063ffffffff16565b600160008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508273ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef83604051610cf19190611503565b60405180910390a350505050565b6000610d4183836040518060400160405280601e81526020017f536166654d6174683a207375627472616374696f6e206f766572666c6f770000815250610f31565b905092915050565b6000808284610d589190611555565b905083811015610d9d576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610d9490611463565b60405180910390fd5b8091505092915050565b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff161415610e17576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610e0e906114a3565b60405180910390fd5b610e2c81600354610cff90919063ffffffff16565b600381905550610e8481600160008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054610cff90919063ffffffff16565b600160008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002081905550600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef83604051610f259190611503565b60405180910390a35050565b6000838311158290610f79576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610f709190611401565b60405180910390fd5b5060008385610f8891906115ab565b9050809150509392505050565b600081359050610fa4816116a7565b92915050565b600081359050610fb9816116be565b92915050565b600060208284031215610fd157600080fd5b6000610fdf84828501610f95565b91505092915050565b60008060408385031215610ffb57600080fd5b600061100985828601610f95565b925050602061101a85828601610f95565b9150509250929050565b60008060006060848603121561103957600080fd5b600061104786828701610f95565b935050602061105886828701610f95565b925050604061106986828701610faa565b9150509250925092565b6000806040838503121561108657600080fd5b600061109485828601610f95565b92505060206110a585828601610faa565b9150509250929050565b6000602082840312156110c157600080fd5b60006110cf84828501610faa565b91505092915050565b6110e1816115df565b82525050565b6110f0816115f1565b82525050565b600061110182611539565b61110b8185611544565b935061111b818560208601611634565b61112481611696565b840191505092915050565b600061113c602383611544565b91507f45524332303a207472616e7366657220746f20746865207a65726f206164647260008301527f65737300000000000000000000000000000000000000000000000000000000006020830152604082019050919050565b60006111a2602283611544565b91507f45524332303a20617070726f766520746f20746865207a65726f20616464726560008301527f73730000000000000000000000000000000000000000000000000000000000006020830152604082019050919050565b6000611208601b83611544565b91507f536166654d6174683a206164646974696f6e206f766572666c6f7700000000006000830152602082019050919050565b6000611248602083611544565b91507f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e65726000830152602082019050919050565b6000611288602183611544565b91507f45524332303a206275726e2066726f6d20746865207a65726f2061646472657360008301527f73000000000000000000000000000000000000000000000000000000000000006020830152604082019050919050565b60006112ee602583611544565b91507f45524332303a207472616e736665722066726f6d20746865207a65726f20616460008301527f64726573730000000000000000000000000000000000000000000000000000006020830152604082019050919050565b6000611354602483611544565b91507f45524332303a20617070726f76652066726f6d20746865207a65726f2061646460008301527f72657373000000000000000000000000000000000000000000000000000000006020830152604082019050919050565b6113b68161161d565b82525050565b6113c581611627565b82525050565b60006020820190506113e060008301846110d8565b92915050565b60006020820190506113fb60008301846110e7565b92915050565b6000602082019050818103600083015261141b81846110f6565b905092915050565b6000602082019050818103600083015261143c8161112f565b9050919050565b6000602082019050818103600083015261145c81611195565b9050919050565b6000602082019050818103600083015261147c816111fb565b9050919050565b6000602082019050818103600083015261149c8161123b565b9050919050565b600060208201905081810360008301526114bc8161127b565b9050919050565b600060208201905081810360008301526114dc816112e1565b9050919050565b600060208201905081810360008301526114fc81611347565b9050919050565b600060208201905061151860008301846113ad565b92915050565b600060208201905061153360008301846113bc565b92915050565b600081519050919050565b600082825260208201905092915050565b60006115608261161d565b915061156b8361161d565b9250827fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff038211156115a05761159f611667565b5b828201905092915050565b60006115b68261161d565b91506115c18361161d565b9250828210156115d4576115d3611667565b5b828203905092915050565b60006115ea826115fd565b9050919050565b60008115159050919050565b600073ffffffffffffffffffffffffffffffffffffffff82169050919050565b6000819050919050565b600060ff82169050919050565b60005b83811015611652578082015181840152602081019050611637565b83811115611661576000848401525b50505050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b6000601f19601f8301169050919050565b6116b0816115df565b81146116bb57600080fd5b50565b6116c78161161d565b81146116d257600080fd5b5056fea26469706673582212204ec356b550ae27b960b8b93b6585e4c6b6522afbf6a940a7a391b49c05d3b4a664736f6c63430008000033

Deployed Bytecode Sourcemap

497:3862:1:-:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;1056:84;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;1898:157;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;1339:100;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;2063:265;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;1244:83;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;2336:206;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;2778:127;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;1447:119;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;2917:231;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;1148:88;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;2550:216;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;392:92;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;1574:165;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;152:21;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;1747:143;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;1056:84;1094:13;1127:5;;;;;;;;;;;;;;;;;1120:12;;1056:84;:::o;1898:157::-;1972:4;1989:36;1998:10;2010:7;2019:5;1989:8;:36::i;:::-;2043:4;2036:11;;1898:157;;;;:::o;1339:100::-;1392:7;1419:12;;1412:19;;1339:100;:::o;2063:265::-;2161:4;2178:36;2188:6;2196:9;2207:6;2178:9;:36::i;:::-;2225:73;2234:6;2242:10;2254:43;2290:6;2254:11;:19;2266:6;2254:19;;;;;;;;;;;;;;;:31;2274:10;2254:31;;;;;;;;;;;;;;;;:35;;:43;;;;:::i;:::-;2225:8;:73::i;:::-;2316:4;2309:11;;2063:265;;;;;:::o;1244:83::-;1285:5;1310:9;1303:16;;1244:83;:::o;2336:206::-;2416:4;2433:79;2442:10;2454:7;2463:48;2500:10;2463:11;:23;2475:10;2463:23;;;;;;;;;;;;;;;:32;2487:7;2463:32;;;;;;;;;;;;;;;;:36;;:48;;;;:::i;:::-;2433:8;:79::i;:::-;2530:4;2523:11;;2336:206;;;;:::o;2778:127::-;2833:4;2850:25;2856:10;2868:6;2850:5;:25::i;:::-;2893:4;2886:11;;2778:127;;;:::o;1447:119::-;1513:7;1540:9;:18;1550:7;1540:18;;;;;;;;;;;;;;;;1533:25;;1447:119;;;:::o;2917:231::-;2993:4;3010:22;3016:7;3025:6;3010:5;:22::i;:::-;3043:75;3052:7;3061:10;3073:44;3110:6;3073:11;:20;3085:7;3073:20;;;;;;;;;;;;;;;:32;3094:10;3073:32;;;;;;;;;;;;;;;;:36;;:44;;;;:::i;:::-;3043:8;:75::i;:::-;3136:4;3129:11;;2917:231;;;;:::o;1148:88::-;1188:13;1221:7;;;;;;;;;;;;;;;;;1214:14;;1148:88;:::o;2550:216::-;2635:4;2652:84;2661:10;2673:7;2682:53;2719:15;2682:11;:23;2694:10;2682:23;;;;;;;;;;;;;;;:32;2706:7;2682:32;;;;;;;;;;;;;;;;:36;;:53;;;;:::i;:::-;2652:8;:84::i;:::-;2754:4;2747:11;;2550:216;;;;:::o;392:92::-;317:10;307:20;;:6;;;;;;;;;;:20;;;299:65;;;;;;;;;;;;:::i;:::-;;;;;;;;;468:8:::1;459:6;::::0;:17:::1;;;;;;;;;;;;;;;;;;392:92:::0;:::o;1574:165::-;1652:4;1669:40;1679:10;1691:9;1702:6;1669:9;:40::i;:::-;1727:4;1720:11;;1574:165;;;;:::o;152:21::-;;;;;;;;;;;;:::o;1747:143::-;1828:7;1855:11;:18;1867:5;1855:18;;;;;;;;;;;;;;;:27;1874:7;1855:27;;;;;;;;;;;;;;;;1848:34;;1747:143;;;;:::o;4017:335::-;4127:1;4110:19;;:5;:19;;;;4102:68;;;;;;;;;;;;:::i;:::-;;;;;;;;;4208:1;4189:21;;:7;:21;;;;4181:68;;;;;;;;;;;;:::i;:::-;;;;;;;;;4292:5;4262:11;:18;4274:5;4262:18;;;;;;;;;;;;;;;:27;4281:7;4262:27;;;;;;;;;;;;;;;:35;;;;4329:7;4313:31;;4322:5;4313:31;;;4338:5;4313:31;;;;;;:::i;:::-;;;;;;;;4017:335;;;:::o;3156:535::-;3272:1;3254:20;;:6;:20;;;;3246:70;;;;;;;;;;;;:::i;:::-;;;;;;;;;3356:1;3335:23;;:9;:23;;;;3327:71;;;;;;;;;;;;:::i;:::-;;;;;;;;;3421:22;3446:6;3421:31;;3521:29;3543:6;3521:9;:17;3531:6;3521:17;;;;;;;;;;;;;;;;:21;;:29;;;;:::i;:::-;3501:9;:17;3511:6;3501:17;;;;;;;;;;;;;;;:49;;;;3584:40;3609:14;3584:9;:20;3594:9;3584:20;;;;;;;;;;;;;;;;:24;;:40;;;;:::i;:::-;3561:9;:20;3571:9;3561:20;;;;;;;;;;;;;;;:63;;;;3657:9;3640:43;;3649:6;3640:43;;;3668:14;3640:43;;;;;;:::i;:::-;;;;;;;;3156:535;;;;:::o;1367:136:2:-;1425:7;1452:43;1456:1;1459;1452:43;;;;;;;;;;;;;;;;;:3;:43::i;:::-;1445:50;;1367:136;;;;:::o;903:181::-;961:7;981:9;997:1;993;:5;;;;:::i;:::-;981:17;;1022:1;1017;:6;;1009:46;;;;;;;;;;;;:::i;:::-;;;;;;;;;1075:1;1068:8;;;903:181;;;;:::o;3703:306:1:-;3797:1;3778:21;;:7;:21;;;;3770:67;;;;;;;;;;;;:::i;:::-;;;;;;;;;3865:23;3882:5;3865:12;;:16;;:23;;;;:::i;:::-;3850:12;:38;;;;3920:29;3943:5;3920:9;:18;3930:7;3920:18;;;;;;;;;;;;;;;;:22;;:29;;;;:::i;:::-;3899:9;:18;3909:7;3899:18;;;;;;;;;;;;;;;:50;;;;3991:1;3965:36;;3974:7;3965:36;;;3995:5;3965:36;;;;;;:::i;:::-;;;;;;;;3703:306;;:::o;1806:226:2:-;1926:7;1959:1;1954;:6;;1962:12;1946:29;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;1986:9;2002:1;1998;:5;;;;:::i;:::-;1986:17;;2023:1;2016:8;;;1806:226;;;;;:::o;7:139:3:-;;91:6;78:20;69:29;;107:33;134:5;107:33;:::i;:::-;59:87;;;;:::o;152:139::-;;236:6;223:20;214:29;;252:33;279:5;252:33;:::i;:::-;204:87;;;;:::o;297:262::-;;405:2;393:9;384:7;380:23;376:32;373:2;;;421:1;418;411:12;373:2;464:1;489:53;534:7;525:6;514:9;510:22;489:53;:::i;:::-;479:63;;435:117;363:196;;;;:::o;565:407::-;;;690:2;678:9;669:7;665:23;661:32;658:2;;;706:1;703;696:12;658:2;749:1;774:53;819:7;810:6;799:9;795:22;774:53;:::i;:::-;764:63;;720:117;876:2;902:53;947:7;938:6;927:9;923:22;902:53;:::i;:::-;892:63;;847:118;648:324;;;;;:::o;978:552::-;;;;1120:2;1108:9;1099:7;1095:23;1091:32;1088:2;;;1136:1;1133;1126:12;1088:2;1179:1;1204:53;1249:7;1240:6;1229:9;1225:22;1204:53;:::i;:::-;1194:63;;1150:117;1306:2;1332:53;1377:7;1368:6;1357:9;1353:22;1332:53;:::i;:::-;1322:63;;1277:118;1434:2;1460:53;1505:7;1496:6;1485:9;1481:22;1460:53;:::i;:::-;1450:63;;1405:118;1078:452;;;;;:::o;1536:407::-;;;1661:2;1649:9;1640:7;1636:23;1632:32;1629:2;;;1677:1;1674;1667:12;1629:2;1720:1;1745:53;1790:7;1781:6;1770:9;1766:22;1745:53;:::i;:::-;1735:63;;1691:117;1847:2;1873:53;1918:7;1909:6;1898:9;1894:22;1873:53;:::i;:::-;1863:63;;1818:118;1619:324;;;;;:::o;1949:262::-;;2057:2;2045:9;2036:7;2032:23;2028:32;2025:2;;;2073:1;2070;2063:12;2025:2;2116:1;2141:53;2186:7;2177:6;2166:9;2162:22;2141:53;:::i;:::-;2131:63;;2087:117;2015:196;;;;:::o;2217:118::-;2304:24;2322:5;2304:24;:::i;:::-;2299:3;2292:37;2282:53;;:::o;2341:109::-;2422:21;2437:5;2422:21;:::i;:::-;2417:3;2410:34;2400:50;;:::o;2456:364::-;;2572:39;2605:5;2572:39;:::i;:::-;2627:71;2691:6;2686:3;2627:71;:::i;:::-;2620:78;;2707:52;2752:6;2747:3;2740:4;2733:5;2729:16;2707:52;:::i;:::-;2784:29;2806:6;2784:29;:::i;:::-;2779:3;2775:39;2768:46;;2548:272;;;;;:::o;2826:367::-;;2989:67;3053:2;3048:3;2989:67;:::i;:::-;2982:74;;3086:34;3082:1;3077:3;3073:11;3066:55;3152:5;3147:2;3142:3;3138:12;3131:27;3184:2;3179:3;3175:12;3168:19;;2972:221;;;:::o;3199:366::-;;3362:67;3426:2;3421:3;3362:67;:::i;:::-;3355:74;;3459:34;3455:1;3450:3;3446:11;3439:55;3525:4;3520:2;3515:3;3511:12;3504:26;3556:2;3551:3;3547:12;3540:19;;3345:220;;;:::o;3571:325::-;;3734:67;3798:2;3793:3;3734:67;:::i;:::-;3727:74;;3831:29;3827:1;3822:3;3818:11;3811:50;3887:2;3882:3;3878:12;3871:19;;3717:179;;;:::o;3902:330::-;;4065:67;4129:2;4124:3;4065:67;:::i;:::-;4058:74;;4162:34;4158:1;4153:3;4149:11;4142:55;4223:2;4218:3;4214:12;4207:19;;4048:184;;;:::o;4238:365::-;;4401:67;4465:2;4460:3;4401:67;:::i;:::-;4394:74;;4498:34;4494:1;4489:3;4485:11;4478:55;4564:3;4559:2;4554:3;4550:12;4543:25;4594:2;4589:3;4585:12;4578:19;;4384:219;;;:::o;4609:369::-;;4772:67;4836:2;4831:3;4772:67;:::i;:::-;4765:74;;4869:34;4865:1;4860:3;4856:11;4849:55;4935:7;4930:2;4925:3;4921:12;4914:29;4969:2;4964:3;4960:12;4953:19;;4755:223;;;:::o;4984:368::-;;5147:67;5211:2;5206:3;5147:67;:::i;:::-;5140:74;;5244:34;5240:1;5235:3;5231:11;5224:55;5310:6;5305:2;5300:3;5296:12;5289:28;5343:2;5338:3;5334:12;5327:19;;5130:222;;;:::o;5358:118::-;5445:24;5463:5;5445:24;:::i;:::-;5440:3;5433:37;5423:53;;:::o;5482:112::-;5565:22;5581:5;5565:22;:::i;:::-;5560:3;5553:35;5543:51;;:::o;5600:222::-;;5731:2;5720:9;5716:18;5708:26;;5744:71;5812:1;5801:9;5797:17;5788:6;5744:71;:::i;:::-;5698:124;;;;:::o;5828:210::-;;5953:2;5942:9;5938:18;5930:26;;5966:65;6028:1;6017:9;6013:17;6004:6;5966:65;:::i;:::-;5920:118;;;;:::o;6044:313::-;;6195:2;6184:9;6180:18;6172:26;;6244:9;6238:4;6234:20;6230:1;6219:9;6215:17;6208:47;6272:78;6345:4;6336:6;6272:78;:::i;:::-;6264:86;;6162:195;;;;:::o;6363:419::-;;6567:2;6556:9;6552:18;6544:26;;6616:9;6610:4;6606:20;6602:1;6591:9;6587:17;6580:47;6644:131;6770:4;6644:131;:::i;:::-;6636:139;;6534:248;;;:::o;6788:419::-;;6992:2;6981:9;6977:18;6969:26;;7041:9;7035:4;7031:20;7027:1;7016:9;7012:17;7005:47;7069:131;7195:4;7069:131;:::i;:::-;7061:139;;6959:248;;;:::o;7213:419::-;;7417:2;7406:9;7402:18;7394:26;;7466:9;7460:4;7456:20;7452:1;7441:9;7437:17;7430:47;7494:131;7620:4;7494:131;:::i;:::-;7486:139;;7384:248;;;:::o;7638:419::-;;7842:2;7831:9;7827:18;7819:26;;7891:9;7885:4;7881:20;7877:1;7866:9;7862:17;7855:47;7919:131;8045:4;7919:131;:::i;:::-;7911:139;;7809:248;;;:::o;8063:419::-;;8267:2;8256:9;8252:18;8244:26;;8316:9;8310:4;8306:20;8302:1;8291:9;8287:17;8280:47;8344:131;8470:4;8344:131;:::i;:::-;8336:139;;8234:248;;;:::o;8488:419::-;;8692:2;8681:9;8677:18;8669:26;;8741:9;8735:4;8731:20;8727:1;8716:9;8712:17;8705:47;8769:131;8895:4;8769:131;:::i;:::-;8761:139;;8659:248;;;:::o;8913:419::-;;9117:2;9106:9;9102:18;9094:26;;9166:9;9160:4;9156:20;9152:1;9141:9;9137:17;9130:47;9194:131;9320:4;9194:131;:::i;:::-;9186:139;;9084:248;;;:::o;9338:222::-;;9469:2;9458:9;9454:18;9446:26;;9482:71;9550:1;9539:9;9535:17;9526:6;9482:71;:::i;:::-;9436:124;;;;:::o;9566:214::-;;9693:2;9682:9;9678:18;9670:26;;9706:67;9770:1;9759:9;9755:17;9746:6;9706:67;:::i;:::-;9660:120;;;;:::o;9786:99::-;;9872:5;9866:12;9856:22;;9845:40;;;:::o;9891:169::-;;10009:6;10004:3;9997:19;10049:4;10044:3;10040:14;10025:29;;9987:73;;;;:::o;10066:305::-;;10125:20;10143:1;10125:20;:::i;:::-;10120:25;;10159:20;10177:1;10159:20;:::i;:::-;10154:25;;10313:1;10245:66;10241:74;10238:1;10235:81;10232:2;;;10319:18;;:::i;:::-;10232:2;10363:1;10360;10356:9;10349:16;;10110:261;;;;:::o;10377:191::-;;10437:20;10455:1;10437:20;:::i;:::-;10432:25;;10471:20;10489:1;10471:20;:::i;:::-;10466:25;;10510:1;10507;10504:8;10501:2;;;10515:18;;:::i;:::-;10501:2;10560:1;10557;10553:9;10545:17;;10422:146;;;;:::o;10574:96::-;;10640:24;10658:5;10640:24;:::i;:::-;10629:35;;10619:51;;;:::o;10676:90::-;;10753:5;10746:13;10739:21;10728:32;;10718:48;;;:::o;10772:126::-;;10849:42;10842:5;10838:54;10827:65;;10817:81;;;:::o;10904:77::-;;10970:5;10959:16;;10949:32;;;:::o;10987:86::-;;11062:4;11055:5;11051:16;11040:27;;11030:43;;;:::o;11079:307::-;11147:1;11157:113;11171:6;11168:1;11165:13;11157:113;;;11256:1;11251:3;11247:11;11241:18;11237:1;11232:3;11228:11;11221:39;11193:2;11190:1;11186:10;11181:15;;11157:113;;;11288:6;11285:1;11282:13;11279:2;;;11368:1;11359:6;11354:3;11350:16;11343:27;11279:2;11128:258;;;;:::o;11392:180::-;11440:77;11437:1;11430:88;11537:4;11534:1;11527:15;11561:4;11558:1;11551:15;11578:102;;11670:2;11666:7;11661:2;11654:5;11650:14;11646:28;11636:38;;11626:54;;;:::o;11686:122::-;11759:24;11777:5;11759:24;:::i;:::-;11752:5;11749:35;11739:2;;11798:1;11795;11788:12;11739:2;11729:79;:::o;11814:122::-;11887:24;11905:5;11887:24;:::i;:::-;11880:5;11877:35;11867:2;;11926:1;11923;11916:12;11867:2;11857:79;:::o

Swarm Source

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