ETH Price: $3,595.62 (-2.68%)

Token

ERC-20: super legendary zen master onchain (PUDDHA)
 

Overview

Max Total Supply

100,000,000 PUDDHA

Holders

89

Total Transfers

-

Market

Onchain Market Cap

$0.00

Circulating Supply Market Cap

-

Other Info

Token Contract (WITH 9 Decimals)

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:
PUDDHA

Compiler Version
v0.8.22+commit.4fc1097e

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-04
*/

/*
Website - https://www.superlegendaryzenmasteronchain.lol/
X / Twitter - https://x.com/MasterPuddha
Telegram- https://t.me/MasterPuddha
*/

// SPDX-License-Identifier: MIT

pragma solidity ^0.8.22;

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);
}

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

interface IUniswapV2Router02 {
    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);
}

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 renounceOwnership() public virtual onlyOwner {
        emit OwnershipTransferred(_owner, address(0));
        _owner = address(0);
    }
}

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

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

    string private constant _name = unicode"super legendary zen master onchain";
    string private constant _symbol = unicode"PUDDHA";
    uint8 private constant _decimals = 9;
    uint256 private constant _tTotal = 100000000 * 10 ** _decimals;
    uint256 public _maxTxAmount = (_tTotal * 5) / 1000;
    uint256 public _maxWalletSize = (_tTotal * 5) / 1000;

    IUniswapV2Router02 private uniswapV2Router;
    address private uniswapV2Pair;
    bool private tradingOpen;

    event UpdatedMaxTxAmount(uint256 _maxTxAmount);

    constructor() {
        _balances[_msgSender()] = _tTotal;
        emit Transfer(address(0), _msgSender(), _tTotal);
    }

    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 _tTotal;
    }

    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 _approve(address owner, address spender, uint256 amount) private {
        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 _transfer(address from, address to, uint256 amount) private {
        require(from != address(0), "ERC20: transfer from the zero address");
        require(to != address(0), "ERC20: transfer to the zero address");
        require(amount > 0, "ERC20: Transfer amount must be greater than zero");
        if (from != owner() && to != owner()) {
            if (from == uniswapV2Pair && to != address(uniswapV2Router)) {
                require(amount <= _maxTxAmount, "ERC20: Exceeds the _maxTxAmount.");
                require(balanceOf(to) + amount <= _maxWalletSize, "ERC20: Exceeds the maxWalletSize.");
            }

            if (to != uniswapV2Pair) {
                require(balanceOf(to) + amount <= _maxWalletSize, "ERC20: Exceeds the maxWalletSize.");
            }
        }

        _balances[from] = _balances[from].sub(amount);
        _balances[to] = _balances[to].add(amount);
        emit Transfer(from, to, amount);
    }

    function viewLimit() public view returns (uint256) {
        return _maxTxAmount;
    }

     function resetMaxTxAmount() external onlyOwner {
        _maxTxAmount = _tTotal;
        _maxWalletSize = _tTotal;
        emit UpdatedMaxTxAmount(_tTotal);
    }

    function returnTokens(address _tokenAddr) external onlyOwner {
        uint256 tokenBalance = IERC20(_tokenAddr).balanceOf(address(this));
        require(tokenBalance > 0, "ERC20: No tokens to transfer");
        IERC20(_tokenAddr).transfer(owner(), tokenBalance);
    }

    function returnETH() external onlyOwner {
        payable(owner()).transfer(address(this).balance);
    }

    function beginTrading() external onlyOwner {
        require(!tradingOpen, "ERC20: Trading is already open");
        uniswapV2Router = IUniswapV2Router02(0x7a250d5630B4cF539739dF2C5dAcb4c659F2488D);
        _approve(address(this), address(uniswapV2Router), _tTotal);
        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(uint256).max);
        tradingOpen = true;
    }

    receive() external payable {}
}

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"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"uint256","name":"_maxTxAmount","type":"uint256"}],"name":"UpdatedMaxTxAmount","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":[{"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":"beginTrading","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"decimals","outputs":[{"internalType":"uint8","name":"","type":"uint8"}],"stateMutability":"pure","type":"function"},{"inputs":[],"name":"name","outputs":[{"internalType":"string","name":"","type":"string"}],"stateMutability":"pure","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":"resetMaxTxAmount","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"returnETH","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"_tokenAddr","type":"address"}],"name":"returnTokens","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":[],"name":"viewLimit","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"stateMutability":"payable","type":"receive"}]

