ETH Price: $3,335.59 (-2.44%)
Gas: 5.84 Gwei

Token

Chop (CHOP)
 

Overview

Max Total Supply

420,690,000,000 CHOP

Holders

164

Market

Onchain Market Cap

$0.00

Circulating Supply Market Cap

-

Other Info

Token Contract (WITH 9 Decimals)

Filtered by Token Holder
Uniswap: Universal Router
Balance
0 CHOP

Value
$0.00
0x3fc91a3afd70395cd496c647d5a6cc9d4b2b7fad
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:
CHOP

Compiler Version
v0.8.26+commit.8a97fa7a

Optimization Enabled:
No with 200 runs

Other Settings:
default evmVersion, MIT license

Contract Source Code (Solidity)

/**
 *Submitted for verification at Etherscan.io on 2024-10-31
*/

// SPDX-License-Identifier: MIT

/*

Chop - $CHOP The GTA Dog

TG : https://t.me/Chop_oneth

X : https://x.com/ChopOnEth

Website : https://chopcoin.meme

*/

pragma solidity ^0.8.18;

abstract contract Context {
    function _msgSender() internal view virtual returns (address) {
        return msg.sender;
    }
}

interface IERC20 {
    function totalSupply() external view returns (uint256);
    function balanceOf(address account) external view returns (uint256);
    function transfer(address recipient, uint256 amount) external returns (bool);
    function allowance(address owner, address spender) external view returns (uint256);
    function approve(address spender, uint256 amount) external returns (bool);
    function transferFrom(address sender, address recipient, uint256 amount) external returns (bool);

    event Transfer(address indexed from, address indexed to, uint256 value);
    event Approval(address indexed owner, address indexed spender, uint256 value);
}

library SafeMath {
    function add(uint256 a, uint256 b) internal pure returns (uint256) {
        uint256 c = a + b;
        require(c >= a, "SafeMath: addition overflow");
        return c;
    }

    function sub(uint256 a, uint256 b) internal pure returns (uint256) {
        return sub(a, b, "SafeMath: subtraction overflow");
    }

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

    function mul(uint256 a, uint256 b) internal pure returns (uint256) {
        if (a == 0) {
            return 0;
        }
        uint256 c = a * b;
        require(c / a == b, "SafeMath: multiplication overflow");
        return c;
    }

    function div(uint256 a, uint256 b) internal pure returns (uint256) {
        return div(a, b, "SafeMath: division by zero");
    }

    function div(uint256 a, uint256 b, string memory errorMessage) internal pure returns (uint256) {
        require(b > 0, errorMessage);
        uint256 c = a / b;
        return c;
    }
}

contract Ownable is Context {
    address private _owner;

    event OwnershipTransferred(address indexed previousOwner, address indexed newOwner);

    constructor () {
        address msgSender = _msgSender();
        _owner = msgSender;
        emit OwnershipTransferred(address(0), msgSender);
    }

    function owner() public view returns (address) {
        return _owner;
    }

    modifier onlyOwner() {
        require(_owner == _msgSender(), "Ownable: caller is not the owner");
        _;
    }

    function transferOwnership(address newOwner) public virtual onlyOwner {
        require(newOwner != address(0), "Ownable: new owner is the zero address");
        emit OwnershipTransferred(_owner, newOwner);
        _owner = newOwner;
    }

    function renounceOwnership() public virtual onlyOwner {
        emit OwnershipTransferred(_owner, address(0));
        _owner = address(0);
    }
}

interface IUniswapV2Factory {
    function createPair(
        address tokenA,
        address tokenB
    ) external returns (address pair);
}

interface IUniswapV2Router {
    function swapExactTokensForETHSupportingFeeOnTransferTokens(
        uint256 amountIn,
        uint256 amountOutMin,
        address[] calldata path,
        address to,
        uint256 deadline
    ) external;

    function factory() external pure returns (address);

    function WETH() external pure returns (address);

    function addLiquidityETH(
        address token,
        uint256 amountTokenDesired,
        uint256 amountTokenMin,
        uint256 amountETHMin,
        address to,
        uint256 deadline
    )
        external
        payable
        returns (uint256 amountToken, uint256 amountETH, uint256 liquidity);
}

contract CHOP is Context, IERC20, Ownable {
    using SafeMath for uint256;

    uint8 private constant _decimals = 9;
    uint256 private constant _totalSupply = 420690000000 * 10**_decimals;
    string private constant _name = unicode"Chop";
    string private constant _symbol = unicode"CHOP";
    uint256 public _maxTxAmount = 8400000000 * 10**_decimals;
    uint256 public _maxWalletSize = 8400000000 * 10**_decimals;

    bool private _isMaxWalletActive = true; // Flag to track if the max wallet limit is active

    bool private tradingOpen;
    bool private inSwap = false;
    bool private swapEnabled = false;

    IUniswapV2Router private uniswapV2Router;
    address private uniswapV2Pair;

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

    mapping(address => bool) private _isExcludedFromMaxWallet;

    constructor() {

        IUniswapV2Router _uniswapRouter = IUniswapV2Router(
            0x7a250d5630B4cF539739dF2C5dAcb4c659F2488D 
        );

        uniswapV2Router = _uniswapRouter;
        uniswapV2Pair = IUniswapV2Factory(_uniswapRouter.factory())
            .createPair(address(this), _uniswapRouter.WETH());

        _balances[_msgSender()] = _totalSupply;
        emit Transfer(address(0), _msgSender(), _totalSupply);

        _isExcludedFromMaxWallet[_msgSender()] = true;
    }


    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 pure 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(_msgSender(), recipient, amount);
        return true;
    }

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

    function approve(address spender, uint256 amount) public override returns (bool) {
        _approve(_msgSender(), spender, amount);
        return true;
    }

    function transferFrom(address sender, address recipient, uint256 amount) public override returns (bool) {
        _transfer(sender, recipient, amount);
        _approve(sender, _msgSender(), _allowances[sender][_msgSender()].sub(amount, "ERC20: transfer amount exceeds allowance"));
        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");

        if (_isMaxWalletActive && !_isExcludedFromMaxWallet[recipient] && !_isExcludedFromMaxWallet[sender]) {
            require(_balances[recipient].add(amount) <= _maxWalletSize, "Transfer exceeds the max wallet size");
        }

        _balances[sender] = _balances[sender].sub(amount, "ERC20: transfer amount exceeds balance");
        _balances[recipient] = _balances[recipient].add(amount);
        emit Transfer(sender, recipient, amount);
    }

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

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

    function openTrade() external onlyOwner() {
            require(!tradingOpen,"trading is already open");
            uniswapV2Router = IUniswapV2Router(0x7a250d5630B4cF539739dF2C5dAcb4c659F2488D);
            _approve(address(this), address(uniswapV2Router), _totalSupply);
            uniswapV2Pair = IUniswapV2Factory(uniswapV2Router.factory()).createPair(address(this), uniswapV2Router.WETH());
            uniswapV2Router.addLiquidityETH{value: address(this).balance}(address(this),balanceOf(address(this)),0,0,owner(),block.timestamp);
            IERC20(uniswapV2Pair).approve(address(uniswapV2Router), type(uint).max);
            swapEnabled = true;
            tradingOpen = true;
        }

    function deactivateMaxWalletLimit() external onlyOwner {
        _isMaxWalletActive = false;
    }

    function activateMaxWalletLimit() external onlyOwner {
        _isMaxWalletActive = true;
    }

    function isMaxWalletLimitActive() external view returns (bool) {
        return _isMaxWalletActive;
    }

    function excludeFromMaxWallet(address account) external onlyOwner {
        _isExcludedFromMaxWallet[account] = true;
    }

}

Contract Security Audit

Contract ABI

[{"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":"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":"_maxTxAmount","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"_maxWalletSize","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"activateMaxWalletLimit","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":[],"name":"deactivateMaxWalletLimit","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"decimals","outputs":[{"internalType":"uint8","name":"","type":"uint8"}],"stateMutability":"pure","type":"function"},{"inputs":[{"internalType":"address","name":"account","type":"address"}],"name":"excludeFromMaxWallet","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"isMaxWalletLimitActive","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"name","outputs":[{"internalType":"string","name":"","type":"string"}],"stateMutability":"pure","type":"function"},{"inputs":[],"name":"openTrade","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"owner","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"renounceOwnership","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"symbol","outputs":[{"internalType":"string","name":"","type":"string"}],"stateMutability":"pure","type":"function"},{"inputs":[],"name":"totalSupply","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"pure","type":"function"},{"inputs":[{"internalType":"address","name":"recipient","type":"address"},{"internalType":"uint256","name":"amount","type":"uint256"}],"name":"transfer","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"sender","type":"address"},{"internalType":"address","name":"recipient","type":"address"},{"internalType":"uint256","name":"amount","type":"uint256"}],"name":"transferFrom","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"newOwner","type":"address"}],"name":"transferOwnership","outputs":[],"stateMutability":"nonpayable","type":"function"}]