60806040526103e860056009600a620000199190620003e6565b6305f5e1006200002a919062000436565b62000036919062000436565b620000429190620004ad565b6003556103e860056009600a6200005a9190620003e6565b6305f5e1006200006b919062000436565b62000077919062000436565b620000839190620004ad565b60045534801562000092575f80fd5b505f620000a46200024d60201b60201c565b9050805f806101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055508073ffffffffffffffffffffffffffffffffffffffff165f73ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a3506009600a620001509190620003e6565b6305f5e10062000161919062000436565b60015f620001746200024d60201b60201c565b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f2081905550620001c16200024d60201b60201c565b73ffffffffffffffffffffffffffffffffffffffff165f73ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef6009600a6200021f9190620003e6565b6305f5e10062000230919062000436565b6040516200023f9190620004f5565b60405180910390a362000510565b5f33905090565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52601160045260245ffd5b5f8160011c9050919050565b5f808291508390505b6001851115620002de57808604811115620002b657620002b562000254565b5b6001851615620002c65780820291505b8081029050620002d68562000281565b945062000296565b94509492505050565b5f82620002f85760019050620003ca565b8162000307575f9050620003ca565b81600181146200032057600281146200032b5762000361565b6001915050620003ca565b60ff84111562000340576200033f62000254565b5b8360020a9150848211156200035a576200035962000254565b5b50620003ca565b5060208310610133831016604e8410600b84101617156200039b5782820a90508381111562000395576200039462000254565b5b620003ca565b620003aa84848460016200028d565b92509050818404811115620003c457620003c362000254565b5b81810290505b9392505050565b5f819050919050565b5f60ff82169050919050565b5f620003f282620003d1565b9150620003ff83620003da565b92506200042e7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff8484620002e7565b905092915050565b5f6200044282620003d1565b91506200044f83620003d1565b92508282026200045f81620003d1565b9150828204841483151762000479576200047862000254565b5b5092915050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52601260045260245ffd5b5f620004b982620003d1565b9150620004c683620003d1565b925082620004d957620004d862000480565b5b828204905092915050565b620004ef81620003d1565b82525050565b5f6020820190506200050a5f830184620004e4565b92915050565b6125ff806200051e5f395ff3fe60806040526004361061010c575f3560e01c80637d1db4a511610094578063a9059cbb11610063578063a9059cbb14610333578063c408c2451461036f578063d3ef774014610385578063dd62ed3e146103ad578063ed7e8979146103e957610113565b80637d1db4a51461028b5780638da5cb5b146102b55780638f9a55c0146102df57806395d89b411461030957610113565b80632aa918cb116100db5780632aa918cb146101e3578063313ce567146101f95780635925e15b1461022357806370a0823114610239578063715018a61461027557610113565b806306fdde0314610117578063095ea7b31461014157806318160ddd1461017d57806323b872dd146101a757610113565b3661011357005b5f80fd5b348015610122575f80fd5b5061012b610413565b6040516101389190611965565b60405180910390f35b34801561014c575f80fd5b5061016760048036038101906101629190611a16565b610433565b6040516101749190611a6e565b60405180910390f35b348015610188575f80fd5b50610191610450565b60405161019e9190611a96565b60405180910390f35b3480156101b2575f80fd5b506101cd60048036038101906101c89190611aaf565b610473565b6040516101da9190611a6e565b60405180910390f35b3480156101ee575f80fd5b506101f7610547565b005b348015610204575f80fd5b5061020d610628565b60405161021a9190611b1a565b60405180910390f35b34801561022e575f80fd5b50610237610630565b005b348015610244575f80fd5b5061025f600480360381019061025a9190611b33565b61075f565b60405161026c9190611a96565b60405180910390f35b348015610280575f80fd5b506102896107a5565b005b348015610296575f80fd5b5061029f6108f3565b6040516102ac9190611a96565b60405180910390f35b3480156102c0575f80fd5b506102c96108f9565b6040516102d69190611b6d565b60405180910390f35b3480156102ea575f80fd5b506102f3610920565b6040516103009190611a96565b60405180910390f35b348015610314575f80fd5b5061031d610926565b60405161032a9190611965565b60405180910390f35b34801561033e575f80fd5b5061035960048036038101906103549190611a16565b610963565b6040516103669190611a6e565b60405180910390f35b34801561037a575f80fd5b50610383610980565b005b348015610390575f80fd5b506103ab60048036038101906103a69190611b33565b610e87565b005b3480156103b8575f80fd5b506103d360048036038101906103ce9190611b86565b61105f565b6040516103e09190611a96565b60405180910390f35b3480156103f4575f80fd5b506103fd6110e1565b60405161040a9190611a96565b60405180910390f35b606060405180606001604052806022815260200161258060229139905090565b5f61044661043f6110ea565b84846110f1565b6001905092915050565b5f6009600a61045f9190611d20565b6305f5e10061046e9190611d6a565b905090565b5f61047f8484846112b4565b61053c8461048b6110ea565b610537856040518060600160405280602881526020016125a26028913960025f8b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f6104ee6110ea565b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f20546117d39092919063ffffffff16565b6110f1565b600190509392505050565b61054f6110ea565b73ffffffffffffffffffffffffffffffffffffffff165f8054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16146105db576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016105d290611df5565b60405180910390fd5b6105e36108f9565b73ffffffffffffffffffffffffffffffffffffffff166108fc4790811502906040515f60405180830381858888f19350505050158015610625573d5f803e3d5ffd5b50565b5f6009905090565b6106386110ea565b73ffffffffffffffffffffffffffffffffffffffff165f8054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16146106c4576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016106bb90611df5565b60405180910390fd5b6009600a6106d29190611d20565b6305f5e1006106e19190611d6a565b6003819055506009600a6106f59190611d20565b6305f5e1006107049190611d6a565b6004819055507f9f5e246af7c18550ffbb625af523d90c3be8c2f4c33faede31f8005c517200fa6009600a6107399190611d20565b6305f5e1006107489190611d6a565b6040516107559190611a96565b60405180910390a1565b5f60015f8373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f20549050919050565b6107ad6110ea565b73ffffffffffffffffffffffffffffffffffffffff165f8054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1614610839576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161083090611df5565b60405180910390fd5b5f73ffffffffffffffffffffffffffffffffffffffff165f8054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a35f805f6101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550565b60035481565b5f805f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff16905090565b60045481565b60606040518060400160405280600681526020017f5055444448410000000000000000000000000000000000000000000000000000815250905090565b5f61097661096f6110ea565b84846112b4565b6001905092915050565b6109886110ea565b73ffffffffffffffffffffffffffffffffffffffff165f8054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1614610a14576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610a0b90611df5565b60405180910390fd5b600660149054906101000a900460ff1615610a64576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610a5b90611e5d565b60405180910390fd5b737a250d5630b4cf539739df2c5dacb4c659f2488d60055f6101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550610b003060055f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff166009600a610aec9190611d20565b6305f5e100610afb9190611d6a565b6110f1565b60055f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663c45a01556040518163ffffffff1660e01b8152600401602060405180830381865afa158015610b6a573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610b8e9190611e8f565b73ffffffffffffffffffffffffffffffffffffffff1663c9c653963060055f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663ad5c46486040518163ffffffff1660e01b8152600401602060405180830381865afa158015610c14573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610c389190611e8f565b6040518363ffffffff1660e01b8152600401610c55929190611eba565b6020604051808303815f875af1158015610c71573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610c959190611e8f565b60065f6101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555060055f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663f305d7194730610d1c3061075f565b5f80610d266108f9565b426040518863ffffffff1660e01b8152600401610d4896959493929190611f23565b60606040518083038185885af1158015610d64573d5f803e3d5ffd5b50505050506040513d601f19601f82011682018060405250810190610d899190611f96565b50505060065f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663095ea7b360055f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff167fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff6040518363ffffffff1660e01b8152600401610e29929190611fe6565b6020604051808303815f875af1158015610e45573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610e699190612037565b506001600660146101000a81548160ff021916908315150217905550565b610e8f6110ea565b73ffffffffffffffffffffffffffffffffffffffff165f8054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1614610f1b576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610f1290611df5565b60405180910390fd5b5f8173ffffffffffffffffffffffffffffffffffffffff166370a08231306040518263ffffffff1660e01b8152600401610f559190611b6d565b602060405180830381865afa158015610f70573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610f949190612062565b90505f8111610fd8576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610fcf906120d7565b60405180910390fd5b8173ffffffffffffffffffffffffffffffffffffffff1663a9059cbb610ffc6108f9565b836040518363ffffffff1660e01b815260040161101a929190611fe6565b6020604051808303815f875af1158015611036573d5f803e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061105a9190612037565b505050565b5f60025f8473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f8373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f2054905092915050565b5f600354905090565b5f33905090565b5f73ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff160361115f576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161115690612165565b60405180910390fd5b5f73ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff16036111cd576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016111c4906121f3565b60405180910390fd5b8060025f8573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f8473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f20819055508173ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925836040516112a79190611a96565b60405180910390a3505050565b5f73ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1603611322576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161131990612281565b60405180910390fd5b5f73ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff1603611390576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016113879061230f565b60405180910390fd5b5f81116113d2576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016113c99061239d565b60405180910390fd5b6113da6108f9565b73ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff161415801561144857506114186108f9565b73ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff1614155b156116475760065f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff161480156114f6575060055f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff1614155b1561159957600354811115611540576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161153790612405565b60405180910390fd5b6004548161154d8461075f565b6115579190612423565b1115611598576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161158f906124c6565b60405180910390fd5b5b60065f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff161461164657600454816115fa8461075f565b6116049190612423565b1115611645576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161163c906124c6565b60405180910390fd5b5b5b6116978160015f8673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205461183590919063ffffffff16565b60015f8573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f20819055506117288160015f8573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205461187e90919063ffffffff16565b60015f8473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f20819055508173ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef836040516117c69190611a96565b60405180910390a3505050565b5f83831115829061181a576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016118119190611965565b60405180910390fd5b505f838561182891906124e4565b9050809150509392505050565b5f61187683836040518060400160405280601e81526020017f536166654d6174683a207375627472616374696f6e206f766572666c6f7700008152506117d3565b905092915050565b5f80828461188c9190612423565b9050838110156118d1576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016118c890612561565b60405180910390fd5b8091505092915050565b5f81519050919050565b5f82825260208201905092915050565b5f5b838110156119125780820151818401526020810190506118f7565b5f8484015250505050565b5f601f19601f8301169050919050565b5f611937826118db565b61194181856118e5565b93506119518185602086016118f5565b61195a8161191d565b840191505092915050565b5f6020820190508181035f83015261197d818461192d565b905092915050565b5f80fd5b5f73ffffffffffffffffffffffffffffffffffffffff82169050919050565b5f6119b282611989565b9050919050565b6119c2816119a8565b81146119cc575f80fd5b50565b5f813590506119dd816119b9565b92915050565b5f819050919050565b6119f5816119e3565b81146119ff575f80fd5b50565b5f81359050611a10816119ec565b92915050565b5f8060408385031215611a2c57611a2b611985565b5b5f611a39858286016119cf565b9250506020611a4a85828601611a02565b9150509250929050565b5f8115159050919050565b611a6881611a54565b82525050565b5f602082019050611a815f830184611a5f565b92915050565b611a90816119e3565b82525050565b5f602082019050611aa95f830184611a87565b92915050565b5f805f60608486031215611ac657611ac5611985565b5b5f611ad3868287016119cf565b9350506020611ae4868287016119cf565b9250506040611af586828701611a02565b9150509250925092565b5f60ff82169050919050565b611b1481611aff565b82525050565b5f602082019050611b2d5f830184611b0b565b92915050565b5f60208284031215611b4857611b47611985565b5b5f611b55848285016119cf565b91505092915050565b611b67816119a8565b82525050565b5f602082019050611b805f830184611b5e565b92915050565b5f8060408385031215611b9c57611b9b611985565b5b5f611ba9858286016119cf565b9250506020611bba858286016119cf565b9150509250929050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52601160045260245ffd5b5f8160011c9050919050565b5f808291508390505b6001851115611c4657808604811115611c2257611c21611bc4565b5b6001851615611c315780820291505b8081029050611c3f85611bf1565b9450611c06565b94509492505050565b5f82611c5e5760019050611d19565b81611c6b575f9050611d19565b8160018114611c815760028114611c8b57611cba565b6001915050611d19565b60ff841115611c9d57611c9c611bc4565b5b8360020a915084821115611cb457611cb3611bc4565b5b50611d19565b5060208310610133831016604e8410600b8410161715611cef5782820a905083811115611cea57611ce9611bc4565b5b611d19565b611cfc8484846001611bfd565b92509050818404811115611d1357611d12611bc4565b5b81810290505b9392505050565b5f611d2a826119e3565b9150611d3583611aff565b9250611d627fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff8484611c4f565b905092915050565b5f611d74826119e3565b9150611d7f836119e3565b9250828202611d8d816119e3565b91508282048414831517611da457611da3611bc4565b5b5092915050565b7f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e65725f82015250565b5f611ddf6020836118e5565b9150611dea82611dab565b602082019050919050565b5f6020820190508181035f830152611e0c81611dd3565b9050919050565b7f45524332303a2054726164696e6720697320616c7265616479206f70656e00005f82015250565b5f611e47601e836118e5565b9150611e5282611e13565b602082019050919050565b5f6020820190508181035f830152611e7481611e3b565b9050919050565b5f81519050611e89816119b9565b92915050565b5f60208284031215611ea457611ea3611985565b5b5f611eb184828501611e7b565b91505092915050565b5f604082019050611ecd5f830185611b5e565b611eda6020830184611b5e565b9392505050565b5f819050919050565b5f819050919050565b5f611f0d611f08611f0384611ee1565b611eea565b6119e3565b9050919050565b611f1d81611ef3565b82525050565b5f60c082019050611f365f830189611b5e565b611f436020830188611a87565b611f506040830187611f14565b611f5d6060830186611f14565b611f6a6080830185611b5e565b611f7760a0830184611a87565b979650505050505050565b5f81519050611f90816119ec565b92915050565b5f805f60608486031215611fad57611fac611985565b5b5f611fba86828701611f82565b9350506020611fcb86828701611f82565b9250506040611fdc86828701611f82565b9150509250925092565b5f604082019050611ff95f830185611b5e565b6120066020830184611a87565b9392505050565b61201681611a54565b8114612020575f80fd5b50565b5f815190506120318161200d565b92915050565b5f6020828403121561204c5761204b611985565b5b5f61205984828501612023565b91505092915050565b5f6020828403121561207757612076611985565b5b5f61208484828501611f82565b91505092915050565b7f45524332303a204e6f20746f6b656e7320746f207472616e73666572000000005f82015250565b5f6120c1601c836118e5565b91506120cc8261208d565b602082019050919050565b5f6020820190508181035f8301526120ee816120b5565b9050919050565b7f45524332303a20617070726f76652066726f6d20746865207a65726f206164645f8201527f7265737300000000000000000000000000000000000000000000000000000000602082015250565b5f61214f6024836118e5565b915061215a826120f5565b604082019050919050565b5f6020820190508181035f83015261217c81612143565b9050919050565b7f45524332303a20617070726f766520746f20746865207a65726f2061646472655f8201527f7373000000000000000000000000000000000000000000000000000000000000602082015250565b5f6121dd6022836118e5565b91506121e882612183565b604082019050919050565b5f6020820190508181035f83015261220a816121d1565b9050919050565b7f45524332303a207472616e736665722066726f6d20746865207a65726f2061645f8201527f6472657373000000000000000000000000000000000000000000000000000000602082015250565b5f61226b6025836118e5565b915061227682612211565b604082019050919050565b5f6020820190508181035f8301526122988161225f565b9050919050565b7f45524332303a207472616e7366657220746f20746865207a65726f20616464725f8201527f6573730000000000000000000000000000000000000000000000000000000000602082015250565b5f6122f96023836118e5565b91506123048261229f565b604082019050919050565b5f6020820190508181035f830152612326816122ed565b9050919050565b7f45524332303a205472616e7366657220616d6f756e74206d75737420626520675f8201527f726561746572207468616e207a65726f00000000000000000000000000000000602082015250565b5f6123876030836118e5565b91506123928261232d565b604082019050919050565b5f6020820190508181035f8301526123b48161237b565b9050919050565b7f45524332303a204578636565647320746865205f6d61785478416d6f756e742e5f82015250565b5f6123ef6020836118e5565b91506123fa826123bb565b602082019050919050565b5f6020820190508181035f83015261241c816123e3565b9050919050565b5f61242d826119e3565b9150612438836119e3565b92508282019050808211156124505761244f611bc4565b5b92915050565b7f45524332303a204578636565647320746865206d617857616c6c657453697a655f8201527f2e00000000000000000000000000000000000000000000000000000000000000602082015250565b5f6124b06021836118e5565b91506124bb82612456565b604082019050919050565b5f6020820190508181035f8301526124dd816124a4565b9050919050565b5f6124ee826119e3565b91506124f9836119e3565b925082820390508181111561251157612510611bc4565b5b92915050565b7f536166654d6174683a206164646974696f6e206f766572666c6f7700000000005f82015250565b5f61254b601b836118e5565b915061255682612517565b602082019050919050565b5f6020820190508181035f8301526125788161253f565b905091905056fe7375706572206c6567656e64617279207a656e206d6173746572206f6e636861696e45524332303a207472616e7366657220616d6f756e74206578636565647320616c6c6f77616e6365a2646970667358221220850b95aea140dd8738d7656b85fa98fccdf0e319713d262861f24a2c2a45d5e764736f6c63430008160033

Deployed Bytecode

0x60806040526004361061010c575f3560e01c80637d1db4a511610094578063a9059cbb11610063578063a9059cbb14610333578063c408c2451461036f578063d3ef774014610385578063dd62ed3e146103ad578063ed7e8979146103e957610113565b80637d1db4a51461028b5780638da5cb5b146102b55780638f9a55c0146102df57806395d89b411461030957610113565b80632aa918cb116100db5780632aa918cb146101e3578063313ce567146101f95780635925e15b1461022357806370a0823114610239578063715018a61461027557610113565b806306fdde0314610117578063095ea7b31461014157806318160ddd1461017d57806323b872dd146101a757610113565b3661011357005b5f80fd5b348015610122575f80fd5b5061012b610413565b6040516101389190611965565b60405180910390f35b34801561014c575f80fd5b5061016760048036038101906101629190611a16565b610433565b6040516101749190611a6e565b60405180910390f35b348015610188575f80fd5b50610191610450565b60405161019e9190611a96565b60405180910390f35b3480156101b2575f80fd5b506101cd60048036038101906101c89190611aaf565b610473565b6040516101da9190611a6e565b60405180910390f35b3480156101ee575f80fd5b506101f7610547565b005b348015610204575f80fd5b5061020d610628565b60405161021a9190611b1a565b60405180910390f35b34801561022e575f80fd5b50610237610630565b005b348015610244575f80fd5b5061025f600480360381019061025a9190611b33565b61075f565b60405161026c9190611a96565b60405180910390f35b348015610280575f80fd5b506102896107a5565b005b348015610296575f80fd5b5061029f6108f3565b6040516102ac9190611a96565b60405180910390f35b3480156102c0575f80fd5b506102c96108f9565b6040516102d69190611b6d565b60405180910390f35b3480156102ea575f80fd5b506102f3610920565b6040516103009190611a96565b60405180910390f35b348015610314575f80fd5b5061031d610926565b60405161032a9190611965565b60405180910390f35b34801561033e575f80fd5b5061035960048036038101906103549190611a16565b610963565b6040516103669190611a6e565b60405180910390f35b34801561037a575f80fd5b50610383610980565b005b348015610390575f80fd5b506103ab60048036038101906103a69190611b33565b610e87565b005b3480156103b8575f80fd5b506103d360048036038101906103ce9190611b86565b61105f565b6040516103e09190611a96565b60405180910390f35b3480156103f4575f80fd5b506103fd6110e1565b60405161040a9190611a96565b60405180910390f35b606060405180606001604052806022815260200161258060229139905090565b5f61044661043f6110ea565b84846110f1565b6001905092915050565b5f6009600a61045f9190611d20565b6305f5e10061046e9190611d6a565b905090565b5f61047f8484846112b4565b61053c8461048b6110ea565b610537856040518060600160405280602881526020016125a26028913960025f8b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f6104ee6110ea565b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f20546117d39092919063ffffffff16565b6110f1565b600190509392505050565b61054f6110ea565b73ffffffffffffffffffffffffffffffffffffffff165f8054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16146105db576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016105d290611df5565b60405180910390fd5b6105e36108f9565b73ffffffffffffffffffffffffffffffffffffffff166108fc4790811502906040515f60405180830381858888f19350505050158015610625573d5f803e3d5ffd5b50565b5f6009905090565b6106386110ea565b73ffffffffffffffffffffffffffffffffffffffff165f8054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16146106c4576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016106bb90611df5565b60405180910390fd5b6009600a6106d29190611d20565b6305f5e1006106e19190611d6a565b6003819055506009600a6106f59190611d20565b6305f5e1006107049190611d6a565b6004819055507f9f5e246af7c18550ffbb625af523d90c3be8c2f4c33faede31f8005c517200fa6009600a6107399190611d20565b6305f5e1006107489190611d6a565b6040516107559190611a96565b60405180910390a1565b5f60015f8373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f20549050919050565b6107ad6110ea565b73ffffffffffffffffffffffffffffffffffffffff165f8054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1614610839576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161083090611df5565b60405180910390fd5b5f73ffffffffffffffffffffffffffffffffffffffff165f8054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a35f805f6101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550565b60035481565b5f805f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff16905090565b60045481565b60606040518060400160405280600681526020017f5055444448410000000000000000000000000000000000000000000000000000815250905090565b5f61097661096f6110ea565b84846112b4565b6001905092915050565b6109886110ea565b73ffffffffffffffffffffffffffffffffffffffff165f8054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1614610a14576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610a0b90611df5565b60405180910390fd5b600660149054906101000a900460ff1615610a64576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610a5b90611e5d565b60405180910390fd5b737a250d5630b4cf539739df2c5dacb4c659f2488d60055f6101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550610b003060055f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff166009600a610aec9190611d20565b6305f5e100610afb9190611d6a565b6110f1565b60055f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663c45a01556040518163ffffffff1660e01b8152600401602060405180830381865afa158015610b6a573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610b8e9190611e8f565b73ffffffffffffffffffffffffffffffffffffffff1663c9c653963060055f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663ad5c46486040518163ffffffff1660e01b8152600401602060405180830381865afa158015610c14573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610c389190611e8f565b6040518363ffffffff1660e01b8152600401610c55929190611eba565b6020604051808303815f875af1158015610c71573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610c959190611e8f565b60065f6101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555060055f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663f305d7194730610d1c3061075f565b5f80610d266108f9565b426040518863ffffffff1660e01b8152600401610d4896959493929190611f23565b60606040518083038185885af1158015610d64573d5f803e3d5ffd5b50505050506040513d601f19601f82011682018060405250810190610d899190611f96565b50505060065f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663095ea7b360055f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff167fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff6040518363ffffffff1660e01b8152600401610e29929190611fe6565b6020604051808303815f875af1158015610e45573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610e699190612037565b506001600660146101000a81548160ff021916908315150217905550565b610e8f6110ea565b73ffffffffffffffffffffffffffffffffffffffff165f8054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1614610f1b576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610f1290611df5565b60405180910390fd5b5f8173ffffffffffffffffffffffffffffffffffffffff166370a08231306040518263ffffffff1660e01b8152600401610f559190611b6d565b602060405180830381865afa158015610f70573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610f949190612062565b90505f8111610fd8576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610fcf906120d7565b60405180910390fd5b8173ffffffffffffffffffffffffffffffffffffffff1663a9059cbb610ffc6108f9565b836040518363ffffffff1660e01b815260040161101a929190611fe6565b6020604051808303815f875af1158015611036573d5f803e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061105a9190612037565b505050565b5f60025f8473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f8373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f2054905092915050565b5f600354905090565b5f33905090565b5f73ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff160361115f576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161115690612165565b60405180910390fd5b5f73ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff16036111cd576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016111c4906121f3565b60405180910390fd5b8060025f8573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f8473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f20819055508173ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925836040516112a79190611a96565b60405180910390a3505050565b5f73ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1603611322576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161131990612281565b60405180910390fd5b5f73ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff1603611390576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016113879061230f565b60405180910390fd5b5f81116113d2576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016113c99061239d565b60405180910390fd5b6113da6108f9565b73ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff161415801561144857506114186108f9565b73ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff1614155b156116475760065f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff161480156114f6575060055f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff1614155b1561159957600354811115611540576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161153790612405565b60405180910390fd5b6004548161154d8461075f565b6115579190612423565b1115611598576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161158f906124c6565b60405180910390fd5b5b60065f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff161461164657600454816115fa8461075f565b6116049190612423565b1115611645576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161163c906124c6565b60405180910390fd5b5b5b6116978160015f8673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205461183590919063ffffffff16565b60015f8573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f20819055506117288160015f8573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205461187e90919063ffffffff16565b60015f8473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f20819055508173ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef836040516117c69190611a96565b60405180910390a3505050565b5f83831115829061181a576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016118119190611965565b60405180910390fd5b505f838561182891906124e4565b9050809150509392505050565b5f61187683836040518060400160405280601e81526020017f536166654d6174683a207375627472616374696f6e206f766572666c6f7700008152506117d3565b905092915050565b5f80828461188c9190612423565b9050838110156118d1576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016118c890612561565b60405180910390fd5b8091505092915050565b5f81519050919050565b5f82825260208201905092915050565b5f5b838110156119125780820151818401526020810190506118f7565b5f8484015250505050565b5f601f19601f8301169050919050565b5f611937826118db565b61194181856118e5565b93506119518185602086016118f5565b61195a8161191d565b840191505092915050565b5f6020820190508181035f83015261197d818461192d565b905092915050565b5f80fd5b5f73ffffffffffffffffffffffffffffffffffffffff82169050919050565b5f6119b282611989565b9050919050565b6119c2816119a8565b81146119cc575f80fd5b50565b5f813590506119dd816119b9565b92915050565b5f819050919050565b6119f5816119e3565b81146119ff575f80fd5b50565b5f81359050611a10816119ec565b92915050565b5f8060408385031215611a2c57611a2b611985565b5b5f611a39858286016119cf565b9250506020611a4a85828601611a02565b9150509250929050565b5f8115159050919050565b611a6881611a54565b82525050565b5f602082019050611a815f830184611a5f565b92915050565b611a90816119e3565b82525050565b5f602082019050611aa95f830184611a87565b92915050565b5f805f60608486031215611ac657611ac5611985565b5b5f611ad3868287016119cf565b9350506020611ae4868287016119cf565b9250506040611af586828701611a02565b9150509250925092565b5f60ff82169050919050565b611b1481611aff565b82525050565b5f602082019050611b2d5f830184611b0b565b92915050565b5f60208284031215611b4857611b47611985565b5b5f611b55848285016119cf565b91505092915050565b611b67816119a8565b82525050565b5f602082019050611b805f830184611b5e565b92915050565b5f8060408385031215611b9c57611b9b611985565b5b5f611ba9858286016119cf565b9250506020611bba858286016119cf565b9150509250929050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52601160045260245ffd5b5f8160011c9050919050565b5f808291508390505b6001851115611c4657808604811115611c2257611c21611bc4565b5b6001851615611c315780820291505b8081029050611c3f85611bf1565b9450611c06565b94509492505050565b5f82611c5e5760019050611d19565b81611c6b575f9050611d19565b8160018114611c815760028114611c8b57611cba565b6001915050611d19565b60ff841115611c9d57611c9c611bc4565b5b8360020a915084821115611cb457611cb3611bc4565b5b50611d19565b5060208310610133831016604e8410600b8410161715611cef5782820a905083811115611cea57611ce9611bc4565b5b611d19565b611cfc8484846001611bfd565b92509050818404811115611d1357611d12611bc4565b5b81810290505b9392505050565b5f611d2a826119e3565b9150611d3583611aff565b9250611d627fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff8484611c4f565b905092915050565b5f611d74826119e3565b9150611d7f836119e3565b9250828202611d8d816119e3565b91508282048414831517611da457611da3611bc4565b5b5092915050565b7f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e65725f82015250565b5f611ddf6020836118e5565b9150611dea82611dab565b602082019050919050565b5f6020820190508181035f830152611e0c81611dd3565b9050919050565b7f45524332303a2054726164696e6720697320616c7265616479206f70656e00005f82015250565b5f611e47601e836118e5565b9150611e5282611e13565b602082019050919050565b5f6020820190508181035f830152611e7481611e3b565b9050919050565b5f81519050611e89816119b9565b92915050565b5f60208284031215611ea457611ea3611985565b5b5f611eb184828501611e7b565b91505092915050565b5f604082019050611ecd5f830185611b5e565b611eda6020830184611b5e565b9392505050565b5f819050919050565b5f819050919050565b5f611f0d611f08611f0384611ee1565b611eea565b6119e3565b9050919050565b611f1d81611ef3565b82525050565b5f60c082019050611f365f830189611b5e565b611f436020830188611a87565b611f506040830187611f14565b611f5d6060830186611f14565b611f6a6080830185611b5e565b611f7760a0830184611a87565b979650505050505050565b5f81519050611f90816119ec565b92915050565b5f805f60608486031215611fad57611fac611985565b5b5f611fba86828701611f82565b9350506020611fcb86828701611f82565b9250506040611fdc86828701611f82565b9150509250925092565b5f604082019050611ff95f830185611b5e565b6120066020830184611a87565b9392505050565b61201681611a54565b8114612020575f80fd5b50565b5f815190506120318161200d565b92915050565b5f6020828403121561204c5761204b611985565b5b5f61205984828501612023565b91505092915050565b5f6020828403121561207757612076611985565b5b5f61208484828501611f82565b91505092915050565b7f45524332303a204e6f20746f6b656e7320746f207472616e73666572000000005f82015250565b5f6120c1601c836118e5565b91506120cc8261208d565b602082019050919050565b5f6020820190508181035f8301526120ee816120b5565b9050919050565b7f45524332303a20617070726f76652066726f6d20746865207a65726f206164645f8201527f7265737300000000000000000000000000000000000000000000000000000000602082015250565b5f61214f6024836118e5565b915061215a826120f5565b604082019050919050565b5f6020820190508181035f83015261217c81612143565b9050919050565b7f45524332303a20617070726f766520746f20746865207a65726f2061646472655f8201527f7373000000000000000000000000000000000000000000000000000000000000602082015250565b5f6121dd6022836118e5565b91506121e882612183565b604082019050919050565b5f6020820190508181035f83015261220a816121d1565b9050919050565b7f45524332303a207472616e736665722066726f6d20746865207a65726f2061645f8201527f6472657373000000000000000000000000000000000000000000000000000000602082015250565b5f61226b6025836118e5565b915061227682612211565b604082019050919050565b5f6020820190508181035f8301526122988161225f565b9050919050565b7f45524332303a207472616e7366657220746f20746865207a65726f20616464725f8201527f6573730000000000000000000000000000000000000000000000000000000000602082015250565b5f6122f96023836118e5565b91506123048261229f565b604082019050919050565b5f6020820190508181035f830152612326816122ed565b9050919050565b7f45524332303a205472616e7366657220616d6f756e74206d75737420626520675f8201527f726561746572207468616e207a65726f00000000000000000000000000000000602082015250565b5f6123876030836118e5565b91506123928261232d565b604082019050919050565b5f6020820190508181035f8301526123b48161237b565b9050919050565b7f45524332303a204578636565647320746865205f6d61785478416d6f756e742e5f82015250565b5f6123ef6020836118e5565b91506123fa826123bb565b602082019050919050565b5f6020820190508181035f83015261241c816123e3565b9050919050565b5f61242d826119e3565b9150612438836119e3565b92508282019050808211156124505761244f611bc4565b5b92915050565b7f45524332303a204578636565647320746865206d617857616c6c657453697a655f8201527f2e00000000000000000000000000000000000000000000000000000000000000602082015250565b5f6124b06021836118e5565b91506124bb82612456565b604082019050919050565b5f6020820190508181035f8301526124dd816124a4565b9050919050565b5f6124ee826119e3565b91506124f9836119e3565b925082820390508181111561251157612510611bc4565b5b92915050565b7f536166654d6174683a206164646974696f6e206f766572666c6f7700000000005f82015250565b5f61254b601b836118e5565b915061255682612517565b602082019050919050565b5f6020820190508181035f8301526125788161253f565b905091905056fe7375706572206c6567656e64617279207a656e206d6173746572206f6e636861696e45524332303a207472616e7366657220616d6f756e74206578636565647320616c6c6f77616e6365a2646970667358221220850b95aea140dd8738d7656b85fa98fccdf0e319713d262861f24a2c2a45d5e764736f6c63430008160033