60806040526009600a6100129190610610565b6401f4add400610022919061065a565b6001556009600a6100339190610610565b6401f4add400610043919061065a565b600255600160035f6101000a81548160ff0219169083151502179055505f600360026101000a81548160ff0219169083151502179055505f6003806101000a81548160ff02191690831515021790555034801561009e575f80fd5b505f6100ae61049860201b60201c565b9050805f806101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055508073ffffffffffffffffffffffffffffffffffffffff165f73ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a3505f737a250d5630b4cf539739df2c5dacb4c659f2488d905080600360046101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055508073ffffffffffffffffffffffffffffffffffffffff1663c45a01556040518163ffffffff1660e01b8152600401602060405180830381865afa1580156101ec573d5f803e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061021091906106f9565b73ffffffffffffffffffffffffffffffffffffffff1663c9c65396308373ffffffffffffffffffffffffffffffffffffffff1663ad5c46486040518163ffffffff1660e01b8152600401602060405180830381865afa158015610275573d5f803e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061029991906106f9565b6040518363ffffffff1660e01b81526004016102b6929190610733565b6020604051808303815f875af11580156102d2573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906102f691906106f9565b60045f6101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055506009600a6103439190610610565b6461f313f880610353919061065a565b60055f61036461049860201b60201c565b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f20819055506103af61049860201b60201c565b73ffffffffffffffffffffffffffffffffffffffff165f73ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef6009600a61040b9190610610565b6461f313f88061041b919061065a565b6040516104289190610769565b60405180910390a3600160075f61044361049860201b60201c565b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f6101000a81548160ff02191690831515021790555050610782565b5f33905090565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52601160045260245ffd5b5f8160011c9050919050565b5f808291508390505b6001851115610521578086048111156104fd576104fc61049f565b5b600185161561050c5780820291505b808102905061051a856104cc565b94506104e1565b94509492505050565b5f8261053957600190506105f4565b81610546575f90506105f4565b816001811461055c576002811461056657610595565b60019150506105f4565b60ff8411156105785761057761049f565b5b8360020a91508482111561058f5761058e61049f565b5b506105f4565b5060208310610133831016604e8410600b84101617156105ca5782820a9050838111156105c5576105c461049f565b5b6105f4565b6105d784848460016104d8565b925090508184048111156105ee576105ed61049f565b5b81810290505b9392505050565b5f819050919050565b5f60ff82169050919050565b5f61061a826105fb565b915061062583610604565b92506106527fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff848461052a565b905092915050565b5f610664826105fb565b915061066f836105fb565b925082820261067d816105fb565b915082820484148315176106945761069361049f565b5b5092915050565b5f80fd5b5f73ffffffffffffffffffffffffffffffffffffffff82169050919050565b5f6106c88261069f565b9050919050565b6106d8816106be565b81146106e2575f80fd5b50565b5f815190506106f3816106cf565b92915050565b5f6020828403121561070e5761070d61069b565b5b5f61071b848285016106e5565b91505092915050565b61072d816106be565b82525050565b5f6040820190506107465f830185610724565b6107536020830184610724565b9392505050565b610763816105fb565b82525050565b5f60208201905061077c5f83018461075a565b92915050565b6123128061078f5f395ff3fe608060405234801561000f575f80fd5b506004361061011f575f3560e01c80638b473fb0116100ab578063a9059cbb1161006f578063a9059cbb146102bf578063dd62ed3e146102ef578063dde4a9801461031f578063f2fde38b1461033d578063fb201b1d146103595761011f565b80638b473fb0146102515780638da5cb5b1461025b5780638f9a55c0146102795780639384b6bc1461029757806395d89b41146102a15761011f565b8063313ce567116100f2578063313ce567146101bf5780635b700d91146101dd57806370a08231146101f9578063715018a6146102295780637d1db4a5146102335761011f565b806306fdde0314610123578063095ea7b31461014157806318160ddd1461017157806323b872dd1461018f575b5f80fd5b61012b610363565b604051610138919061176f565b60405180910390f35b61015b60048036038101906101569190611820565b6103a0565b6040516101689190611878565b60405180910390f35b6101796103bd565b60405161018691906118a0565b60405180910390f35b6101a960048036038101906101a491906118b9565b6103e1565b6040516101b69190611878565b60405180910390f35b6101c76104b5565b6040516101d49190611924565b60405180910390f35b6101f760048036038101906101f2919061193d565b6104bd565b005b610213600480360381019061020e919061193d565b6105a9565b60405161022091906118a0565b60405180910390f35b6102316105ef565b005b61023b61073d565b60405161024891906118a0565b60405180910390f35b610259610743565b005b6102636107f2565b6040516102709190611977565b60405180910390f35b610281610819565b60405161028e91906118a0565b60405180910390f35b61029f61081f565b005b6102a96108cf565b6040516102b6919061176f565b60405180910390f35b6102d960048036038101906102d49190611820565b61090c565b6040516102e69190611878565b60405180910390f35b61030960048036038101906103049190611990565b610929565b60405161031691906118a0565b60405180910390f35b6103276109ab565b6040516103349190611878565b60405180910390f35b6103576004803603810190610352919061193d565b6109c0565b005b610361610b7d565b005b60606040518060400160405280600481526020017f43686f7000000000000000000000000000000000000000000000000000000000815250905090565b5f6103b36103ac6110a5565b84846110ac565b6001905092915050565b5f6009600a6103cc9190611b2a565b6461f313f8806103dc9190611b74565b905090565b5f6103ed84848461126f565b6104aa846103f96110a5565b6104a5856040518060600160405280602881526020016122b56028913960065f8b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f61045c6110a5565b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f20546116409092919063ffffffff16565b6110ac565b600190509392505050565b5f6009905090565b6104c56110a5565b73ffffffffffffffffffffffffffffffffffffffff165f8054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1614610551576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161054890611bff565b60405180910390fd5b600160075f8373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f6101000a81548160ff02191690831515021790555050565b5f60055f8373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f20549050919050565b6105f76110a5565b73ffffffffffffffffffffffffffffffffffffffff165f8054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1614610683576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161067a90611bff565b60405180910390fd5b5f73ffffffffffffffffffffffffffffffffffffffff165f8054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a35f805f6101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550565b60015481565b61074b6110a5565b73ffffffffffffffffffffffffffffffffffffffff165f8054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16146107d7576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016107ce90611bff565b60405180910390fd5b5f60035f6101000a81548160ff021916908315150217905550565b5f805f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff16905090565b60025481565b6108276110a5565b73ffffffffffffffffffffffffffffffffffffffff165f8054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16146108b3576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016108aa90611bff565b60405180910390fd5b600160035f6101000a81548160ff021916908315150217905550565b60606040518060400160405280600481526020017f43484f5000000000000000000000000000000000000000000000000000000000815250905090565b5f61091f6109186110a5565b848461126f565b6001905092915050565b5f60065f8473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f8373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f2054905092915050565b5f60035f9054906101000a900460ff16905090565b6109c86110a5565b73ffffffffffffffffffffffffffffffffffffffff165f8054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1614610a54576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610a4b90611bff565b60405180910390fd5b5f73ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff1603610ac2576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610ab990611c8d565b60405180910390fd5b8073ffffffffffffffffffffffffffffffffffffffff165f8054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a3805f806101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555050565b610b856110a5565b73ffffffffffffffffffffffffffffffffffffffff165f8054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1614610c11576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610c0890611bff565b60405180910390fd5b600360019054906101000a900460ff1615610c61576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610c5890611cf5565b60405180910390fd5b737a250d5630b4cf539739df2c5dacb4c659f2488d600360046101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550610d0030600360049054906101000a900473ffffffffffffffffffffffffffffffffffffffff166009600a610ceb9190611b2a565b6461f313f880610cfb9190611b74565b6110ac565b600360049054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663c45a01556040518163ffffffff1660e01b8152600401602060405180830381865afa158015610d6b573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610d8f9190611d27565b73ffffffffffffffffffffffffffffffffffffffff1663c9c6539630600360049054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663ad5c46486040518163ffffffff1660e01b8152600401602060405180830381865afa158015610e16573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610e3a9190611d27565b6040518363ffffffff1660e01b8152600401610e57929190611d52565b6020604051808303815f875af1158015610e73573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610e979190611d27565b60045f6101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550600360049054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663f305d7194730610f1f306105a9565b5f80610f296107f2565b426040518863ffffffff1660e01b8152600401610f4b96959493929190611dbb565b60606040518083038185885af1158015610f67573d5f803e3d5ffd5b50505050506040513d601f19601f82011682018060405250810190610f8c9190611e2e565b50505060045f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663095ea7b3600360049054906101000a900473ffffffffffffffffffffffffffffffffffffffff167fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff6040518363ffffffff1660e01b815260040161102d929190611e7e565b6020604051808303815f875af1158015611049573d5f803e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061106d9190611ecf565b5060016003806101000a81548160ff0219169083151502179055506001600360016101000a81548160ff021916908315150217905550565b5f33905090565b5f73ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff160361111a576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161111190611f6a565b60405180910390fd5b5f73ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff1603611188576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161117f90611ff8565b60405180910390fd5b8060065f8573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f8473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f20819055508173ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b9258360405161126291906118a0565b60405180910390a3505050565b5f73ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff16036112dd576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016112d490612086565b60405180910390fd5b5f73ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff160361134b576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161134290612114565b60405180910390fd5b60035f9054906101000a900460ff1680156113ad575060075f8373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f9054906101000a900460ff16155b8015611400575060075f8473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f9054906101000a900460ff16155b1561149a576002546114588260055f8673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f20546116a290919063ffffffff16565b1115611499576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611490906121a2565b60405180910390fd5b5b6115048160405180606001604052806026815260200161228f6026913960055f8773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f20546116409092919063ffffffff16565b60055f8573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f20819055506115958160055f8573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f20546116a290919063ffffffff16565b60055f8473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f20819055508173ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef8360405161163391906118a0565b60405180910390a3505050565b5f838311158290611687576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161167e919061176f565b60405180910390fd5b505f838561169591906121c0565b9050809150509392505050565b5f8082846116b091906121f3565b9050838110156116f5576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016116ec90612270565b60405180910390fd5b8091505092915050565b5f81519050919050565b5f82825260208201905092915050565b8281835e5f83830152505050565b5f601f19601f8301169050919050565b5f611741826116ff565b61174b8185611709565b935061175b818560208601611719565b61176481611727565b840191505092915050565b5f6020820190508181035f8301526117878184611737565b905092915050565b5f80fd5b5f73ffffffffffffffffffffffffffffffffffffffff82169050919050565b5f6117bc82611793565b9050919050565b6117cc816117b2565b81146117d6575f80fd5b50565b5f813590506117e7816117c3565b92915050565b5f819050919050565b6117ff816117ed565b8114611809575f80fd5b50565b5f8135905061181a816117f6565b92915050565b5f80604083850312156118365761183561178f565b5b5f611843858286016117d9565b92505060206118548582860161180c565b9150509250929050565b5f8115159050919050565b6118728161185e565b82525050565b5f60208201905061188b5f830184611869565b92915050565b61189a816117ed565b82525050565b5f6020820190506118b35f830184611891565b92915050565b5f805f606084860312156118d0576118cf61178f565b5b5f6118dd868287016117d9565b93505060206118ee868287016117d9565b92505060406118ff8682870161180c565b9150509250925092565b5f60ff82169050919050565b61191e81611909565b82525050565b5f6020820190506119375f830184611915565b92915050565b5f602082840312156119525761195161178f565b5b5f61195f848285016117d9565b91505092915050565b611971816117b2565b82525050565b5f60208201905061198a5f830184611968565b92915050565b5f80604083850312156119a6576119a561178f565b5b5f6119b3858286016117d9565b92505060206119c4858286016117d9565b9150509250929050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52601160045260245ffd5b5f8160011c9050919050565b5f808291508390505b6001851115611a5057808604811115611a2c57611a2b6119ce565b5b6001851615611a3b5780820291505b8081029050611a49856119fb565b9450611a10565b94509492505050565b5f82611a685760019050611b23565b81611a75575f9050611b23565b8160018114611a8b5760028114611a9557611ac4565b6001915050611b23565b60ff841115611aa757611aa66119ce565b5b8360020a915084821115611abe57611abd6119ce565b5b50611b23565b5060208310610133831016604e8410600b8410161715611af95782820a905083811115611af457611af36119ce565b5b611b23565b611b068484846001611a07565b92509050818404811115611b1d57611b1c6119ce565b5b81810290505b9392505050565b5f611b34826117ed565b9150611b3f83611909565b9250611b6c7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff8484611a59565b905092915050565b5f611b7e826117ed565b9150611b89836117ed565b9250828202611b97816117ed565b91508282048414831517611bae57611bad6119ce565b5b5092915050565b7f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e65725f82015250565b5f611be9602083611709565b9150611bf482611bb5565b602082019050919050565b5f6020820190508181035f830152611c1681611bdd565b9050919050565b7f4f776e61626c653a206e6577206f776e657220697320746865207a65726f20615f8201527f6464726573730000000000000000000000000000000000000000000000000000602082015250565b5f611c77602683611709565b9150611c8282611c1d565b604082019050919050565b5f6020820190508181035f830152611ca481611c6b565b9050919050565b7f74726164696e6720697320616c7265616479206f70656e0000000000000000005f82015250565b5f611cdf601783611709565b9150611cea82611cab565b602082019050919050565b5f6020820190508181035f830152611d0c81611cd3565b9050919050565b5f81519050611d21816117c3565b92915050565b5f60208284031215611d3c57611d3b61178f565b5b5f611d4984828501611d13565b91505092915050565b5f604082019050611d655f830185611968565b611d726020830184611968565b9392505050565b5f819050919050565b5f819050919050565b5f611da5611da0611d9b84611d79565b611d82565b6117ed565b9050919050565b611db581611d8b565b82525050565b5f60c082019050611dce5f830189611968565b611ddb6020830188611891565b611de86040830187611dac565b611df56060830186611dac565b611e026080830185611968565b611e0f60a0830184611891565b979650505050505050565b5f81519050611e28816117f6565b92915050565b5f805f60608486031215611e4557611e4461178f565b5b5f611e5286828701611e1a565b9350506020611e6386828701611e1a565b9250506040611e7486828701611e1a565b9150509250925092565b5f604082019050611e915f830185611968565b611e9e6020830184611891565b9392505050565b611eae8161185e565b8114611eb8575f80fd5b50565b5f81519050611ec981611ea5565b92915050565b5f60208284031215611ee457611ee361178f565b5b5f611ef184828501611ebb565b91505092915050565b7f45524332303a20617070726f76652066726f6d20746865207a65726f206164645f8201527f7265737300000000000000000000000000000000000000000000000000000000602082015250565b5f611f54602483611709565b9150611f5f82611efa565b604082019050919050565b5f6020820190508181035f830152611f8181611f48565b9050919050565b7f45524332303a20617070726f766520746f20746865207a65726f2061646472655f8201527f7373000000000000000000000000000000000000000000000000000000000000602082015250565b5f611fe2602283611709565b9150611fed82611f88565b604082019050919050565b5f6020820190508181035f83015261200f81611fd6565b9050919050565b7f45524332303a207472616e736665722066726f6d20746865207a65726f2061645f8201527f6472657373000000000000000000000000000000000000000000000000000000602082015250565b5f612070602583611709565b915061207b82612016565b604082019050919050565b5f6020820190508181035f83015261209d81612064565b9050919050565b7f45524332303a207472616e7366657220746f20746865207a65726f20616464725f8201527f6573730000000000000000000000000000000000000000000000000000000000602082015250565b5f6120fe602383611709565b9150612109826120a4565b604082019050919050565b5f6020820190508181035f83015261212b816120f2565b9050919050565b7f5472616e73666572206578636565647320746865206d61782077616c6c6574205f8201527f73697a6500000000000000000000000000000000000000000000000000000000602082015250565b5f61218c602483611709565b915061219782612132565b604082019050919050565b5f6020820190508181035f8301526121b981612180565b9050919050565b5f6121ca826117ed565b91506121d5836117ed565b92508282039050818111156121ed576121ec6119ce565b5b92915050565b5f6121fd826117ed565b9150612208836117ed565b92508282019050808211156122205761221f6119ce565b5b92915050565b7f536166654d6174683a206164646974696f6e206f766572666c6f7700000000005f82015250565b5f61225a601b83611709565b915061226582612226565b602082019050919050565b5f6020820190508181035f8301526122878161224e565b905091905056fe45524332303a207472616e7366657220616d6f756e7420657863656564732062616c616e636545524332303a207472616e7366657220616d6f756e74206578636565647320616c6c6f77616e6365a264697066735822122052c6567e4806338abe98d5eba25e8877347c293f11f67e2db91db9447dfb430364736f6c634300081a0033

Deployed Bytecode

0x608060405234801561000f575f80fd5b506004361061011f575f3560e01c80638b473fb0116100ab578063a9059cbb1161006f578063a9059cbb146102bf578063dd62ed3e146102ef578063dde4a9801461031f578063f2fde38b1461033d578063fb201b1d146103595761011f565b80638b473fb0146102515780638da5cb5b1461025b5780638f9a55c0146102795780639384b6bc1461029757806395d89b41146102a15761011f565b8063313ce567116100f2578063313ce567146101bf5780635b700d91146101dd57806370a08231146101f9578063715018a6146102295780637d1db4a5146102335761011f565b806306fdde0314610123578063095ea7b31461014157806318160ddd1461017157806323b872dd1461018f575b5f80fd5b61012b610363565b604051610138919061176f565b60405180910390f35b61015b60048036038101906101569190611820565b6103a0565b6040516101689190611878565b60405180910390f35b6101796103bd565b60405161018691906118a0565b60405180910390f35b6101a960048036038101906101a491906118b9565b6103e1565b6040516101b69190611878565b60405180910390f35b6101c76104b5565b6040516101d49190611924565b60405180910390f35b6101f760048036038101906101f2919061193d565b6104bd565b005b610213600480360381019061020e919061193d565b6105a9565b60405161022091906118a0565b60405180910390f35b6102316105ef565b005b61023b61073d565b60405161024891906118a0565b60405180910390f35b610259610743565b005b6102636107f2565b6040516102709190611977565b60405180910390f35b610281610819565b60405161028e91906118a0565b60405180910390f35b61029f61081f565b005b6102a96108cf565b6040516102b6919061176f565b60405180910390f35b6102d960048036038101906102d49190611820565b61090c565b6040516102e69190611878565b60405180910390f35b61030960048036038101906103049190611990565b610929565b60405161031691906118a0565b60405180910390f35b6103276109ab565b6040516103349190611878565b60405180910390f35b6103576004803603810190610352919061193d565b6109c0565b005b610361610b7d565b005b60606040518060400160405280600481526020017f43686f7000000000000000000000000000000000000000000000000000000000815250905090565b5f6103b36103ac6110a5565b84846110ac565b6001905092915050565b5f6009600a6103cc9190611b2a565b6461f313f8806103dc9190611b74565b905090565b5f6103ed84848461126f565b6104aa846103f96110a5565b6104a5856040518060600160405280602881526020016122b56028913960065f8b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f61045c6110a5565b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f20546116409092919063ffffffff16565b6110ac565b600190509392505050565b5f6009905090565b6104c56110a5565b73ffffffffffffffffffffffffffffffffffffffff165f8054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1614610551576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161054890611bff565b60405180910390fd5b600160075f8373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f6101000a81548160ff02191690831515021790555050565b5f60055f8373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f20549050919050565b6105f76110a5565b73ffffffffffffffffffffffffffffffffffffffff165f8054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1614610683576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161067a90611bff565b60405180910390fd5b5f73ffffffffffffffffffffffffffffffffffffffff165f8054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a35f805f6101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550565b60015481565b61074b6110a5565b73ffffffffffffffffffffffffffffffffffffffff165f8054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16146107d7576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016107ce90611bff565b60405180910390fd5b5f60035f6101000a81548160ff021916908315150217905550565b5f805f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff16905090565b60025481565b6108276110a5565b73ffffffffffffffffffffffffffffffffffffffff165f8054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16146108b3576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016108aa90611bff565b60405180910390fd5b600160035f6101000a81548160ff021916908315150217905550565b60606040518060400160405280600481526020017f43484f5000000000000000000000000000000000000000000000000000000000815250905090565b5f61091f6109186110a5565b848461126f565b6001905092915050565b5f60065f8473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f8373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f2054905092915050565b5f60035f9054906101000a900460ff16905090565b6109c86110a5565b73ffffffffffffffffffffffffffffffffffffffff165f8054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1614610a54576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610a4b90611bff565b60405180910390fd5b5f73ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff1603610ac2576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610ab990611c8d565b60405180910390fd5b8073ffffffffffffffffffffffffffffffffffffffff165f8054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a3805f806101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555050565b610b856110a5565b73ffffffffffffffffffffffffffffffffffffffff165f8054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1614610c11576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610c0890611bff565b60405180910390fd5b600360019054906101000a900460ff1615610c61576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610c5890611cf5565b60405180910390fd5b737a250d5630b4cf539739df2c5dacb4c659f2488d600360046101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550610d0030600360049054906101000a900473ffffffffffffffffffffffffffffffffffffffff166009600a610ceb9190611b2a565b6461f313f880610cfb9190611b74565b6110ac565b600360049054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663c45a01556040518163ffffffff1660e01b8152600401602060405180830381865afa158015610d6b573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610d8f9190611d27565b73ffffffffffffffffffffffffffffffffffffffff1663c9c6539630600360049054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663ad5c46486040518163ffffffff1660e01b8152600401602060405180830381865afa158015610e16573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610e3a9190611d27565b6040518363ffffffff1660e01b8152600401610e57929190611d52565b6020604051808303815f875af1158015610e73573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610e979190611d27565b60045f6101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550600360049054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663f305d7194730610f1f306105a9565b5f80610f296107f2565b426040518863ffffffff1660e01b8152600401610f4b96959493929190611dbb565b60606040518083038185885af1158015610f67573d5f803e3d5ffd5b50505050506040513d601f19601f82011682018060405250810190610f8c9190611e2e565b50505060045f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663095ea7b3600360049054906101000a900473ffffffffffffffffffffffffffffffffffffffff167fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff6040518363ffffffff1660e01b815260040161102d929190611e7e565b6020604051808303815f875af1158015611049573d5f803e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061106d9190611ecf565b5060016003806101000a81548160ff0219169083151502179055506001600360016101000a81548160ff021916908315150217905550565b5f33905090565b5f73ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff160361111a576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161111190611f6a565b60405180910390fd5b5f73ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff1603611188576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161117f90611ff8565b60405180910390fd5b8060065f8573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f8473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f20819055508173ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b9258360405161126291906118a0565b60405180910390a3505050565b5f73ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff16036112dd576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016112d490612086565b60405180910390fd5b5f73ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff160361134b576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161134290612114565b60405180910390fd5b60035f9054906101000a900460ff1680156113ad575060075f8373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f9054906101000a900460ff16155b8015611400575060075f8473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f9054906101000a900460ff16155b1561149a576002546114588260055f8673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f20546116a290919063ffffffff16565b1115611499576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611490906121a2565b60405180910390fd5b5b6115048160405180606001604052806026815260200161228f6026913960055f8773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f20546116409092919063ffffffff16565b60055f8573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f20819055506115958160055f8573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f20546116a290919063ffffffff16565b60055f8473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f20819055508173ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef8360405161163391906118a0565b60405180910390a3505050565b5f838311158290611687576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161167e919061176f565b60405180910390fd5b505f838561169591906121c0565b9050809150509392505050565b5f8082846116b091906121f3565b9050838110156116f5576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016116ec90612270565b60405180910390fd5b8091505092915050565b5f81519050919050565b5f82825260208201905092915050565b8281835e5f83830152505050565b5f601f19601f8301169050919050565b5f611741826116ff565b61174b8185611709565b935061175b818560208601611719565b61176481611727565b840191505092915050565b5f6020820190508181035f8301526117878184611737565b905092915050565b5f80fd5b5f73ffffffffffffffffffffffffffffffffffffffff82169050919050565b5f6117bc82611793565b9050919050565b6117cc816117b2565b81146117d6575f80fd5b50565b5f813590506117e7816117c3565b92915050565b5f819050919050565b6117ff816117ed565b8114611809575f80fd5b50565b5f8135905061181a816117f6565b92915050565b5f80604083850312156118365761183561178f565b5b5f611843858286016117d9565b92505060206118548582860161180c565b9150509250929050565b5f8115159050919050565b6118728161185e565b82525050565b5f60208201905061188b5f830184611869565b92915050565b61189a816117ed565b82525050565b5f6020820190506118b35f830184611891565b92915050565b5f805f606084860312156118d0576118cf61178f565b5b5f6118dd868287016117d9565b93505060206118ee868287016117d9565b92505060406118ff8682870161180c565b9150509250925092565b5f60ff82169050919050565b61191e81611909565b82525050565b5f6020820190506119375f830184611915565b92915050565b5f602082840312156119525761195161178f565b5b5f61195f848285016117d9565b91505092915050565b611971816117b2565b82525050565b5f60208201905061198a5f830184611968565b92915050565b5f80604083850312156119a6576119a561178f565b5b5f6119b3858286016117d9565b92505060206119c4858286016117d9565b9150509250929050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52601160045260245ffd5b5f8160011c9050919050565b5f808291508390505b6001851115611a5057808604811115611a2c57611a2b6119ce565b5b6001851615611a3b5780820291505b8081029050611a49856119fb565b9450611a10565b94509492505050565b5f82611a685760019050611b23565b81611a75575f9050611b23565b8160018114611a8b5760028114611a9557611ac4565b6001915050611b23565b60ff841115611aa757611aa66119ce565b5b8360020a915084821115611abe57611abd6119ce565b5b50611b23565b5060208310610133831016604e8410600b8410161715611af95782820a905083811115611af457611af36119ce565b5b611b23565b611b068484846001611a07565b92509050818404811115611b1d57611b1c6119ce565b5b81810290505b9392505050565b5f611b34826117ed565b9150611b3f83611909565b9250611b6c7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff8484611a59565b905092915050565b5f611b7e826117ed565b9150611b89836117ed565b9250828202611b97816117ed565b91508282048414831517611bae57611bad6119ce565b5b5092915050565b7f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e65725f82015250565b5f611be9602083611709565b9150611bf482611bb5565b602082019050919050565b5f6020820190508181035f830152611c1681611bdd565b9050919050565b7f4f776e61626c653a206e6577206f776e657220697320746865207a65726f20615f8201527f6464726573730000000000000000000000000000000000000000000000000000602082015250565b5f611c77602683611709565b9150611c8282611c1d565b604082019050919050565b5f6020820190508181035f830152611ca481611c6b565b9050919050565b7f74726164696e6720697320616c7265616479206f70656e0000000000000000005f82015250565b5f611cdf601783611709565b9150611cea82611cab565b602082019050919050565b5f6020820190508181035f830152611d0c81611cd3565b9050919050565b5f81519050611d21816117c3565b92915050565b5f60208284031215611d3c57611d3b61178f565b5b5f611d4984828501611d13565b91505092915050565b5f604082019050611d655f830185611968565b611d726020830184611968565b9392505050565b5f819050919050565b5f819050919050565b5f611da5611da0611d9b84611d79565b611d82565b6117ed565b9050919050565b611db581611d8b565b82525050565b5f60c082019050611dce5f830189611968565b611ddb6020830188611891565b611de86040830187611dac565b611df56060830186611dac565b611e026080830185611968565b611e0f60a0830184611891565b979650505050505050565b5f81519050611e28816117f6565b92915050565b5f805f60608486031215611e4557611e4461178f565b5b5f611e5286828701611e1a565b9350506020611e6386828701611e1a565b9250506040611e7486828701611e1a565b9150509250925092565b5f604082019050611e915f830185611968565b611e9e6020830184611891565b9392505050565b611eae8161185e565b8114611eb8575f80fd5b50565b5f81519050611ec981611ea5565b92915050565b5f60208284031215611ee457611ee361178f565b5b5f611ef184828501611ebb565b91505092915050565b7f45524332303a20617070726f76652066726f6d20746865207a65726f206164645f8201527f7265737300000000000000000000000000000000000000000000000000000000602082015250565b5f611f54602483611709565b9150611f5f82611efa565b604082019050919050565b5f6020820190508181035f830152611f8181611f48565b9050919050565b7f45524332303a20617070726f766520746f20746865207a65726f2061646472655f8201527f7373000000000000000000000000000000000000000000000000000000000000602082015250565b5f611fe2602283611709565b9150611fed82611f88565b604082019050919050565b5f6020820190508181035f83015261200f81611fd6565b9050919050565b7f45524332303a207472616e736665722066726f6d20746865207a65726f2061645f8201527f6472657373000000000000000000000000000000000000000000000000000000602082015250565b5f612070602583611709565b915061207b82612016565b604082019050919050565b5f6020820190508181035f83015261209d81612064565b9050919050565b7f45524332303a207472616e7366657220746f20746865207a65726f20616464725f8201527f6573730000000000000000000000000000000000000000000000000000000000602082015250565b5f6120fe602383611709565b9150612109826120a4565b604082019050919050565b5f6020820190508181035f83015261212b816120f2565b9050919050565b7f5472616e73666572206578636565647320746865206d61782077616c6c6574205f8201527f73697a6500000000000000000000000000000000000000000000000000000000602082015250565b5f61218c602483611709565b915061219782612132565b604082019050919050565b5f6020820190508181035f8301526121b981612180565b9050919050565b5f6121ca826117ed565b91506121d5836117ed565b92508282039050818111156121ed576121ec6119ce565b5b92915050565b5f6121fd826117ed565b9150612208836117ed565b92508282019050808211156122205761221f6119ce565b5b92915050565b7f536166654d6174683a206164646974696f6e206f766572666c6f7700000000005f82015250565b5f61225a601b83611709565b915061226582612226565b602082019050919050565b5f6020820190508181035f8301526122878161224e565b905091905056fe45524332303a207472616e7366657220616d6f756e7420657863656564732062616c616e636545524332303a207472616e7366657220616d6f756e74206578636565647320616c6c6f77616e6365a264697066735822122052c6567e4806338abe98d5eba25e8877347c293f11f67e2db91db9447dfb430364736f6c634300081a0033