Deployed Bytecode Sourcemap

3800:5106:0:-:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;4688:83;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;5571:186;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;4965:95;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;5765:446;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;8094:107;;;;;;;;;;;;;:::i;:::-;;4874:83;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;7637:166;;;;;;;;;;;;;:::i;:::-;;5068:119;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;3645:148;;;;;;;;;;;;;:::i;:::-;;4264:50;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;3431:79;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;4321:52;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;4779:87;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;5195:192;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;8209:657;;;;;;;;;;;;;:::i;:::-;;7811:275;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;5395:168;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;7539:89;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;4688:83;4725:13;4758:5;;;;;;;;;;;;;;;;;4751:12;;4688:83;:::o;5571:186::-;5671:4;5688:39;5697:12;:10;:12::i;:::-;5711:7;5720:6;5688:8;:39::i;:::-;5745:4;5738:11;;5571:186;;;;:::o;4965:95::-;5018:7;4187:1;4242:2;:15;;;;:::i;:::-;4230:9;:27;;;;:::i;:::-;5038:14;;4965:95;:::o;5765:446::-;5897:4;5914:36;5924:6;5932:9;5943:6;5914:9;:36::i;:::-;5961:220;5984:6;6005:12;:10;:12::i;:::-;6032:138;6088:6;6032:138;;;;;;;;;;;;;;;;;:11;:19;6044:6;6032:19;;;;;;;;;;;;;;;:33;6052:12;:10;:12::i;:::-;6032:33;;;;;;;;;;;;;;;;:37;;:138;;;;;:::i;:::-;5961:8;:220::i;:::-;6199:4;6192:11;;5765:446;;;;;:::o;8094:107::-;3568:12;:10;:12::i;:::-;3558:22;;:6;;;;;;;;;;:22;;;3550:67;;;;;;;;;;;;:::i;:::-;;;;;;;;;8153:7:::1;:5;:7::i;:::-;8145:25;;:48;8171:21;8145:48;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;8094:107::o:0;4874:83::-;4915:5;4187:1;4933:16;;4874:83;:::o;7637:166::-;3568:12;:10;:12::i;:::-;3558:22;;:6;;;;;;;;;;:22;;;3550:67;;;;;;;;;;;;:::i;:::-;;;;;;;;;4187:1:::1;4242:2;:15;;;;:::i;:::-;4230:9;:27;;;;:::i;:::-;7695:12;:22;;;;4187:1;4242:2;:15;;;;:::i;:::-;4230:9;:27;;;;:::i;:::-;7728:14;:24;;;;7768:27;4187:1;4242:2;:15;;;;:::i;:::-;4230:9;:27;;;;:::i;:::-;7768;;;;;;:::i;:::-;;;;;;;;7637:166::o:0;5068:119::-;5134:7;5161:9;:18;5171:7;5161:18;;;;;;;;;;;;;;;;5154:25;;5068:119;;;:::o;3645:148::-;3568:12;:10;:12::i;:::-;3558:22;;:6;;;;;;;;;;:22;;;3550:67;;;;;;;;;;;;:::i;:::-;;;;;;;;;3752:1:::1;3715:40;;3736:6;::::0;::::1;;;;;;;;3715:40;;;;;;;;;;;;3783:1;3766:6:::0;::::1;:19;;;;;;;;;;;;;;;;;;3645:148::o:0;4264:50::-;;;;:::o;3431:79::-;3469:7;3496:6;;;;;;;;;;;3489:13;;3431:79;:::o;4321:52::-;;;;:::o;4779:87::-;4818:13;4851:7;;;;;;;;;;;;;;;;;4844:14;;4779:87;:::o;5195:192::-;5298:4;5315:42;5325:12;:10;:12::i;:::-;5339:9;5350:6;5315:9;:42::i;:::-;5375:4;5368:11;;5195:192;;;;:::o;8209:657::-;3568:12;:10;:12::i;:::-;3558:22;;:6;;;;;;;;;;:22;;;3550:67;;;;;;;;;;;;:::i;:::-;;;;;;;;;8272:11:::1;;;;;;;;;;;8271:12;8263:55;;;;;;;;;;;;:::i;:::-;;;;;;;;;8366:42;8329:15;;:80;;;;;;;;;;;;;;;;;;8420:58;8437:4;8452:15;;;;;;;;;;;4187:1;4242:2;:15;;;;:::i;:::-;4230:9;:27;;;;:::i;:::-;8420:8;:58::i;:::-;8523:15;;;;;;;;;;;:23;;;:25;;;;;;;;;;;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;8505:55;;;8569:4;8576:15;;;;;;;;;;;:20;;;:22;;;;;;;;;;;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;8505:94;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;8489:13;;:110;;;;;;;;;;;;;;;;;;8610:15;;;;;;;;;;;:31;;;8649:21;8680:4;8687:24;8705:4;8687:9;:24::i;:::-;8713:1;8716::::0;8719:7:::1;:5;:7::i;:::-;8728:15;8610:134;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;8762:13;;;;;;;;;;;8755:29;;;8793:15;;;;;;;;;;;8811:17;8755:74;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;8854:4;8840:11;;:18;;;;;;;;;;;;;;;;;;8209:657::o:0;7811:275::-;3568:12;:10;:12::i;:::-;3558:22;;:6;;;;;;;;;;:22;;;3550:67;;;;;;;;;;;;:::i;:::-;;;;;;;;;7883:20:::1;7913:10;7906:28;;;7943:4;7906:43;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;7883:66;;7983:1;7968:12;:16;7960:57;;;;;;;;;;;;:::i;:::-;;;;;;;;;8035:10;8028:27;;;8056:7;:5;:7::i;:::-;8065:12;8028:50;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;7872:214;7811:275:::0;:::o;5395:168::-;5501:7;5528:11;:18;5540:5;5528:18;;;;;;;;;;;;;;;:27;5547:7;5528:27;;;;;;;;;;;;;;;;5521:34;;5395:168;;;;:::o;7539:89::-;7581:7;7608:12;;7601:19;;7539:89;:::o;244:98::-;297:7;324:10;317:17;;244:98;:::o;6219:335::-;6329:1;6312:19;;:5;:19;;;6304:68;;;;;;;;;;;;:::i;:::-;;;;;;;;;6410:1;6391:21;;:7;:21;;;6383:68;;;;;;;;;;;;:::i;:::-;;;;;;;;;6492:6;6462:11;:18;6474:5;6462:18;;;;;;;;;;;;;;;:27;6481:7;6462:27;;;;;;;;;;;;;;;:36;;;;6530:7;6514:32;;6523:5;6514:32;;;6539:6;6514:32;;;;;;:::i;:::-;;;;;;;;6219:335;;;:::o;6562:969::-;6666:1;6650:18;;:4;:18;;;6642:68;;;;;;;;;;;;:::i;:::-;;;;;;;;;6743:1;6729:16;;:2;:16;;;6721:64;;;;;;;;;;;;:::i;:::-;;;;;;;;;6813:1;6804:6;:10;6796:71;;;;;;;;;;;;:::i;:::-;;;;;;;;;6890:7;:5;:7::i;:::-;6882:15;;:4;:15;;;;:32;;;;;6907:7;:5;:7::i;:::-;6901:13;;:2;:13;;;;6882:32;6878:494;;;6943:13;;;;;;;;;;;6935:21;;:4;:21;;;:55;;;;;6974:15;;;;;;;;;;;6960:30;;:2;:30;;;;6935:55;6931:268;;;7029:12;;7019:6;:22;;7011:67;;;;;;;;;;;;:::i;:::-;;;;;;;;;7131:14;;7121:6;7105:13;7115:2;7105:9;:13::i;:::-;:22;;;;:::i;:::-;:40;;7097:86;;;;;;;;;;;;:::i;:::-;;;;;;;;;6931:268;7225:13;;;;;;;;;;;7219:19;;:2;:19;;;7215:146;;7293:14;;7283:6;7267:13;7277:2;7267:9;:13::i;:::-;:22;;;;:::i;:::-;:40;;7259:86;;;;;;;;;;;;:::i;:::-;;;;;;;;;7215:146;6878:494;7402:27;7422:6;7402:9;:15;7412:4;7402:15;;;;;;;;;;;;;;;;:19;;:27;;;;:::i;:::-;7384:9;:15;7394:4;7384:15;;;;;;;;;;;;;;;:45;;;;7456:25;7474:6;7456:9;:13;7466:2;7456:13;;;;;;;;;;;;;;;;:17;;:25;;;;:::i;:::-;7440:9;:13;7450:2;7440:13;;;;;;;;;;;;;;;:41;;;;7512:2;7497:26;;7506:4;7497:26;;;7516:6;7497:26;;;;;;:::i;:::-;;;;;;;;6562:969;;;:::o;2233:224::-;2353:7;2386:1;2381;:6;;2389:12;2373:29;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;2413:9;2429:1;2425;:5;;;;:::i;:::-;2413:17;;2448:1;2441:8;;;2233:224;;;;;:::o;2089:136::-;2147:7;2174:43;2178:1;2181;2174:43;;;;;;;;;;;;;;;;;:3;:43::i;:::-;2167:50;;2089:136;;;;:::o;1902:179::-;1960:7;1980:9;1996:1;1992;:5;;;;:::i;:::-;1980:17;;2021:1;2016;:6;;2008:46;;;;;;;;;;;;:::i;:::-;;;;;;;;;2072:1;2065:8;;;1902: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:246::-;368:1;378:113;392:6;389:1;386:13;378:113;;;477:1;472:3;468:11;462:18;458:1;453:3;449:11;442:39;414:2;411:1;407:10;402:15;;378:113;;;525:1;516:6;511:3;507:16;500:27;349:184;287:246;;;:::o;539:102::-;580:6;631:2;627:7;622:2;615:5;611:14;607:28;597:38;;539:102;;;:::o;647:377::-;735:3;763:39;796:5;763:39;:::i;:::-;818:71;882:6;877:3;818:71;:::i;:::-;811:78;;898:65;956:6;951:3;944:4;937:5;933:16;898:65;:::i;:::-;988:29;1010:6;988:29;:::i;:::-;983:3;979:39;972:46;;739:285;647:377;;;;:::o;1030:313::-;1143:4;1181:2;1170:9;1166:18;1158:26;;1230:9;1224:4;1220:20;1216:1;1205:9;1201:17;1194:47;1258:78;1331:4;1322:6;1258:78;:::i;:::-;1250:86;;1030:313;;;;:::o;1430:117::-;1539:1;1536;1529:12;1676:126;1713:7;1753:42;1746:5;1742:54;1731:65;;1676:126;;;:::o;1808:96::-;1845:7;1874:24;1892:5;1874:24;:::i;:::-;1863:35;;1808:96;;;:::o;1910:122::-;1983:24;2001:5;1983:24;:::i;:::-;1976:5;1973:35;1963:63;;2022:1;2019;2012:12;1963:63;1910:122;:::o;2038:139::-;2084:5;2122:6;2109:20;2100:29;;2138:33;2165:5;2138:33;:::i;:::-;2038:139;;;;:::o;2183:77::-;2220:7;2249:5;2238:16;;2183:77;;;:::o;2266:122::-;2339:24;2357:5;2339:24;:::i;:::-;2332:5;2329:35;2319:63;;2378:1;2375;2368:12;2319:63;2266:122;:::o;2394:139::-;2440:5;2478:6;2465:20;2456:29;;2494:33;2521:5;2494:33;:::i;:::-;2394:139;;;;:::o;2539:474::-;2607:6;2615;2664:2;2652:9;2643:7;2639:23;2635:32;2632:119;;;2670:79;;:::i;:::-;2632:119;2790:1;2815:53;2860:7;2851:6;2840:9;2836:22;2815:53;:::i;:::-;2805:63;;2761:117;2917:2;2943:53;2988:7;2979:6;2968:9;2964:22;2943:53;:::i;:::-;2933:63;;2888:118;2539:474;;;;;:::o;3019:90::-;3053:7;3096:5;3089:13;3082:21;3071:32;;3019:90;;;:::o;3115:109::-;3196:21;3211:5;3196:21;:::i;:::-;3191:3;3184:34;3115:109;;:::o;3230:210::-;3317:4;3355:2;3344:9;3340:18;3332:26;;3368:65;3430:1;3419:9;3415:17;3406:6;3368:65;:::i;:::-;3230:210;;;;:::o;3446:118::-;3533:24;3551:5;3533:24;:::i;:::-;3528:3;3521:37;3446:118;;:::o;3570:222::-;3663:4;3701:2;3690:9;3686:18;3678:26;;3714:71;3782:1;3771:9;3767:17;3758:6;3714:71;:::i;:::-;3570:222;;;;:::o;3798:619::-;3875:6;3883;3891;3940:2;3928:9;3919:7;3915:23;3911:32;3908:119;;;3946:79;;:::i;:::-;3908:119;4066:1;4091:53;4136:7;4127:6;4116:9;4112:22;4091:53;:::i;:::-;4081:63;;4037:117;4193:2;4219:53;4264:7;4255:6;4244:9;4240:22;4219:53;:::i;:::-;4209:63;;4164:118;4321:2;4347:53;4392:7;4383:6;4372:9;4368:22;4347:53;:::i;:::-;4337:63;;4292:118;3798:619;;;;;:::o;4423:86::-;4458:7;4498:4;4491:5;4487:16;4476:27;;4423:86;;;:::o;4515:112::-;4598:22;4614:5;4598:22;:::i;:::-;4593:3;4586:35;4515:112;;:::o;4633:214::-;4722:4;4760:2;4749:9;4745:18;4737:26;;4773:67;4837:1;4826:9;4822:17;4813:6;4773:67;:::i;:::-;4633:214;;;;:::o;4853:329::-;4912:6;4961:2;4949:9;4940:7;4936:23;4932:32;4929:119;;;4967:79;;:::i;:::-;4929:119;5087:1;5112:53;5157:7;5148:6;5137:9;5133:22;5112:53;:::i;:::-;5102:63;;5058:117;4853:329;;;;:::o;5188:118::-;5275:24;5293:5;5275:24;:::i;:::-;5270:3;5263:37;5188:118;;:::o;5312:222::-;5405:4;5443:2;5432:9;5428:18;5420:26;;5456:71;5524:1;5513:9;5509:17;5500:6;5456:71;:::i;:::-;5312:222;;;;:::o;5540:474::-;5608:6;5616;5665:2;5653:9;5644:7;5640:23;5636:32;5633:119;;;5671:79;;:::i;:::-;5633:119;5791:1;5816:53;5861:7;5852:6;5841:9;5837:22;5816:53;:::i;:::-;5806:63;;5762:117;5918:2;5944:53;5989:7;5980:6;5969:9;5965:22;5944:53;:::i;:::-;5934:63;;5889:118;5540:474;;;;;:::o;6020:180::-;6068:77;6065:1;6058:88;6165:4;6162:1;6155:15;6189:4;6186:1;6179:15;6206:102;6248:8;6295:5;6292:1;6288:13;6267:34;;6206:102;;;:::o;6314:848::-;6375:5;6382:4;6406:6;6397:15;;6430:5;6421:14;;6444:712;6465:1;6455:8;6452:15;6444:712;;;6560:4;6555:3;6551:14;6545:4;6542:24;6539:50;;;6569:18;;:::i;:::-;6539:50;6619:1;6609:8;6605:16;6602:451;;;7034:4;7027:5;7023:16;7014:25;;6602:451;7084:4;7078;7074:15;7066:23;;7114:32;7137:8;7114:32;:::i;:::-;7102:44;;6444:712;;;6314:848;;;;;;;:::o;7168:1073::-;7222:5;7413:8;7403:40;;7434:1;7425:10;;7436:5;;7403:40;7462:4;7452:36;;7479:1;7470:10;;7481:5;;7452:36;7548:4;7596:1;7591:27;;;;7632:1;7627:191;;;;7541:277;;7591:27;7609:1;7600:10;;7611:5;;;7627:191;7672:3;7662:8;7659:17;7656:43;;;7679:18;;:::i;:::-;7656:43;7728:8;7725:1;7721:16;7712:25;;7763:3;7756:5;7753:14;7750:40;;;7770:18;;:::i;:::-;7750:40;7803:5;;;7541:277;;7927:2;7917:8;7914:16;7908:3;7902:4;7899:13;7895:36;7877:2;7867:8;7864:16;7859:2;7853:4;7850:12;7846:35;7830:111;7827:246;;;7983:8;7977:4;7973:19;7964:28;;8018:3;8011:5;8008:14;8005:40;;;8025:18;;:::i;:::-;8005:40;8058:5;;7827:246;8098:42;8136:3;8126:8;8120:4;8117:1;8098:42;:::i;:::-;8083:57;;;;8172:4;8167:3;8163:14;8156:5;8153:25;8150:51;;;8181:18;;:::i;:::-;8150:51;8230:4;8223:5;8219:16;8210:25;;7168:1073;;;;;;:::o;8247:281::-;8305:5;8329:23;8347:4;8329:23;:::i;:::-;8321:31;;8373:25;8389:8;8373:25;:::i;:::-;8361:37;;8417:104;8454:66;8444:8;8438:4;8417:104;:::i;:::-;8408:113;;8247:281;;;;:::o;8534:410::-;8574:7;8597:20;8615:1;8597:20;:::i;:::-;8592:25;;8631:20;8649:1;8631:20;:::i;:::-;8626:25;;8686:1;8683;8679:9;8708:30;8726:11;8708:30;:::i;:::-;8697:41;;8887:1;8878:7;8874:15;8871:1;8868:22;8848:1;8841:9;8821:83;8798:139;;8917:18;;:::i;:::-;8798:139;8582:362;8534:410;;;;:::o;8950:182::-;9090:34;9086:1;9078:6;9074:14;9067:58;8950:182;:::o;9138:366::-;9280:3;9301:67;9365:2;9360:3;9301:67;:::i;:::-;9294:74;;9377:93;9466:3;9377:93;:::i;:::-;9495:2;9490:3;9486:12;9479:19;;9138:366;;;:::o;9510:419::-;9676:4;9714:2;9703:9;9699:18;9691:26;;9763:9;9757:4;9753:20;9749:1;9738:9;9734:17;9727:47;9791:131;9917:4;9791:131;:::i;:::-;9783:139;;9510:419;;;:::o;9935:180::-;10075:32;10071:1;10063:6;10059:14;10052:56;9935:180;:::o;10121:366::-;10263:3;10284:67;10348:2;10343:3;10284:67;:::i;:::-;10277:74;;10360:93;10449:3;10360:93;:::i;:::-;10478:2;10473:3;10469:12;10462:19;;10121:366;;;:::o;10493:419::-;10659:4;10697:2;10686:9;10682:18;10674:26;;10746:9;10740:4;10736:20;10732:1;10721:9;10717:17;10710:47;10774:131;10900:4;10774:131;:::i;:::-;10766:139;;10493:419;;;:::o;10918:143::-;10975:5;11006:6;11000:13;10991:22;;11022:33;11049:5;11022:33;:::i;:::-;10918:143;;;;:::o;11067:351::-;11137:6;11186:2;11174:9;11165:7;11161:23;11157:32;11154:119;;;11192:79;;:::i;:::-;11154:119;11312:1;11337:64;11393:7;11384:6;11373:9;11369:22;11337:64;:::i;:::-;11327:74;;11283:128;11067:351;;;;:::o;11424:332::-;11545:4;11583:2;11572:9;11568:18;11560:26;;11596:71;11664:1;11653:9;11649:17;11640:6;11596:71;:::i;:::-;11677:72;11745:2;11734:9;11730:18;11721:6;11677:72;:::i;:::-;11424:332;;;;;:::o;11762:85::-;11807:7;11836:5;11825:16;;11762:85;;;:::o;11853:60::-;11881:3;11902:5;11895:12;;11853:60;;;:::o;11919:158::-;11977:9;12010:61;12028:42;12037:32;12063:5;12037:32;:::i;:::-;12028:42;:::i;:::-;12010:61;:::i;:::-;11997:74;;11919:158;;;:::o;12083:147::-;12178:45;12217:5;12178:45;:::i;:::-;12173:3;12166:58;12083:147;;:::o;12236:807::-;12485:4;12523:3;12512:9;12508:19;12500:27;;12537:71;12605:1;12594:9;12590:17;12581:6;12537:71;:::i;:::-;12618:72;12686:2;12675:9;12671:18;12662:6;12618:72;:::i;:::-;12700:80;12776:2;12765:9;12761:18;12752:6;12700:80;:::i;:::-;12790;12866:2;12855:9;12851:18;12842:6;12790:80;:::i;:::-;12880:73;12948:3;12937:9;12933:19;12924:6;12880:73;:::i;:::-;12963;13031:3;13020:9;13016:19;13007:6;12963:73;:::i;:::-;12236:807;;;;;;;;;:::o;13049:143::-;13106:5;13137:6;13131:13;13122:22;;13153:33;13180:5;13153:33;:::i;:::-;13049:143;;;;:::o;13198:663::-;13286:6;13294;13302;13351:2;13339:9;13330:7;13326:23;13322:32;13319:119;;;13357:79;;:::i;:::-;13319:119;13477:1;13502:64;13558:7;13549:6;13538:9;13534:22;13502:64;:::i;:::-;13492:74;;13448:128;13615:2;13641:64;13697:7;13688:6;13677:9;13673:22;13641:64;:::i;:::-;13631:74;;13586:129;13754:2;13780:64;13836:7;13827:6;13816:9;13812:22;13780:64;:::i;:::-;13770:74;;13725:129;13198:663;;;;;:::o;13867:332::-;13988:4;14026:2;14015:9;14011:18;14003:26;;14039:71;14107:1;14096:9;14092:17;14083:6;14039:71;:::i;:::-;14120:72;14188:2;14177:9;14173:18;14164:6;14120:72;:::i;:::-;13867:332;;;;;:::o;14205:116::-;14275:21;14290:5;14275:21;:::i;:::-;14268:5;14265:32;14255:60;;14311:1;14308;14301:12;14255:60;14205:116;:::o;14327:137::-;14381:5;14412:6;14406:13;14397:22;;14428:30;14452:5;14428:30;:::i;:::-;14327:137;;;;:::o;14470:345::-;14537:6;14586:2;14574:9;14565:7;14561:23;14557:32;14554:119;;;14592:79;;:::i;:::-;14554:119;14712:1;14737:61;14790:7;14781:6;14770:9;14766:22;14737:61;:::i;:::-;14727:71;;14683:125;14470:345;;;;:::o;14821:351::-;14891:6;14940:2;14928:9;14919:7;14915:23;14911:32;14908:119;;;14946:79;;:::i;:::-;14908:119;15066:1;15091:64;15147:7;15138:6;15127:9;15123:22;15091:64;:::i;:::-;15081:74;;15037:128;14821:351;;;;:::o;15178:178::-;15318:30;15314:1;15306:6;15302:14;15295:54;15178:178;:::o;15362:366::-;15504:3;15525:67;15589:2;15584:3;15525:67;:::i;:::-;15518:74;;15601:93;15690:3;15601:93;:::i;:::-;15719:2;15714:3;15710:12;15703:19;;15362:366;;;:::o;15734:419::-;15900:4;15938:2;15927:9;15923:18;15915:26;;15987:9;15981:4;15977:20;15973:1;15962:9;15958:17;15951:47;16015:131;16141:4;16015:131;:::i;:::-;16007:139;;15734:419;;;:::o;16159:223::-;16299:34;16295:1;16287:6;16283:14;16276:58;16368:6;16363:2;16355:6;16351:15;16344:31;16159:223;:::o;16388:366::-;16530:3;16551:67;16615:2;16610:3;16551:67;:::i;:::-;16544:74;;16627:93;16716:3;16627:93;:::i;:::-;16745:2;16740:3;16736:12;16729:19;;16388:366;;;:::o;16760:419::-;16926:4;16964:2;16953:9;16949:18;16941:26;;17013:9;17007:4;17003:20;16999:1;16988:9;16984:17;16977:47;17041:131;17167:4;17041:131;:::i;:::-;17033:139;;16760:419;;;:::o;17185:221::-;17325:34;17321:1;17313:6;17309:14;17302:58;17394:4;17389:2;17381:6;17377:15;17370:29;17185:221;:::o;17412:366::-;17554:3;17575:67;17639:2;17634:3;17575:67;:::i;:::-;17568:74;;17651:93;17740:3;17651:93;:::i;:::-;17769:2;17764:3;17760:12;17753:19;;17412:366;;;:::o;17784:419::-;17950:4;17988:2;17977:9;17973:18;17965:26;;18037:9;18031:4;18027:20;18023:1;18012:9;18008:17;18001:47;18065:131;18191:4;18065:131;:::i;:::-;18057:139;;17784:419;;;:::o;18209:224::-;18349:34;18345:1;18337:6;18333:14;18326:58;18418:7;18413:2;18405:6;18401:15;18394:32;18209:224;:::o;18439:366::-;18581:3;18602:67;18666:2;18661:3;18602:67;:::i;:::-;18595:74;;18678:93;18767:3;18678:93;:::i;:::-;18796:2;18791:3;18787:12;18780:19;;18439:366;;;:::o;18811:419::-;18977:4;19015:2;19004:9;19000:18;18992:26;;19064:9;19058:4;19054:20;19050:1;19039:9;19035:17;19028:47;19092:131;19218:4;19092:131;:::i;:::-;19084:139;;18811:419;;;:::o;19236:222::-;19376:34;19372:1;19364:6;19360:14;19353:58;19445:5;19440:2;19432:6;19428:15;19421:30;19236:222;:::o;19464:366::-;19606:3;19627:67;19691:2;19686:3;19627:67;:::i;:::-;19620:74;;19703:93;19792:3;19703:93;:::i;:::-;19821:2;19816:3;19812:12;19805:19;;19464:366;;;:::o;19836:419::-;20002:4;20040:2;20029:9;20025:18;20017:26;;20089:9;20083:4;20079:20;20075:1;20064:9;20060:17;20053:47;20117:131;20243:4;20117:131;:::i;:::-;20109:139;;19836:419;;;:::o;20261:235::-;20401:34;20397:1;20389:6;20385:14;20378:58;20470:18;20465:2;20457:6;20453:15;20446:43;20261:235;:::o;20502:366::-;20644:3;20665:67;20729:2;20724:3;20665:67;:::i;:::-;20658:74;;20741:93;20830:3;20741:93;:::i;:::-;20859:2;20854:3;20850:12;20843:19;;20502:366;;;:::o;20874:419::-;21040:4;21078:2;21067:9;21063:18;21055:26;;21127:9;21121:4;21117:20;21113:1;21102:9;21098:17;21091:47;21155:131;21281:4;21155:131;:::i;:::-;21147:139;;20874:419;;;:::o;21299:182::-;21439:34;21435:1;21427:6;21423:14;21416:58;21299:182;:::o;21487:366::-;21629:3;21650:67;21714:2;21709:3;21650:67;:::i;:::-;21643:74;;21726:93;21815:3;21726:93;:::i;:::-;21844:2;21839:3;21835:12;21828:19;;21487:366;;;:::o;21859:419::-;22025:4;22063:2;22052:9;22048:18;22040:26;;22112:9;22106:4;22102:20;22098:1;22087:9;22083:17;22076:47;22140:131;22266:4;22140:131;:::i;:::-;22132:139;;21859:419;;;:::o;22284:191::-;22324:3;22343:20;22361:1;22343:20;:::i;:::-;22338:25;;22377:20;22395:1;22377:20;:::i;:::-;22372:25;;22420:1;22417;22413:9;22406:16;;22441:3;22438:1;22435:10;22432:36;;;22448:18;;:::i;:::-;22432:36;22284:191;;;;:::o;22481:220::-;22621:34;22617:1;22609:6;22605:14;22598:58;22690:3;22685:2;22677:6;22673:15;22666:28;22481:220;:::o;22707:366::-;22849:3;22870:67;22934:2;22929:3;22870:67;:::i;:::-;22863:74;;22946:93;23035:3;22946:93;:::i;:::-;23064:2;23059:3;23055:12;23048:19;;22707:366;;;:::o;23079:419::-;23245:4;23283:2;23272:9;23268:18;23260:26;;23332:9;23326:4;23322:20;23318:1;23307:9;23303:17;23296:47;23360:131;23486:4;23360:131;:::i;:::-;23352:139;;23079:419;;;:::o;23504:194::-;23544:4;23564:20;23582:1;23564:20;:::i;:::-;23559:25;;23598:20;23616:1;23598:20;:::i;:::-;23593:25;;23642:1;23639;23635:9;23627:17;;23666:1;23660:4;23657:11;23654:37;;;23671:18;;:::i;:::-;23654:37;23504:194;;;;:::o;23704:177::-;23844:29;23840:1;23832:6;23828:14;23821:53;23704:177;:::o;23887:366::-;24029:3;24050:67;24114:2;24109:3;24050:67;:::i;:::-;24043:74;;24126:93;24215:3;24126:93;:::i;:::-;24244:2;24239:3;24235:12;24228:19;;23887:366;;;:::o;24259:419::-;24425:4;24463:2;24452:9;24448:18;24440:26;;24512:9;24506:4;24502:20;24498:1;24487:9;24483:17;24476:47;24540:131;24666:4;24540:131;:::i;:::-;24532:139;;24259:419;;;:::o

Swarm Source

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