Deployed Bytecode Sourcemap

3950:5002:0:-:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;5386:83;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;6224:161;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;5663:100;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;6393:313;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;5572:83;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;8822:125;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;5771:119;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;2947:148;;;:::i;:::-;;4258:56;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;8494:100;;;:::i;:::-;;2481:79;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;4321:58;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;8602:97;;;:::i;:::-;;5477:87;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;5898:167;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;6073:143;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;8707:107;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;2695:244;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;7778:708;;;:::i;:::-;;5386:83;5423:13;5456:5;;;;;;;;;;;;;;;;;5449:12;;5386:83;:::o;6224:161::-;6299:4;6316:39;6325:12;:10;:12::i;:::-;6339:7;6348:6;6316:8;:39::i;:::-;6373:4;6366:11;;6224:161;;;;:::o;5663:100::-;5716:7;4069:1;4132:2;:13;;;;:::i;:::-;4117:12;:28;;;;:::i;:::-;5736:19;;5663:100;:::o;6393:313::-;6491:4;6508:36;6518:6;6526:9;6537:6;6508:9;:36::i;:::-;6555:121;6564:6;6572:12;:10;:12::i;:::-;6586:89;6624:6;6586:89;;;;;;;;;;;;;;;;;:11;:19;6598:6;6586:19;;;;;;;;;;;;;;;:33;6606:12;:10;:12::i;:::-;6586:33;;;;;;;;;;;;;;;;:37;;:89;;;;;:::i;:::-;6555:8;:121::i;:::-;6694:4;6687:11;;6393:313;;;;;:::o;5572:83::-;5613:5;4069:1;5631:16;;5572:83;:::o;8822:125::-;2618:12;:10;:12::i;:::-;2608:22;;:6;;;;;;;;;;:22;;;2600:67;;;;;;;;;;;;:::i;:::-;;;;;;;;;8935:4:::1;8899:24;:33;8924:7;8899:33;;;;;;;;;;;;;;;;:40;;;;;;;;;;;;;;;;;;8822:125:::0;:::o;5771:119::-;5837:7;5864:9;:18;5874:7;5864:18;;;;;;;;;;;;;;;;5857:25;;5771:119;;;:::o;2947:148::-;2618:12;:10;:12::i;:::-;2608:22;;:6;;;;;;;;;;:22;;;2600:67;;;;;;;;;;;;:::i;:::-;;;;;;;;;3054:1:::1;3017:40;;3038:6;::::0;::::1;;;;;;;;3017:40;;;;;;;;;;;;3085:1;3068:6:::0;::::1;:19;;;;;;;;;;;;;;;;;;2947:148::o:0;4258:56::-;;;;:::o;8494:100::-;2618:12;:10;:12::i;:::-;2608:22;;:6;;;;;;;;;;:22;;;2600:67;;;;;;;;;;;;:::i;:::-;;;;;;;;;8581:5:::1;8560:18;;:26;;;;;;;;;;;;;;;;;;8494:100::o:0;2481:79::-;2519:7;2546:6;;;;;;;;;;;2539:13;;2481:79;:::o;4321:58::-;;;;:::o;8602:97::-;2618:12;:10;:12::i;:::-;2608:22;;:6;;;;;;;;;;:22;;;2600:67;;;;;;;;;;;;:::i;:::-;;;;;;;;;8687:4:::1;8666:18;;:25;;;;;;;;;;;;;;;;;;8602:97::o:0;5477:87::-;5516:13;5549:7;;;;;;;;;;;;;;;;;5542:14;;5477:87;:::o;5898:167::-;5976:4;5993:42;6003:12;:10;:12::i;:::-;6017:9;6028:6;5993:9;:42::i;:::-;6053:4;6046:11;;5898:167;;;;:::o;6073:143::-;6154:7;6181:11;:18;6193:5;6181:18;;;;;;;;;;;;;;;:27;6200:7;6181:27;;;;;;;;;;;;;;;;6174:34;;6073:143;;;;:::o;8707:107::-;8764:4;8788:18;;;;;;;;;;;8781:25;;8707:107;:::o;2695:244::-;2618:12;:10;:12::i;:::-;2608:22;;:6;;;;;;;;;;:22;;;2600:67;;;;;;;;;;;;:::i;:::-;;;;;;;;;2804:1:::1;2784:22;;:8;:22;;::::0;2776:73:::1;;;;;;;;;;;;:::i;:::-;;;;;;;;;2894:8;2865:38;;2886:6;::::0;::::1;;;;;;;;2865:38;;;;;;;;;;;;2923:8;2914:6;::::0;:17:::1;;;;;;;;;;;;;;;;;;2695:244:::0;:::o;7778:708::-;2618:12;:10;:12::i;:::-;2608:22;;:6;;;;;;;;;;:22;;;2600:67;;;;;;;;;;;;:::i;:::-;;;;;;;;;7844:11:::1;;;;;;;;;;;7843:12;7835:47;;;;;;;;;;;;:::i;:::-;;;;;;;;;7932:42;7897:15;;:78;;;;;;;;;;;;;;;;;;7990:63;8007:4;8022:15;;;;;;;;;;;4069:1;4132:2;:13;;;;:::i;:::-;4117:12;:28;;;;:::i;:::-;7990:8;:63::i;:::-;8102:15;;;;;;;;;;;:23;;;:25;;;;;;;;;;;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;8084:55;;;8148:4;8155:15;;;;;;;;;;;:20;;;:22;;;;;;;;;;;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;8084:94;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;8068:13;;:110;;;;;;;;;;;;;;;;;;8193:15;;;;;;;;;;;:31;;;8232:21;8263:4;8269:24;8287:4;8269:9;:24::i;:::-;8294:1;8296::::0;8298:7:::1;:5;:7::i;:::-;8306:15;8193:129;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;8344:13;;;;;;;;;;;8337:29;;;8375:15;;;;;;;;;;;8393:14;8337:71;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;8437:4;8423:11;::::0;:18:::1;;;;;;;;;;;;;;;;;;8470:4;8456:11;;:18;;;;;;;;;;;;;;;;;;7778:708::o:0;234:98::-;287:7;314:10;307:17;;234:98;:::o;7432:338::-;7543:1;7526:19;;:5;:19;;;7518:68;;;;;;;;;;;;:::i;:::-;;;;;;;;;7624:1;7605:21;;:7;:21;;;7597:68;;;;;;;;;;;;:::i;:::-;;;;;;;;;7708:6;7678:11;:18;7690:5;7678:18;;;;;;;;;;;;;;;:27;7697:7;7678:27;;;;;;;;;;;;;;;:36;;;;7746:7;7730:32;;7739:5;7730:32;;;7755:6;7730:32;;;;;;:::i;:::-;;;;;;;;7432:338;;;:::o;6714:710::-;6830:1;6812:20;;:6;:20;;;6804:70;;;;;;;;;;;;:::i;:::-;;;;;;;;;6914:1;6893:23;;:9;:23;;;6885:71;;;;;;;;;;;;:::i;:::-;;;;;;;;;6973:18;;;;;;;;;;;:58;;;;;6996:24;:35;7021:9;6996:35;;;;;;;;;;;;;;;;;;;;;;;;;6995:36;6973:58;:95;;;;;7036:24;:32;7061:6;7036:32;;;;;;;;;;;;;;;;;;;;;;;;;7035:33;6973:95;6969:227;;;7129:14;;7093:32;7118:6;7093:9;:20;7103:9;7093:20;;;;;;;;;;;;;;;;:24;;:32;;;;:::i;:::-;:50;;7085:99;;;;;;;;;;;;:::i;:::-;;;;;;;;;6969:227;7228:71;7250:6;7228:71;;;;;;;;;;;;;;;;;:9;:17;7238:6;7228:17;;;;;;;;;;;;;;;;:21;;:71;;;;;:::i;:::-;7208:9;:17;7218:6;7208:17;;;;;;;;;;;;;;;:91;;;;7333:32;7358:6;7333:9;:20;7343:9;7333:20;;;;;;;;;;;;;;;;:24;;:32;;;;:::i;:::-;7310:9;:20;7320:9;7310:20;;;;;;;;;;;;;;;:55;;;;7398:9;7381:35;;7390:6;7381:35;;;7409:6;7381:35;;;;;;:::i;:::-;;;;;;;;6714:710;;;:::o;1373:190::-;1459:7;1492:1;1487;:6;;1495:12;1479:29;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;1519:9;1535:1;1531;:5;;;;:::i;:::-;1519:17;;1554:1;1547:8;;;1373:190;;;;;:::o;1042:179::-;1100:7;1120:9;1136:1;1132;:5;;;;:::i;:::-;1120:17;;1161:1;1156;:6;;1148:46;;;;;;;;;;;;:::i;:::-;;;;;;;;;1212:1;1205:8;;;1042:179;;;;:::o;7:99:1:-;59:6;93:5;87:12;77:22;;7:99;;;:::o;112:169::-;196:11;230:6;225:3;218:19;270:4;265:3;261:14;246:29;;112:169;;;;:::o;287:139::-;376:6;371:3;366;360:23;417:1;408:6;403:3;399:16;392:27;287:139;;;:::o;432:102::-;473:6;524:2;520:7;515:2;508:5;504:14;500:28;490:38;;432:102;;;:::o;540:377::-;628:3;656:39;689:5;656:39;:::i;:::-;711:71;775:6;770:3;711:71;:::i;:::-;704:78;;791:65;849:6;844:3;837:4;830:5;826:16;791:65;:::i;:::-;881:29;903:6;881:29;:::i;:::-;876:3;872:39;865:46;;632:285;540:377;;;;:::o;923:313::-;1036:4;1074:2;1063:9;1059:18;1051:26;;1123:9;1117:4;1113:20;1109:1;1098:9;1094:17;1087:47;1151:78;1224:4;1215:6;1151:78;:::i;:::-;1143:86;;923:313;;;;:::o;1323:117::-;1432:1;1429;1422:12;1569:126;1606:7;1646:42;1639:5;1635:54;1624:65;;1569:126;;;:::o;1701:96::-;1738:7;1767:24;1785:5;1767:24;:::i;:::-;1756:35;;1701:96;;;:::o;1803:122::-;1876:24;1894:5;1876:24;:::i;:::-;1869:5;1866:35;1856:63;;1915:1;1912;1905:12;1856:63;1803:122;:::o;1931:139::-;1977:5;2015:6;2002:20;1993:29;;2031:33;2058:5;2031:33;:::i;:::-;1931:139;;;;:::o;2076:77::-;2113:7;2142:5;2131:16;;2076:77;;;:::o;2159:122::-;2232:24;2250:5;2232:24;:::i;:::-;2225:5;2222:35;2212:63;;2271:1;2268;2261:12;2212:63;2159:122;:::o;2287:139::-;2333:5;2371:6;2358:20;2349:29;;2387:33;2414:5;2387:33;:::i;:::-;2287:139;;;;:::o;2432:474::-;2500:6;2508;2557:2;2545:9;2536:7;2532:23;2528:32;2525:119;;;2563:79;;:::i;:::-;2525:119;2683:1;2708:53;2753:7;2744:6;2733:9;2729:22;2708:53;:::i;:::-;2698:63;;2654:117;2810:2;2836:53;2881:7;2872:6;2861:9;2857:22;2836:53;:::i;:::-;2826:63;;2781:118;2432:474;;;;;:::o;2912:90::-;2946:7;2989:5;2982:13;2975:21;2964:32;;2912:90;;;:::o;3008:109::-;3089:21;3104:5;3089:21;:::i;:::-;3084:3;3077:34;3008:109;;:::o;3123:210::-;3210:4;3248:2;3237:9;3233:18;3225:26;;3261:65;3323:1;3312:9;3308:17;3299:6;3261:65;:::i;:::-;3123:210;;;;:::o;3339:118::-;3426:24;3444:5;3426:24;:::i;:::-;3421:3;3414:37;3339:118;;:::o;3463:222::-;3556:4;3594:2;3583:9;3579:18;3571:26;;3607:71;3675:1;3664:9;3660:17;3651:6;3607:71;:::i;:::-;3463:222;;;;:::o;3691:619::-;3768:6;3776;3784;3833:2;3821:9;3812:7;3808:23;3804:32;3801:119;;;3839:79;;:::i;:::-;3801:119;3959:1;3984:53;4029:7;4020:6;4009:9;4005:22;3984:53;:::i;:::-;3974:63;;3930:117;4086:2;4112:53;4157:7;4148:6;4137:9;4133:22;4112:53;:::i;:::-;4102:63;;4057:118;4214:2;4240:53;4285:7;4276:6;4265:9;4261:22;4240:53;:::i;:::-;4230:63;;4185:118;3691:619;;;;;:::o;4316:86::-;4351:7;4391:4;4384:5;4380:16;4369:27;;4316:86;;;:::o;4408:112::-;4491:22;4507:5;4491:22;:::i;:::-;4486:3;4479:35;4408:112;;:::o;4526:214::-;4615:4;4653:2;4642:9;4638:18;4630:26;;4666:67;4730:1;4719:9;4715:17;4706:6;4666:67;:::i;:::-;4526:214;;;;:::o;4746:329::-;4805:6;4854:2;4842:9;4833:7;4829:23;4825:32;4822:119;;;4860:79;;:::i;:::-;4822:119;4980:1;5005:53;5050:7;5041:6;5030:9;5026:22;5005:53;:::i;:::-;4995:63;;4951:117;4746:329;;;;:::o;5081:118::-;5168:24;5186:5;5168:24;:::i;:::-;5163:3;5156:37;5081:118;;:::o;5205:222::-;5298:4;5336:2;5325:9;5321:18;5313:26;;5349:71;5417:1;5406:9;5402:17;5393:6;5349:71;:::i;:::-;5205:222;;;;:::o;5433:474::-;5501:6;5509;5558:2;5546:9;5537:7;5533:23;5529:32;5526:119;;;5564:79;;:::i;:::-;5526:119;5684:1;5709:53;5754:7;5745:6;5734:9;5730:22;5709:53;:::i;:::-;5699:63;;5655:117;5811:2;5837:53;5882:7;5873:6;5862:9;5858:22;5837:53;:::i;:::-;5827:63;;5782:118;5433:474;;;;;:::o;5913:180::-;5961:77;5958:1;5951:88;6058:4;6055:1;6048:15;6082:4;6079:1;6072:15;6099:102;6141:8;6188:5;6185:1;6181:13;6160:34;;6099:102;;;:::o;6207:848::-;6268:5;6275:4;6299:6;6290:15;;6323:5;6314:14;;6337:712;6358:1;6348:8;6345:15;6337:712;;;6453:4;6448:3;6444:14;6438:4;6435:24;6432:50;;;6462:18;;:::i;:::-;6432:50;6512:1;6502:8;6498:16;6495:451;;;6927:4;6920:5;6916:16;6907:25;;6495:451;6977:4;6971;6967:15;6959:23;;7007:32;7030:8;7007:32;:::i;:::-;6995:44;;6337:712;;;6207:848;;;;;;;:::o;7061:1073::-;7115:5;7306:8;7296:40;;7327:1;7318:10;;7329:5;;7296:40;7355:4;7345:36;;7372:1;7363:10;;7374:5;;7345:36;7441:4;7489:1;7484:27;;;;7525:1;7520:191;;;;7434:277;;7484:27;7502:1;7493:10;;7504:5;;;7520:191;7565:3;7555:8;7552:17;7549:43;;;7572:18;;:::i;:::-;7549:43;7621:8;7618:1;7614:16;7605:25;;7656:3;7649:5;7646:14;7643:40;;;7663:18;;:::i;:::-;7643:40;7696:5;;;7434:277;;7820:2;7810:8;7807:16;7801:3;7795:4;7792:13;7788:36;7770:2;7760:8;7757:16;7752:2;7746:4;7743:12;7739:35;7723:111;7720:246;;;7876:8;7870:4;7866:19;7857:28;;7911:3;7904:5;7901:14;7898:40;;;7918:18;;:::i;:::-;7898:40;7951:5;;7720:246;7991:42;8029:3;8019:8;8013:4;8010:1;7991:42;:::i;:::-;7976:57;;;;8065:4;8060:3;8056:14;8049:5;8046:25;8043:51;;;8074:18;;:::i;:::-;8043:51;8123:4;8116:5;8112:16;8103:25;;7061:1073;;;;;;:::o;8140:281::-;8198:5;8222:23;8240:4;8222:23;:::i;:::-;8214:31;;8266:25;8282:8;8266:25;:::i;:::-;8254:37;;8310:104;8347:66;8337:8;8331:4;8310:104;:::i;:::-;8301:113;;8140:281;;;;:::o;8427:410::-;8467:7;8490:20;8508:1;8490:20;:::i;:::-;8485:25;;8524:20;8542:1;8524:20;:::i;:::-;8519:25;;8579:1;8576;8572:9;8601:30;8619:11;8601:30;:::i;:::-;8590:41;;8780:1;8771:7;8767:15;8764:1;8761:22;8741:1;8734:9;8714:83;8691:139;;8810:18;;:::i;:::-;8691:139;8475:362;8427:410;;;;:::o;8843:182::-;8983:34;8979:1;8971:6;8967:14;8960:58;8843:182;:::o;9031:366::-;9173:3;9194:67;9258:2;9253:3;9194:67;:::i;:::-;9187:74;;9270:93;9359:3;9270:93;:::i;:::-;9388:2;9383:3;9379:12;9372:19;;9031:366;;;:::o;9403:419::-;9569:4;9607:2;9596:9;9592:18;9584:26;;9656:9;9650:4;9646:20;9642:1;9631:9;9627:17;9620:47;9684:131;9810:4;9684:131;:::i;:::-;9676:139;;9403:419;;;:::o;9828:225::-;9968:34;9964:1;9956:6;9952:14;9945:58;10037:8;10032:2;10024:6;10020:15;10013:33;9828:225;:::o;10059:366::-;10201:3;10222:67;10286:2;10281:3;10222:67;:::i;:::-;10215:74;;10298:93;10387:3;10298:93;:::i;:::-;10416:2;10411:3;10407:12;10400:19;;10059:366;;;:::o;10431:419::-;10597:4;10635:2;10624:9;10620:18;10612:26;;10684:9;10678:4;10674:20;10670:1;10659:9;10655:17;10648:47;10712:131;10838:4;10712:131;:::i;:::-;10704:139;;10431:419;;;:::o;10856:173::-;10996:25;10992:1;10984:6;10980:14;10973:49;10856:173;:::o;11035:366::-;11177:3;11198:67;11262:2;11257:3;11198:67;:::i;:::-;11191:74;;11274:93;11363:3;11274:93;:::i;:::-;11392:2;11387:3;11383:12;11376:19;;11035:366;;;:::o;11407:419::-;11573:4;11611:2;11600:9;11596:18;11588:26;;11660:9;11654:4;11650:20;11646:1;11635:9;11631:17;11624:47;11688:131;11814:4;11688:131;:::i;:::-;11680:139;;11407:419;;;:::o;11832:143::-;11889:5;11920:6;11914:13;11905:22;;11936:33;11963:5;11936:33;:::i;:::-;11832:143;;;;:::o;11981:351::-;12051:6;12100:2;12088:9;12079:7;12075:23;12071:32;12068:119;;;12106:79;;:::i;:::-;12068:119;12226:1;12251:64;12307:7;12298:6;12287:9;12283:22;12251:64;:::i;:::-;12241:74;;12197:128;11981:351;;;;:::o;12338:332::-;12459:4;12497:2;12486:9;12482:18;12474:26;;12510:71;12578:1;12567:9;12563:17;12554:6;12510:71;:::i;:::-;12591:72;12659:2;12648:9;12644:18;12635:6;12591:72;:::i;:::-;12338:332;;;;;:::o;12676:85::-;12721:7;12750:5;12739:16;;12676:85;;;:::o;12767:60::-;12795:3;12816:5;12809:12;;12767:60;;;:::o;12833:158::-;12891:9;12924:61;12942:42;12951:32;12977:5;12951:32;:::i;:::-;12942:42;:::i;:::-;12924:61;:::i;:::-;12911:74;;12833:158;;;:::o;12997:147::-;13092:45;13131:5;13092:45;:::i;:::-;13087:3;13080:58;12997:147;;:::o;13150:807::-;13399:4;13437:3;13426:9;13422:19;13414:27;;13451:71;13519:1;13508:9;13504:17;13495:6;13451:71;:::i;:::-;13532:72;13600:2;13589:9;13585:18;13576:6;13532:72;:::i;:::-;13614:80;13690:2;13679:9;13675:18;13666:6;13614:80;:::i;:::-;13704;13780:2;13769:9;13765:18;13756:6;13704:80;:::i;:::-;13794:73;13862:3;13851:9;13847:19;13838:6;13794:73;:::i;:::-;13877;13945:3;13934:9;13930:19;13921:6;13877:73;:::i;:::-;13150:807;;;;;;;;;:::o;13963:143::-;14020:5;14051:6;14045:13;14036:22;;14067:33;14094:5;14067:33;:::i;:::-;13963:143;;;;:::o;14112:663::-;14200:6;14208;14216;14265:2;14253:9;14244:7;14240:23;14236:32;14233:119;;;14271:79;;:::i;:::-;14233:119;14391:1;14416:64;14472:7;14463:6;14452:9;14448:22;14416:64;:::i;:::-;14406:74;;14362:128;14529:2;14555:64;14611:7;14602:6;14591:9;14587:22;14555:64;:::i;:::-;14545:74;;14500:129;14668:2;14694:64;14750:7;14741:6;14730:9;14726:22;14694:64;:::i;:::-;14684:74;;14639:129;14112:663;;;;;:::o;14781:332::-;14902:4;14940:2;14929:9;14925:18;14917:26;;14953:71;15021:1;15010:9;15006:17;14997:6;14953:71;:::i;:::-;15034:72;15102:2;15091:9;15087:18;15078:6;15034:72;:::i;:::-;14781:332;;;;;:::o;15119:116::-;15189:21;15204:5;15189:21;:::i;:::-;15182:5;15179:32;15169:60;;15225:1;15222;15215:12;15169:60;15119:116;:::o;15241:137::-;15295:5;15326:6;15320:13;15311:22;;15342:30;15366:5;15342:30;:::i;:::-;15241:137;;;;:::o;15384:345::-;15451:6;15500:2;15488:9;15479:7;15475:23;15471:32;15468:119;;;15506:79;;:::i;:::-;15468:119;15626:1;15651:61;15704:7;15695:6;15684:9;15680:22;15651:61;:::i;:::-;15641:71;;15597:125;15384:345;;;;:::o;15735:223::-;15875:34;15871:1;15863:6;15859:14;15852:58;15944:6;15939:2;15931:6;15927:15;15920:31;15735:223;:::o;15964:366::-;16106:3;16127:67;16191:2;16186:3;16127:67;:::i;:::-;16120:74;;16203:93;16292:3;16203:93;:::i;:::-;16321:2;16316:3;16312:12;16305:19;;15964:366;;;:::o;16336:419::-;16502:4;16540:2;16529:9;16525:18;16517:26;;16589:9;16583:4;16579:20;16575:1;16564:9;16560:17;16553:47;16617:131;16743:4;16617:131;:::i;:::-;16609:139;;16336:419;;;:::o;16761:221::-;16901:34;16897:1;16889:6;16885:14;16878:58;16970:4;16965:2;16957:6;16953:15;16946:29;16761:221;:::o;16988:366::-;17130:3;17151:67;17215:2;17210:3;17151:67;:::i;:::-;17144:74;;17227:93;17316:3;17227:93;:::i;:::-;17345:2;17340:3;17336:12;17329:19;;16988:366;;;:::o;17360:419::-;17526:4;17564:2;17553:9;17549:18;17541:26;;17613:9;17607:4;17603:20;17599:1;17588:9;17584:17;17577:47;17641:131;17767:4;17641:131;:::i;:::-;17633:139;;17360:419;;;:::o;17785:224::-;17925:34;17921:1;17913:6;17909:14;17902:58;17994:7;17989:2;17981:6;17977:15;17970:32;17785:224;:::o;18015:366::-;18157:3;18178:67;18242:2;18237:3;18178:67;:::i;:::-;18171:74;;18254:93;18343:3;18254:93;:::i;:::-;18372:2;18367:3;18363:12;18356:19;;18015:366;;;:::o;18387:419::-;18553:4;18591:2;18580:9;18576:18;18568:26;;18640:9;18634:4;18630:20;18626:1;18615:9;18611:17;18604:47;18668:131;18794:4;18668:131;:::i;:::-;18660:139;;18387:419;;;:::o;18812:222::-;18952:34;18948:1;18940:6;18936:14;18929:58;19021:5;19016:2;19008:6;19004:15;18997:30;18812:222;:::o;19040:366::-;19182:3;19203:67;19267:2;19262:3;19203:67;:::i;:::-;19196:74;;19279:93;19368:3;19279:93;:::i;:::-;19397:2;19392:3;19388:12;19381:19;;19040:366;;;:::o;19412:419::-;19578:4;19616:2;19605:9;19601:18;19593:26;;19665:9;19659:4;19655:20;19651:1;19640:9;19636:17;19629:47;19693:131;19819:4;19693:131;:::i;:::-;19685:139;;19412:419;;;:::o;19837:223::-;19977:34;19973:1;19965:6;19961:14;19954:58;20046:6;20041:2;20033:6;20029:15;20022:31;19837:223;:::o;20066:366::-;20208:3;20229:67;20293:2;20288:3;20229:67;:::i;:::-;20222:74;;20305:93;20394:3;20305:93;:::i;:::-;20423:2;20418:3;20414:12;20407:19;;20066:366;;;:::o;20438:419::-;20604:4;20642:2;20631:9;20627:18;20619:26;;20691:9;20685:4;20681:20;20677:1;20666:9;20662:17;20655:47;20719:131;20845:4;20719:131;:::i;:::-;20711:139;;20438:419;;;:::o;20863:194::-;20903:4;20923:20;20941:1;20923:20;:::i;:::-;20918:25;;20957:20;20975:1;20957:20;:::i;:::-;20952:25;;21001:1;20998;20994:9;20986:17;;21025:1;21019:4;21016:11;21013:37;;;21030:18;;:::i;:::-;21013:37;20863:194;;;;:::o;21063:191::-;21103:3;21122:20;21140:1;21122:20;:::i;:::-;21117:25;;21156:20;21174:1;21156:20;:::i;:::-;21151:25;;21199:1;21196;21192:9;21185:16;;21220:3;21217:1;21214:10;21211:36;;;21227:18;;:::i;:::-;21211:36;21063:191;;;;:::o;21260:177::-;21400:29;21396:1;21388:6;21384:14;21377:53;21260:177;:::o;21443:366::-;21585:3;21606:67;21670:2;21665:3;21606:67;:::i;:::-;21599:74;;21682:93;21771:3;21682:93;:::i;:::-;21800:2;21795:3;21791:12;21784:19;;21443:366;;;:::o;21815:419::-;21981:4;22019:2;22008:9;22004:18;21996:26;;22068:9;22062:4;22058:20;22054:1;22043:9;22039:17;22032:47;22096:131;22222:4;22096:131;:::i;:::-;22088:139;;21815:419;;;:::o

Swarm Source

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