ETH Price: $3,410.41 (+2.71%)

Token

OMEGA (Ω)
 

Overview

Max Total Supply

1,000,000,000 Ω

Holders

250

Market

Onchain Market Cap

$0.00

Circulating Supply Market Cap

-

Other Info

Token Contract (WITH 9 Decimals)

Filtered by Token Holder
sneakingninjapants.eth
Balance
0.000000001 Ω

Value
$0.00
0x0E642E32974470085e362FE76DE5C43330632bdb
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:
Omega

Compiler Version
v0.8.19+commit.7dd6d404

Optimization Enabled:
No with 200 runs

Other Settings:
default evmVersion, MIT license

Contract Source Code (Solidity)

/**
 *Submitted for verification at Etherscan.io on 2023-07-02
*/

// SPDX-License-Identifier: MIT
pragma solidity ^0.8.19;
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 ERC20 {
    function totalSupply() external view returns (uint256);

    function decimals() external view returns (uint8);

    function symbol() external view returns (string memory);

    function name() external view returns (string memory);

    function getOwner() external view returns (address);

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

abstract contract Ownable {
    address internal owner;

    constructor(address _owner) {
        owner = _owner;
    }

    modifier onlyOwner() {
        require(isOwner(msg.sender), "!OWNER");
        _;
    }

    function isOwner(address account) public view returns (bool) {
        return account == owner;
    }

    function renounceOwnership() public onlyOwner {
        owner = address(0);
        emit OwnershipTransferred(address(0));
    }

    event OwnershipTransferred(address owner);
}

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

interface IDEXRouter {
    function factory() external pure returns (address);

    function WETH() external pure returns (address);

    function addLiquidity(
        address tokenA,
        address tokenB,
        uint256 amountADesired,
        uint256 amountBDesired,
        uint256 amountAMin,
        uint256 amountBMin,
        address to,
        uint256 deadline
    )
        external
        returns (
            uint256 amountA,
            uint256 amountB,
            uint256 liquidity
        );

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

    function swapExactTokensForTokensSupportingFeeOnTransferTokens(
        uint256 amountIn,
        uint256 amountOutMin,
        address[] calldata path,
        address to,
        uint256 deadline
    ) external;

    function swapExactETHForTokensSupportingFeeOnTransferTokens(
        uint256 amountOutMin,
        address[] calldata path,
        address to,
        uint256 deadline
    ) external payable;

    function swapExactTokensForETHSupportingFeeOnTransferTokens(
        uint256 amountIn,
        uint256 amountOutMin,
        address[] calldata path,
        address to,
        uint256 deadline
    ) external;
}
contract Omega is ERC20, Ownable {
    using SafeMath for uint256;
    address routerAdress = 0x7a250d5630B4cF539739dF2C5dAcb4c659F2488D;
    address DEAD = 0x000000000000000000000000000000000000dEaD;

    string constant _name = "OMEGA";
    string constant _symbol = unicode"Ω";
    uint8 constant _decimals = 9;
    uint256 _totalSupply = 1_000_000_000 * (10**_decimals);
    uint256 public _maxWalletAmount = 50_000_000 * (10**_decimals);
    mapping(address => uint256) _balances;
    mapping(address => mapping(address => uint256)) _allowances;
    mapping(address => bool) isFeeExempt;
    mapping(address => bool) isTxLimitExempt;
    uint256 OmegaFee = 2;
    address public OmegaTeam = msg.sender;
    IDEXRouter public router;
    address public pair;
    bool public swapEnabled = true;
    uint256 public swapThreshold = (_totalSupply / 10000) * 50;
    bool inSwap;
    modifier swapping() {
        inSwap = true;
        _;
        inSwap = false;
    }

    constructor() Ownable(msg.sender) {
        router = IDEXRouter(routerAdress);
        pair = IDEXFactory(router.factory()).createPair(
            router.WETH(),
            address(this)
        );
        _allowances[address(this)][address(router)] = type(uint256).max;
        address _owner = owner;
        isFeeExempt[_owner] = true;
        isTxLimitExempt[_owner] = true;
        _balances[_owner] = _totalSupply;
        emit Transfer(address(0), _owner, _totalSupply);
    }

    receive() external payable {}

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

    function decimals() external pure override returns (uint8) {
        return _decimals;
    }

    function symbol() external pure override returns (string memory) {
        return _symbol;
    }

    function name() external pure override returns (string memory) {
        return _name;
    }

    function getOwner() external view override returns (address) {
        return owner;
    }

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

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

    function approve(address spender, uint256 amount)
        public
        override
        returns (bool)
    {
        _allowances[msg.sender][spender] = amount;
        emit Approval(msg.sender, spender, amount);
        return true;
    }

    function transfer(address recipient, uint256 amount)
        external
        override
        returns (bool)
    {
        return _transferFrom(msg.sender, recipient, amount);
    }

    function transferFrom(
        address sender,
        address recipient,
        uint256 amount
    ) external override returns (bool) {
        if (_allowances[sender][msg.sender] != type(uint256).max) {
            _allowances[sender][msg.sender] = _allowances[sender][msg.sender]
                .sub(amount, "Insufficient Allowance");
        }

        return _transferFrom(sender, recipient, amount);
    }

    function _transferFrom(
        address sender,
        address recipient,
        uint256 amount
    ) internal returns (bool) {
        if (inSwap) {
            return _basicTransfer(sender, recipient, amount);
        }

        if (recipient != pair && recipient != DEAD) {
            require(
                isTxLimitExempt[recipient] ||
                    _balances[recipient] + amount <= _maxWalletAmount,
                "Transfer amount exceeds the bag size."
            );
        }

        if (shouldSwapBack()) {
            swapBack();
        }

        _balances[sender] = _balances[sender].sub(
            amount,
            "Insufficient Balance"
        );

        uint256 amountReceived = shouldTakeFee(sender)
            ? takeFee(sender, amount)
            : amount;
        _balances[recipient] = _balances[recipient].add(amountReceived);

        emit Transfer(sender, recipient, amountReceived);
        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 shouldTakeFee(address sender) internal view returns (bool) {
        return !isFeeExempt[sender];
    }

    function takeFee(address sender, uint256 amount)
        internal
        returns (uint256)
    {
        uint256 feeAmount = amount.mul(OmegaFee).div(100);
        _balances[address(this)] = _balances[address(this)].add(feeAmount);
        emit Transfer(sender, address(this), feeAmount);
        return amount.sub(feeAmount);
    }

    function shouldSwapBack() internal view returns (bool) {
        return
            msg.sender != pair &&
            !inSwap &&
            swapEnabled &&
            _balances[address(this)] >= swapThreshold;
    }

    function swapBack() internal swapping {
        uint256 contractTokenBalance = swapThreshold;
        uint256 amountToSwap = contractTokenBalance;

        address[] memory path = new address[](2);
        path[0] = address(this);
        path[1] = router.WETH();

        router.swapExactTokensForETHSupportingFeeOnTransferTokens(
            amountToSwap,
            0,
            path,
            address(this),
            block.timestamp
        );

        uint256 amountETHMarketing = address(this).balance;

        (
            bool MarketingSuccess, /* bytes memory data */

        ) = payable(OmegaTeam).call{value: amountETHMarketing, gas: 30000}(
                ""
            );
        require(MarketingSuccess, "receiver rejected ETH transfer");
    }
}

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":false,"internalType":"address","name":"owner","type":"address"}],"name":"OwnershipTransferred","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"from","type":"address"},{"indexed":true,"internalType":"address","name":"to","type":"address"},{"indexed":false,"internalType":"uint256","name":"value","type":"uint256"}],"name":"Transfer","type":"event"},{"inputs":[],"name":"OmegaTeam","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"_maxWalletAmount","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"holder","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":"decimals","outputs":[{"internalType":"uint8","name":"","type":"uint8"}],"stateMutability":"pure","type":"function"},{"inputs":[],"name":"getOwner","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"account","type":"address"}],"name":"isOwner","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"name","outputs":[{"internalType":"string","name":"","type":"string"}],"stateMutability":"pure","type":"function"},{"inputs":[],"name":"pair","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"renounceOwnership","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"router","outputs":[{"internalType":"contract IDEXRouter","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"swapEnabled","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"swapThreshold","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"symbol","outputs":[{"internalType":"string","name":"","type":"string"}],"stateMutability":"pure","type":"function"},{"inputs":[],"name":"totalSupply","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"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"}]

6080604052737a250d5630b4cf539739df2c5dacb4c659f2488d600160006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555061dead600260006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055506009600a620000ac9190620007ee565b633b9aca00620000bd91906200083f565b6003556009600a620000d09190620007ee565b6302faf080620000e191906200083f565b600455600260095533600a60006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055506001600c60146101000a81548160ff0219169083151502179055506032612710600354620001599190620008b9565b6200016591906200083f565b600d553480156200017557600080fd5b5033806000806101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555050600160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16600b60006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550600b60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663c45a01556040518163ffffffff1660e01b8152600401602060405180830381865afa15801562000289573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190620002af91906200095b565b73ffffffffffffffffffffffffffffffffffffffff1663c9c65396600b60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663ad5c46486040518163ffffffff1660e01b8152600401602060405180830381865afa15801562000338573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906200035e91906200095b565b306040518363ffffffff1660e01b81526004016200037e9291906200099e565b6020604051808303816000875af11580156200039e573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190620003c491906200095b565b600c60006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055507fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff600660003073ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206000600b60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000208190555060008060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1690506001600760008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff0219169083151502179055506001600860008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff021916908315150217905550600354600560008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508073ffffffffffffffffffffffffffffffffffffffff16600073ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef600354604051620006459190620009dc565b60405180910390a350620009f9565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b60008160011c9050919050565b6000808291508390505b6001851115620006e257808604811115620006ba57620006b962000654565b5b6001851615620006ca5780820291505b8081029050620006da8562000683565b94506200069a565b94509492505050565b600082620006fd5760019050620007d0565b816200070d5760009050620007d0565b8160018114620007265760028114620007315762000767565b6001915050620007d0565b60ff84111562000746576200074562000654565b5b8360020a91508482111562000760576200075f62000654565b5b50620007d0565b5060208310610133831016604e8410600b8410161715620007a15782820a9050838111156200079b576200079a62000654565b5b620007d0565b620007b0848484600162000690565b92509050818404811115620007ca57620007c962000654565b5b81810290505b9392505050565b6000819050919050565b600060ff82169050919050565b6000620007fb82620007d7565b91506200080883620007e1565b9250620008377fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff8484620006eb565b905092915050565b60006200084c82620007d7565b91506200085983620007d7565b92508282026200086981620007d7565b9150828204841483151762000883576200088262000654565b5b5092915050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601260045260246000fd5b6000620008c682620007d7565b9150620008d383620007d7565b925082620008e657620008e56200088a565b5b828204905092915050565b600080fd5b600073ffffffffffffffffffffffffffffffffffffffff82169050919050565b60006200092382620008f6565b9050919050565b620009358162000916565b81146200094157600080fd5b50565b60008151905062000955816200092a565b92915050565b600060208284031215620009745762000973620008f1565b5b6000620009848482850162000944565b91505092915050565b620009988162000916565b82525050565b6000604082019050620009b560008301856200098d565b620009c460208301846200098d565b9392505050565b620009d681620007d7565b82525050565b6000602082019050620009f36000830184620009cb565b92915050565b6121ba8062000a096000396000f3fe60806040526004361061010d5760003560e01c806370a0823111610095578063a8aa1b3111610064578063a8aa1b311461037c578063a9059cbb146103a7578063b998a413146103e4578063dd62ed3e1461040f578063f887ea401461044c57610114565b806370a08231146102d2578063715018a61461030f578063893d20e81461032657806395d89b411461035157610114565b806323b872dd116100dc57806323b872dd146101d75780632f54bf6e14610214578063313ce567146102515780636c0a24eb1461027c5780636ddd1713146102a757610114565b80630445b6671461011957806306fdde0314610144578063095ea7b31461016f57806318160ddd146101ac57610114565b3661011457005b600080fd5b34801561012557600080fd5b5061012e610477565b60405161013b919061183d565b60405180910390f35b34801561015057600080fd5b5061015961047d565b60405161016691906118e8565b60405180910390f35b34801561017b57600080fd5b5061019660048036038101906101919190611999565b6104ba565b6040516101a391906119f4565b60405180910390f35b3480156101b857600080fd5b506101c16105ac565b6040516101ce919061183d565b60405180910390f35b3480156101e357600080fd5b506101fe60048036038101906101f99190611a0f565b6105b6565b60405161020b91906119f4565b60405180910390f35b34801561022057600080fd5b5061023b60048036038101906102369190611a62565b6107b6565b60405161024891906119f4565b60405180910390f35b34801561025d57600080fd5b5061026661080f565b6040516102739190611aab565b60405180910390f35b34801561028857600080fd5b50610291610818565b60405161029e919061183d565b60405180910390f35b3480156102b357600080fd5b506102bc61081e565b6040516102c991906119f4565b60405180910390f35b3480156102de57600080fd5b506102f960048036038101906102f49190611a62565b610831565b604051610306919061183d565b60405180910390f35b34801561031b57600080fd5b5061032461087a565b005b34801561033257600080fd5b5061033b61093d565b6040516103489190611ad5565b60405180910390f35b34801561035d57600080fd5b50610366610966565b60405161037391906118e8565b60405180910390f35b34801561038857600080fd5b506103916109a3565b60405161039e9190611ad5565b60405180910390f35b3480156103b357600080fd5b506103ce60048036038101906103c99190611999565b6109c9565b6040516103db91906119f4565b60405180910390f35b3480156103f057600080fd5b506103f96109de565b6040516104069190611ad5565b60405180910390f35b34801561041b57600080fd5b5061043660048036038101906104319190611af0565b610a04565b604051610443919061183d565b60405180910390f35b34801561045857600080fd5b50610461610a8b565b60405161046e9190611b8f565b60405180910390f35b600d5481565b60606040518060400160405280600581526020017f4f4d454741000000000000000000000000000000000000000000000000000000815250905090565b600081600660003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508273ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b9258460405161059a919061183d565b60405180910390a36001905092915050565b6000600354905090565b60007fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff600660008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054146107a257610721826040518060400160405280601681526020017f496e73756666696369656e7420416c6c6f77616e636500000000000000000000815250600660008873ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054610ab19092919063ffffffff16565b600660008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055505b6107ad848484610b15565b90509392505050565b60008060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff16149050919050565b60006009905090565b60045481565b600c60149054906101000a900460ff1681565b6000600560008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020549050919050565b610883336107b6565b6108c2576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016108b990611bf6565b60405180910390fd5b60008060006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055507f04dba622d284ed0014ee4b9a6a68386be1a4c08a4913ae272de89199cc68616360006040516109339190611ad5565b60405180910390a1565b60008060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16905090565b60606040518060400160405280600281526020017fcea9000000000000000000000000000000000000000000000000000000000000815250905090565b600c60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b60006109d6338484610b15565b905092915050565b600a60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b6000600660008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054905092915050565b600b60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b6000838311158290610af9576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610af091906118e8565b60405180910390fd5b5060008385610b089190611c45565b9050809150509392505050565b6000600e60009054906101000a900460ff1615610b3e57610b37848484610ede565b9050610ed7565b600c60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1614158015610bea5750600260009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1614155b15610cd357600860008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff1680610c93575060045482600560008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054610c909190611c79565b11155b610cd2576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610cc990611d1f565b60405180910390fd5b5b610cdb6110b1565b15610ce957610ce8611188565b5b610d72826040518060400160405280601481526020017f496e73756666696369656e742042616c616e6365000000000000000000000000815250600560008873ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054610ab19092919063ffffffff16565b600560008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055506000610dc0856114bb565b610dca5782610dd5565b610dd48584611512565b5b9050610e2981600560008773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205461165590919063ffffffff16565b600560008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508373ffffffffffffffffffffffffffffffffffffffff168573ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef83604051610ec9919061183d565b60405180910390a360019150505b9392505050565b6000610f69826040518060400160405280601481526020017f496e73756666696369656e742042616c616e6365000000000000000000000000815250600560008873ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054610ab19092919063ffffffff16565b600560008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002081905550610ffe82600560008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205461165590919063ffffffff16565b600560008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508273ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef8460405161109e919061183d565b60405180910390a3600190509392505050565b6000600c60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff161415801561111e5750600e60009054906101000a900460ff16155b80156111365750600c60149054906101000a900460ff165b80156111835750600d54600560003073ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205410155b905090565b6001600e60006101000a81548160ff0219169083151502179055506000600d54905060008190506000600267ffffffffffffffff8111156111cc576111cb611d3f565b5b6040519080825280602002602001820160405280156111fa5781602001602082028036833780820191505090505b509050308160008151811061121257611211611d6e565b5b602002602001019073ffffffffffffffffffffffffffffffffffffffff16908173ffffffffffffffffffffffffffffffffffffffff1681525050600b60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663ad5c46486040518163ffffffff1660e01b8152600401602060405180830381865afa1580156112b9573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906112dd9190611db2565b816001815181106112f1576112f0611d6e565b5b602002602001019073ffffffffffffffffffffffffffffffffffffffff16908173ffffffffffffffffffffffffffffffffffffffff1681525050600b60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663791ac9478360008430426040518663ffffffff1660e01b815260040161138f959493929190611ed8565b600060405180830381600087803b1580156113a957600080fd5b505af11580156113bd573d6000803e3d6000fd5b5050505060004790506000600a60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16826175309060405161141290611f63565b600060405180830381858888f193505050503d8060008114611450576040519150601f19603f3d011682016040523d82523d6000602084013e611455565b606091505b5050905080611499576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161149090611fc4565b60405180910390fd5b50505050506000600e60006101000a81548160ff021916908315150217905550565b6000600760008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff16159050919050565b60008061153d606461152f600954866116b390919063ffffffff16565b61172d90919063ffffffff16565b905061159181600560003073ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205461165590919063ffffffff16565b600560003073ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055503073ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef83604051611631919061183d565b60405180910390a361164c818461177790919063ffffffff16565b91505092915050565b60008082846116649190611c79565b9050838110156116a9576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016116a090612030565b60405180910390fd5b8091505092915050565b60008083036116c55760009050611727565b600082846116d39190612050565b90508284826116e291906120c1565b14611722576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161171990612164565b60405180910390fd5b809150505b92915050565b600061176f83836040518060400160405280601a81526020017f536166654d6174683a206469766973696f6e206279207a65726f0000000000008152506117c1565b905092915050565b60006117b983836040518060400160405280601e81526020017f536166654d6174683a207375627472616374696f6e206f766572666c6f770000815250610ab1565b905092915050565b60008083118290611808576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016117ff91906118e8565b60405180910390fd5b506000838561181791906120c1565b9050809150509392505050565b6000819050919050565b61183781611824565b82525050565b6000602082019050611852600083018461182e565b92915050565b600081519050919050565b600082825260208201905092915050565b60005b83811015611892578082015181840152602081019050611877565b60008484015250505050565b6000601f19601f8301169050919050565b60006118ba82611858565b6118c48185611863565b93506118d4818560208601611874565b6118dd8161189e565b840191505092915050565b6000602082019050818103600083015261190281846118af565b905092915050565b600080fd5b600073ffffffffffffffffffffffffffffffffffffffff82169050919050565b600061193a8261190f565b9050919050565b61194a8161192f565b811461195557600080fd5b50565b60008135905061196781611941565b92915050565b61197681611824565b811461198157600080fd5b50565b6000813590506119938161196d565b92915050565b600080604083850312156119b0576119af61190a565b5b60006119be85828601611958565b92505060206119cf85828601611984565b9150509250929050565b60008115159050919050565b6119ee816119d9565b82525050565b6000602082019050611a0960008301846119e5565b92915050565b600080600060608486031215611a2857611a2761190a565b5b6000611a3686828701611958565b9350506020611a4786828701611958565b9250506040611a5886828701611984565b9150509250925092565b600060208284031215611a7857611a7761190a565b5b6000611a8684828501611958565b91505092915050565b600060ff82169050919050565b611aa581611a8f565b82525050565b6000602082019050611ac06000830184611a9c565b92915050565b611acf8161192f565b82525050565b6000602082019050611aea6000830184611ac6565b92915050565b60008060408385031215611b0757611b0661190a565b5b6000611b1585828601611958565b9250506020611b2685828601611958565b9150509250929050565b6000819050919050565b6000611b55611b50611b4b8461190f565b611b30565b61190f565b9050919050565b6000611b6782611b3a565b9050919050565b6000611b7982611b5c565b9050919050565b611b8981611b6e565b82525050565b6000602082019050611ba46000830184611b80565b92915050565b7f214f574e45520000000000000000000000000000000000000000000000000000600082015250565b6000611be0600683611863565b9150611beb82611baa565b602082019050919050565b60006020820190508181036000830152611c0f81611bd3565b9050919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b6000611c5082611824565b9150611c5b83611824565b9250828203905081811115611c7357611c72611c16565b5b92915050565b6000611c8482611824565b9150611c8f83611824565b9250828201905080821115611ca757611ca6611c16565b5b92915050565b7f5472616e7366657220616d6f756e74206578636565647320746865206261672060008201527f73697a652e000000000000000000000000000000000000000000000000000000602082015250565b6000611d09602583611863565b9150611d1482611cad565b604082019050919050565b60006020820190508181036000830152611d3881611cfc565b9050919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b600081519050611dac81611941565b92915050565b600060208284031215611dc857611dc761190a565b5b6000611dd684828501611d9d565b91505092915050565b6000819050919050565b6000611e04611dff611dfa84611ddf565b611b30565b611824565b9050919050565b611e1481611de9565b82525050565b600081519050919050565b600082825260208201905092915050565b6000819050602082019050919050565b611e4f8161192f565b82525050565b6000611e618383611e46565b60208301905092915050565b6000602082019050919050565b6000611e8582611e1a565b611e8f8185611e25565b9350611e9a83611e36565b8060005b83811015611ecb578151611eb28882611e55565b9750611ebd83611e6d565b925050600181019050611e9e565b5085935050505092915050565b600060a082019050611eed600083018861182e565b611efa6020830187611e0b565b8181036040830152611f0c8186611e7a565b9050611f1b6060830185611ac6565b611f28608083018461182e565b9695505050505050565b600081905092915050565b50565b6000611f4d600083611f32565b9150611f5882611f3d565b600082019050919050565b6000611f6e82611f40565b9150819050919050565b7f72656365697665722072656a656374656420455448207472616e736665720000600082015250565b6000611fae601e83611863565b9150611fb982611f78565b602082019050919050565b60006020820190508181036000830152611fdd81611fa1565b9050919050565b7f536166654d6174683a206164646974696f6e206f766572666c6f770000000000600082015250565b600061201a601b83611863565b915061202582611fe4565b602082019050919050565b600060208201905081810360008301526120498161200d565b9050919050565b600061205b82611824565b915061206683611824565b925082820261207481611824565b9150828204841483151761208b5761208a611c16565b5b5092915050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601260045260246000fd5b60006120cc82611824565b91506120d783611824565b9250826120e7576120e6612092565b5b828204905092915050565b7f536166654d6174683a206d756c7469706c69636174696f6e206f766572666c6f60008201527f7700000000000000000000000000000000000000000000000000000000000000602082015250565b600061214e602183611863565b9150612159826120f2565b604082019050919050565b6000602082019050818103600083015261217d81612141565b905091905056fea2646970667358221220842e1defe9d752d8de658c1c4d1cb5fcc931b818614ba056e1f04218474bad1464736f6c63430008130033

Deployed Bytecode

0x60806040526004361061010d5760003560e01c806370a0823111610095578063a8aa1b3111610064578063a8aa1b311461037c578063a9059cbb146103a7578063b998a413146103e4578063dd62ed3e1461040f578063f887ea401461044c57610114565b806370a08231146102d2578063715018a61461030f578063893d20e81461032657806395d89b411461035157610114565b806323b872dd116100dc57806323b872dd146101d75780632f54bf6e14610214578063313ce567146102515780636c0a24eb1461027c5780636ddd1713146102a757610114565b80630445b6671461011957806306fdde0314610144578063095ea7b31461016f57806318160ddd146101ac57610114565b3661011457005b600080fd5b34801561012557600080fd5b5061012e610477565b60405161013b919061183d565b60405180910390f35b34801561015057600080fd5b5061015961047d565b60405161016691906118e8565b60405180910390f35b34801561017b57600080fd5b5061019660048036038101906101919190611999565b6104ba565b6040516101a391906119f4565b60405180910390f35b3480156101b857600080fd5b506101c16105ac565b6040516101ce919061183d565b60405180910390f35b3480156101e357600080fd5b506101fe60048036038101906101f99190611a0f565b6105b6565b60405161020b91906119f4565b60405180910390f35b34801561022057600080fd5b5061023b60048036038101906102369190611a62565b6107b6565b60405161024891906119f4565b60405180910390f35b34801561025d57600080fd5b5061026661080f565b6040516102739190611aab565b60405180910390f35b34801561028857600080fd5b50610291610818565b60405161029e919061183d565b60405180910390f35b3480156102b357600080fd5b506102bc61081e565b6040516102c991906119f4565b60405180910390f35b3480156102de57600080fd5b506102f960048036038101906102f49190611a62565b610831565b604051610306919061183d565b60405180910390f35b34801561031b57600080fd5b5061032461087a565b005b34801561033257600080fd5b5061033b61093d565b6040516103489190611ad5565b60405180910390f35b34801561035d57600080fd5b50610366610966565b60405161037391906118e8565b60405180910390f35b34801561038857600080fd5b506103916109a3565b60405161039e9190611ad5565b60405180910390f35b3480156103b357600080fd5b506103ce60048036038101906103c99190611999565b6109c9565b6040516103db91906119f4565b60405180910390f35b3480156103f057600080fd5b506103f96109de565b6040516104069190611ad5565b60405180910390f35b34801561041b57600080fd5b5061043660048036038101906104319190611af0565b610a04565b604051610443919061183d565b60405180910390f35b34801561045857600080fd5b50610461610a8b565b60405161046e9190611b8f565b60405180910390f35b600d5481565b60606040518060400160405280600581526020017f4f4d454741000000000000000000000000000000000000000000000000000000815250905090565b600081600660003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508273ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b9258460405161059a919061183d565b60405180910390a36001905092915050565b6000600354905090565b60007fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff600660008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054146107a257610721826040518060400160405280601681526020017f496e73756666696369656e7420416c6c6f77616e636500000000000000000000815250600660008873ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054610ab19092919063ffffffff16565b600660008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055505b6107ad848484610b15565b90509392505050565b60008060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff16149050919050565b60006009905090565b60045481565b600c60149054906101000a900460ff1681565b6000600560008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020549050919050565b610883336107b6565b6108c2576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016108b990611bf6565b60405180910390fd5b60008060006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055507f04dba622d284ed0014ee4b9a6a68386be1a4c08a4913ae272de89199cc68616360006040516109339190611ad5565b60405180910390a1565b60008060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16905090565b60606040518060400160405280600281526020017fcea9000000000000000000000000000000000000000000000000000000000000815250905090565b600c60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b60006109d6338484610b15565b905092915050565b600a60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b6000600660008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054905092915050565b600b60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b6000838311158290610af9576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610af091906118e8565b60405180910390fd5b5060008385610b089190611c45565b9050809150509392505050565b6000600e60009054906101000a900460ff1615610b3e57610b37848484610ede565b9050610ed7565b600c60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1614158015610bea5750600260009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1614155b15610cd357600860008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff1680610c93575060045482600560008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054610c909190611c79565b11155b610cd2576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610cc990611d1f565b60405180910390fd5b5b610cdb6110b1565b15610ce957610ce8611188565b5b610d72826040518060400160405280601481526020017f496e73756666696369656e742042616c616e6365000000000000000000000000815250600560008873ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054610ab19092919063ffffffff16565b600560008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055506000610dc0856114bb565b610dca5782610dd5565b610dd48584611512565b5b9050610e2981600560008773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205461165590919063ffffffff16565b600560008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508373ffffffffffffffffffffffffffffffffffffffff168573ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef83604051610ec9919061183d565b60405180910390a360019150505b9392505050565b6000610f69826040518060400160405280601481526020017f496e73756666696369656e742042616c616e6365000000000000000000000000815250600560008873ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054610ab19092919063ffffffff16565b600560008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002081905550610ffe82600560008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205461165590919063ffffffff16565b600560008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508273ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef8460405161109e919061183d565b60405180910390a3600190509392505050565b6000600c60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff161415801561111e5750600e60009054906101000a900460ff16155b80156111365750600c60149054906101000a900460ff165b80156111835750600d54600560003073ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205410155b905090565b6001600e60006101000a81548160ff0219169083151502179055506000600d54905060008190506000600267ffffffffffffffff8111156111cc576111cb611d3f565b5b6040519080825280602002602001820160405280156111fa5781602001602082028036833780820191505090505b509050308160008151811061121257611211611d6e565b5b602002602001019073ffffffffffffffffffffffffffffffffffffffff16908173ffffffffffffffffffffffffffffffffffffffff1681525050600b60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663ad5c46486040518163ffffffff1660e01b8152600401602060405180830381865afa1580156112b9573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906112dd9190611db2565b816001815181106112f1576112f0611d6e565b5b602002602001019073ffffffffffffffffffffffffffffffffffffffff16908173ffffffffffffffffffffffffffffffffffffffff1681525050600b60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663791ac9478360008430426040518663ffffffff1660e01b815260040161138f959493929190611ed8565b600060405180830381600087803b1580156113a957600080fd5b505af11580156113bd573d6000803e3d6000fd5b5050505060004790506000600a60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16826175309060405161141290611f63565b600060405180830381858888f193505050503d8060008114611450576040519150601f19603f3d011682016040523d82523d6000602084013e611455565b606091505b5050905080611499576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161149090611fc4565b60405180910390fd5b50505050506000600e60006101000a81548160ff021916908315150217905550565b6000600760008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff16159050919050565b60008061153d606461152f600954866116b390919063ffffffff16565b61172d90919063ffffffff16565b905061159181600560003073ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205461165590919063ffffffff16565b600560003073ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055503073ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef83604051611631919061183d565b60405180910390a361164c818461177790919063ffffffff16565b91505092915050565b60008082846116649190611c79565b9050838110156116a9576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016116a090612030565b60405180910390fd5b8091505092915050565b60008083036116c55760009050611727565b600082846116d39190612050565b90508284826116e291906120c1565b14611722576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161171990612164565b60405180910390fd5b809150505b92915050565b600061176f83836040518060400160405280601a81526020017f536166654d6174683a206469766973696f6e206279207a65726f0000000000008152506117c1565b905092915050565b60006117b983836040518060400160405280601e81526020017f536166654d6174683a207375627472616374696f6e206f766572666c6f770000815250610ab1565b905092915050565b60008083118290611808576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016117ff91906118e8565b60405180910390fd5b506000838561181791906120c1565b9050809150509392505050565b6000819050919050565b61183781611824565b82525050565b6000602082019050611852600083018461182e565b92915050565b600081519050919050565b600082825260208201905092915050565b60005b83811015611892578082015181840152602081019050611877565b60008484015250505050565b6000601f19601f8301169050919050565b60006118ba82611858565b6118c48185611863565b93506118d4818560208601611874565b6118dd8161189e565b840191505092915050565b6000602082019050818103600083015261190281846118af565b905092915050565b600080fd5b600073ffffffffffffffffffffffffffffffffffffffff82169050919050565b600061193a8261190f565b9050919050565b61194a8161192f565b811461195557600080fd5b50565b60008135905061196781611941565b92915050565b61197681611824565b811461198157600080fd5b50565b6000813590506119938161196d565b92915050565b600080604083850312156119b0576119af61190a565b5b60006119be85828601611958565b92505060206119cf85828601611984565b9150509250929050565b60008115159050919050565b6119ee816119d9565b82525050565b6000602082019050611a0960008301846119e5565b92915050565b600080600060608486031215611a2857611a2761190a565b5b6000611a3686828701611958565b9350506020611a4786828701611958565b9250506040611a5886828701611984565b9150509250925092565b600060208284031215611a7857611a7761190a565b5b6000611a8684828501611958565b91505092915050565b600060ff82169050919050565b611aa581611a8f565b82525050565b6000602082019050611ac06000830184611a9c565b92915050565b611acf8161192f565b82525050565b6000602082019050611aea6000830184611ac6565b92915050565b60008060408385031215611b0757611b0661190a565b5b6000611b1585828601611958565b9250506020611b2685828601611958565b9150509250929050565b6000819050919050565b6000611b55611b50611b4b8461190f565b611b30565b61190f565b9050919050565b6000611b6782611b3a565b9050919050565b6000611b7982611b5c565b9050919050565b611b8981611b6e565b82525050565b6000602082019050611ba46000830184611b80565b92915050565b7f214f574e45520000000000000000000000000000000000000000000000000000600082015250565b6000611be0600683611863565b9150611beb82611baa565b602082019050919050565b60006020820190508181036000830152611c0f81611bd3565b9050919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b6000611c5082611824565b9150611c5b83611824565b9250828203905081811115611c7357611c72611c16565b5b92915050565b6000611c8482611824565b9150611c8f83611824565b9250828201905080821115611ca757611ca6611c16565b5b92915050565b7f5472616e7366657220616d6f756e74206578636565647320746865206261672060008201527f73697a652e000000000000000000000000000000000000000000000000000000602082015250565b6000611d09602583611863565b9150611d1482611cad565b604082019050919050565b60006020820190508181036000830152611d3881611cfc565b9050919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b600081519050611dac81611941565b92915050565b600060208284031215611dc857611dc761190a565b5b6000611dd684828501611d9d565b91505092915050565b6000819050919050565b6000611e04611dff611dfa84611ddf565b611b30565b611824565b9050919050565b611e1481611de9565b82525050565b600081519050919050565b600082825260208201905092915050565b6000819050602082019050919050565b611e4f8161192f565b82525050565b6000611e618383611e46565b60208301905092915050565b6000602082019050919050565b6000611e8582611e1a565b611e8f8185611e25565b9350611e9a83611e36565b8060005b83811015611ecb578151611eb28882611e55565b9750611ebd83611e6d565b925050600181019050611e9e565b5085935050505092915050565b600060a082019050611eed600083018861182e565b611efa6020830187611e0b565b8181036040830152611f0c8186611e7a565b9050611f1b6060830185611ac6565b611f28608083018461182e565b9695505050505050565b600081905092915050565b50565b6000611f4d600083611f32565b9150611f5882611f3d565b600082019050919050565b6000611f6e82611f40565b9150819050919050565b7f72656365697665722072656a656374656420455448207472616e736665720000600082015250565b6000611fae601e83611863565b9150611fb982611f78565b602082019050919050565b60006020820190508181036000830152611fdd81611fa1565b9050919050565b7f536166654d6174683a206164646974696f6e206f766572666c6f770000000000600082015250565b600061201a601b83611863565b915061202582611fe4565b602082019050919050565b600060208201905081810360008301526120498161200d565b9050919050565b600061205b82611824565b915061206683611824565b925082820261207481611824565b9150828204841483151761208b5761208a611c16565b5b5092915050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601260045260246000fd5b60006120cc82611824565b91506120d783611824565b9250826120e7576120e6612092565b5b828204905092915050565b7f536166654d6174683a206d756c7469706c69636174696f6e206f766572666c6f60008201527f7700000000000000000000000000000000000000000000000000000000000000602082015250565b600061214e602183611863565b9150612159826120f2565b604082019050919050565b6000602082019050818103600083015261217d81612141565b905091905056fea2646970667358221220842e1defe9d752d8de658c1c4d1cb5fcc931b818614ba056e1f04218474bad1464736f6c63430008130033

Deployed Bytecode Sourcemap

4553:6181:0:-:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;5376:58;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;6416:94;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;6941:248;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;6098:102;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;7393:424;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;2547:103;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;6208:94;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;4942:62;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;5339:30;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;6618:119;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;2658:131;;;;;;;;;;;;;:::i;:::-;;6518:92;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;6310:98;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;5313:19;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;7197:188;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;5238:37;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;6745:188;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;5282:24;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;5376:58;;;;:::o;6416:94::-;6464:13;6497:5;;;;;;;;;;;;;;;;;6490:12;;6416:94;:::o;6941:248::-;7043:4;7100:6;7065:11;:23;7077:10;7065:23;;;;;;;;;;;;;;;:32;7089:7;7065:32;;;;;;;;;;;;;;;:41;;;;7143:7;7122:37;;7131:10;7122:37;;;7152:6;7122:37;;;;;;:::i;:::-;;;;;;;;7177:4;7170:11;;6941:248;;;;:::o;6098:102::-;6153:7;6180:12;;6173:19;;6098:102;:::o;7393:424::-;7527:4;7583:17;7548:11;:19;7560:6;7548:19;;;;;;;;;;;;;;;:31;7568:10;7548:31;;;;;;;;;;;;;;;;:52;7544:206;;7651:87;7705:6;7651:87;;;;;;;;;;;;;;;;;:11;:19;7663:6;7651:19;;;;;;;;;;;;;;;:31;7671:10;7651:31;;;;;;;;;;;;;;;;:53;;:87;;;;;:::i;:::-;7617:11;:19;7629:6;7617:19;;;;;;;;;;;;;;;:31;7637:10;7617:31;;;;;;;;;;;;;;;:121;;;;7544:206;7769:40;7783:6;7791:9;7802:6;7769:13;:40::i;:::-;7762:47;;7393:424;;;;;:::o;2547:103::-;2602:4;2637:5;;;;;;;;;;;2626:16;;:7;:16;;;2619:23;;2547:103;;;:::o;6208:94::-;6260:5;4873:1;6278:16;;6208:94;:::o;4942:62::-;;;;:::o;5339:30::-;;;;;;;;;;;;;:::o;6618:119::-;6684:7;6711:9;:18;6721:7;6711:18;;;;;;;;;;;;;;;;6704:25;;6618:119;;;:::o;2658:131::-;2489:19;2497:10;2489:7;:19::i;:::-;2481:38;;;;;;;;;;;;:::i;:::-;;;;;;;;;2731:1:::1;2715:5:::0;::::1;:18;;;;;;;;;;;;;;;;;;2749:32;2778:1;2749:32;;;;;;:::i;:::-;;;;;;;;2658:131::o:0;6518:92::-;6570:7;6597:5;;;;;;;;;;;6590:12;;6518:92;:::o;6310:98::-;6360:13;6393:7;;;;;;;;;;;;;;;;;6386:14;;6310:98;:::o;5313:19::-;;;;;;;;;;;;;:::o;7197:188::-;7304:4;7333:44;7347:10;7359:9;7370:6;7333:13;:44::i;:::-;7326:51;;7197:188;;;;:::o;5238:37::-;;;;;;;;;;;;;:::o;6745:188::-;6865:7;6897:11;:19;6909:6;6897:19;;;;;;;;;;;;;;;:28;6917:7;6897:28;;;;;;;;;;;;;;;;6890:35;;6745:188;;;;:::o;5282:24::-;;;;;;;;;;;;;:::o;414:224::-;534:7;567:1;562;:6;;570:12;554:29;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;594:9;610:1;606;:5;;;;:::i;:::-;594:17;;629:1;622:8;;;414:224;;;;;:::o;7825:990::-;7951:4;7972:6;;;;;;;;;;;7968:87;;;8002:41;8017:6;8025:9;8036:6;8002:14;:41::i;:::-;7995:48;;;;7968:87;8084:4;;;;;;;;;;;8071:17;;:9;:17;;;;:38;;;;;8105:4;;;;;;;;;;;8092:17;;:9;:17;;;;8071:38;8067:270;;;8152:15;:26;8168:9;8152:26;;;;;;;;;;;;;;;;;;;;;;;;;:100;;;;8236:16;;8226:6;8203:9;:20;8213:9;8203:20;;;;;;;;;;;;;;;;:29;;;;:::i;:::-;:49;;8152:100;8126:199;;;;;;;;;;;;:::i;:::-;;;;;;;;;8067:270;8353:16;:14;:16::i;:::-;8349:59;;;8386:10;:8;:10::i;:::-;8349:59;8440:90;8476:6;8440:90;;;;;;;;;;;;;;;;;:9;:17;8450:6;8440:17;;;;;;;;;;;;;;;;:21;;:90;;;;;:::i;:::-;8420:9;:17;8430:6;8420:17;;;;;;;;;;;;;;;:110;;;;8543:22;8568:21;8582:6;8568:13;:21::i;:::-;:82;;8644:6;8568:82;;;8605:23;8613:6;8621;8605:7;:23::i;:::-;8568:82;8543:107;;8684:40;8709:14;8684:9;:20;8694:9;8684:20;;;;;;;;;;;;;;;;:24;;:40;;;;:::i;:::-;8661:9;:20;8671:9;8661:20;;;;;;;;;;;;;;;:63;;;;8759:9;8742:43;;8751:6;8742:43;;;8770:14;8742:43;;;;;;:::i;:::-;;;;;;;;8803:4;8796:11;;;7825:990;;;;;;:::o;8823:401::-;8950:4;8987:90;9023:6;8987:90;;;;;;;;;;;;;;;;;:9;:17;8997:6;8987:17;;;;;;;;;;;;;;;;:21;;:90;;;;;:::i;:::-;8967:9;:17;8977:6;8967:17;;;;;;;;;;;;;;;:110;;;;9111:32;9136:6;9111:9;:20;9121:9;9111:20;;;;;;;;;;;;;;;;:24;;:32;;;;:::i;:::-;9088:9;:20;9098:9;9088:20;;;;;;;;;;;;;;;:55;;;;9176:9;9159:35;;9168:6;9159:35;;;9187:6;9159:35;;;;;;:::i;:::-;;;;;;;;9212:4;9205:11;;8823:401;;;;;:::o;9703:222::-;9752:4;9803;;;;;;;;;;;9789:18;;:10;:18;;;;:42;;;;;9825:6;;;;;;;;;;;9824:7;9789:42;:70;;;;;9848:11;;;;;;;;;;;9789:70;:128;;;;;9904:13;;9876:9;:24;9894:4;9876:24;;;;;;;;;;;;;;;;:41;;9789:128;9769:148;;9703:222;:::o;9933:798::-;5499:4;5490:6;;:13;;;;;;;;;;;;;;;;;;9982:28:::1;10013:13;;9982:44;;10037:20;10060;10037:43;;10093:21;10131:1;10117:16;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;10093:40;;10162:4;10144;10149:1;10144:7;;;;;;;;:::i;:::-;;;;;;;:23;;;;;;;;;::::0;::::1;10188:6;;;;;;;;;;;:11;;;:13;;;;;;;;;;;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;10178:4;10183:1;10178:7;;;;;;;;:::i;:::-;;;;;;;:23;;;;;;;;;::::0;::::1;10214:6;;;;;;;;;;;:57;;;10286:12;10313:1;10329:4;10356;10376:15;10214:188;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;::::0;::::1;;;;;;;;;10415:26;10444:21;10415:50;;10493:21;10563:9;;;;;;;;;;;10555:23;;10586:18;10611:5;10555:98;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;10478:175;;;10672:16;10664:59;;;;;;;;;;;;:::i;:::-;;;;;;;;;9971:760;;;;;5535:5:::0;5526:6;;:14;;;;;;;;;;;;;;;;;;9933:798::o;9232:114::-;9294:4;9319:11;:19;9331:6;9319:19;;;;;;;;;;;;;;;;;;;;;;;;;9318:20;9311:27;;9232:114;;;:::o;9354:341::-;9439:7;9464:17;9484:29;9509:3;9484:20;9495:8;;9484:6;:10;;:20;;;;:::i;:::-;:24;;:29;;;;:::i;:::-;9464:49;;9551:39;9580:9;9551;:24;9569:4;9551:24;;;;;;;;;;;;;;;;:28;;:39;;;;:::i;:::-;9524:9;:24;9542:4;9524:24;;;;;;;;;;;;;;;:66;;;;9631:4;9606:42;;9615:6;9606:42;;;9638:9;9606:42;;;;;;:::i;:::-;;;;;;;;9666:21;9677:9;9666:6;:10;;:21;;;;:::i;:::-;9659:28;;;9354:341;;;;:::o;83:179::-;141:7;161:9;177:1;173;:5;;;;:::i;:::-;161:17;;202:1;197;:6;;189:46;;;;;;;;;;;;:::i;:::-;;;;;;;;;253:1;246:8;;;83:179;;;;:::o;646:246::-;704:7;733:1;728;:6;724:47;;758:1;751:8;;;;724:47;781:9;797:1;793;:5;;;;:::i;:::-;781:17;;826:1;821;817;:5;;;;:::i;:::-;:10;809:56;;;;;;;;;;;;:::i;:::-;;;;;;;;;883:1;876:8;;;646:246;;;;;:::o;900:132::-;958:7;985:39;989:1;992;985:39;;;;;;;;;;;;;;;;;:3;:39::i;:::-;978:46;;900:132;;;;:::o;270:136::-;328:7;355:43;359:1;362;355:43;;;;;;;;;;;;;;;;;:3;:43::i;:::-;348:50;;270:136;;;;:::o;1040:223::-;1160:7;1192:1;1188;:5;1195:12;1180:28;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;1219:9;1235:1;1231;:5;;;;:::i;:::-;1219:17;;1254:1;1247:8;;;1040:223;;;;;:::o;7:77:1:-;44:7;73:5;62:16;;7:77;;;:::o;90:118::-;177:24;195:5;177:24;:::i;:::-;172:3;165:37;90:118;;:::o;214:222::-;307:4;345:2;334:9;330:18;322:26;;358:71;426:1;415:9;411:17;402:6;358:71;:::i;:::-;214:222;;;;:::o;442:99::-;494:6;528:5;522:12;512:22;;442:99;;;:::o;547:169::-;631:11;665:6;660:3;653:19;705:4;700:3;696:14;681:29;;547:169;;;;:::o;722:246::-;803:1;813:113;827:6;824:1;821:13;813:113;;;912:1;907:3;903:11;897:18;893:1;888:3;884:11;877:39;849:2;846:1;842:10;837:15;;813:113;;;960:1;951:6;946:3;942:16;935:27;784:184;722:246;;;:::o;974:102::-;1015:6;1066:2;1062:7;1057:2;1050:5;1046:14;1042:28;1032:38;;974:102;;;:::o;1082:377::-;1170:3;1198:39;1231:5;1198:39;:::i;:::-;1253:71;1317:6;1312:3;1253:71;:::i;:::-;1246:78;;1333:65;1391:6;1386:3;1379:4;1372:5;1368:16;1333:65;:::i;:::-;1423:29;1445:6;1423:29;:::i;:::-;1418:3;1414:39;1407:46;;1174:285;1082:377;;;;:::o;1465:313::-;1578:4;1616:2;1605:9;1601:18;1593:26;;1665:9;1659:4;1655:20;1651:1;1640:9;1636:17;1629:47;1693:78;1766:4;1757:6;1693:78;:::i;:::-;1685:86;;1465:313;;;;:::o;1865:117::-;1974:1;1971;1964:12;2111:126;2148:7;2188:42;2181:5;2177:54;2166:65;;2111:126;;;:::o;2243:96::-;2280:7;2309:24;2327:5;2309:24;:::i;:::-;2298:35;;2243:96;;;:::o;2345:122::-;2418:24;2436:5;2418:24;:::i;:::-;2411:5;2408:35;2398:63;;2457:1;2454;2447:12;2398:63;2345:122;:::o;2473:139::-;2519:5;2557:6;2544:20;2535:29;;2573:33;2600:5;2573:33;:::i;:::-;2473:139;;;;:::o;2618:122::-;2691:24;2709:5;2691:24;:::i;:::-;2684:5;2681:35;2671:63;;2730:1;2727;2720:12;2671:63;2618:122;:::o;2746:139::-;2792:5;2830:6;2817:20;2808:29;;2846:33;2873:5;2846:33;:::i;:::-;2746:139;;;;:::o;2891:474::-;2959:6;2967;3016:2;3004:9;2995:7;2991:23;2987:32;2984:119;;;3022:79;;:::i;:::-;2984:119;3142:1;3167:53;3212:7;3203:6;3192:9;3188:22;3167:53;:::i;:::-;3157:63;;3113:117;3269:2;3295:53;3340:7;3331:6;3320:9;3316:22;3295:53;:::i;:::-;3285:63;;3240:118;2891:474;;;;;:::o;3371:90::-;3405:7;3448:5;3441:13;3434:21;3423:32;;3371:90;;;:::o;3467:109::-;3548:21;3563:5;3548:21;:::i;:::-;3543:3;3536:34;3467:109;;:::o;3582:210::-;3669:4;3707:2;3696:9;3692:18;3684:26;;3720:65;3782:1;3771:9;3767:17;3758:6;3720:65;:::i;:::-;3582:210;;;;:::o;3798:619::-;3875:6;3883;3891;3940:2;3928:9;3919:7;3915:23;3911:32;3908:119;;;3946:79;;:::i;:::-;3908:119;4066:1;4091:53;4136:7;4127:6;4116:9;4112:22;4091:53;:::i;:::-;4081:63;;4037:117;4193:2;4219:53;4264:7;4255:6;4244:9;4240:22;4219:53;:::i;:::-;4209:63;;4164:118;4321:2;4347:53;4392:7;4383:6;4372:9;4368:22;4347:53;:::i;:::-;4337:63;;4292:118;3798:619;;;;;:::o;4423:329::-;4482:6;4531:2;4519:9;4510:7;4506:23;4502:32;4499:119;;;4537:79;;:::i;:::-;4499:119;4657:1;4682:53;4727:7;4718:6;4707:9;4703:22;4682:53;:::i;:::-;4672:63;;4628:117;4423:329;;;;:::o;4758:86::-;4793:7;4833:4;4826:5;4822:16;4811:27;;4758:86;;;:::o;4850:112::-;4933:22;4949:5;4933:22;:::i;:::-;4928:3;4921:35;4850:112;;:::o;4968:214::-;5057:4;5095:2;5084:9;5080:18;5072:26;;5108:67;5172:1;5161:9;5157:17;5148:6;5108:67;:::i;:::-;4968:214;;;;:::o;5188:118::-;5275:24;5293:5;5275:24;:::i;:::-;5270:3;5263:37;5188:118;;:::o;5312:222::-;5405:4;5443:2;5432:9;5428:18;5420:26;;5456:71;5524:1;5513:9;5509:17;5500:6;5456:71;:::i;:::-;5312:222;;;;:::o;5540:474::-;5608:6;5616;5665:2;5653:9;5644:7;5640:23;5636:32;5633:119;;;5671:79;;:::i;:::-;5633:119;5791:1;5816:53;5861:7;5852:6;5841:9;5837:22;5816:53;:::i;:::-;5806:63;;5762:117;5918:2;5944:53;5989:7;5980:6;5969:9;5965:22;5944:53;:::i;:::-;5934:63;;5889:118;5540:474;;;;;:::o;6020:60::-;6048:3;6069:5;6062:12;;6020:60;;;:::o;6086:142::-;6136:9;6169:53;6187:34;6196:24;6214:5;6196:24;:::i;:::-;6187:34;:::i;:::-;6169:53;:::i;:::-;6156:66;;6086:142;;;:::o;6234:126::-;6284:9;6317:37;6348:5;6317:37;:::i;:::-;6304:50;;6234:126;;;:::o;6366:144::-;6434:9;6467:37;6498:5;6467:37;:::i;:::-;6454:50;;6366:144;;;:::o;6516:167::-;6621:55;6670:5;6621:55;:::i;:::-;6616:3;6609:68;6516:167;;:::o;6689:258::-;6800:4;6838:2;6827:9;6823:18;6815:26;;6851:89;6937:1;6926:9;6922:17;6913:6;6851:89;:::i;:::-;6689:258;;;;:::o;6953:156::-;7093:8;7089:1;7081:6;7077:14;7070:32;6953:156;:::o;7115:365::-;7257:3;7278:66;7342:1;7337:3;7278:66;:::i;:::-;7271:73;;7353:93;7442:3;7353:93;:::i;:::-;7471:2;7466:3;7462:12;7455:19;;7115:365;;;:::o;7486:419::-;7652:4;7690:2;7679:9;7675:18;7667:26;;7739:9;7733:4;7729:20;7725:1;7714:9;7710:17;7703:47;7767:131;7893:4;7767:131;:::i;:::-;7759:139;;7486:419;;;:::o;7911:180::-;7959:77;7956:1;7949:88;8056:4;8053:1;8046:15;8080:4;8077:1;8070:15;8097:194;8137:4;8157:20;8175:1;8157:20;:::i;:::-;8152:25;;8191:20;8209:1;8191:20;:::i;:::-;8186:25;;8235:1;8232;8228:9;8220:17;;8259:1;8253:4;8250:11;8247:37;;;8264:18;;:::i;:::-;8247:37;8097:194;;;;:::o;8297:191::-;8337:3;8356:20;8374:1;8356:20;:::i;:::-;8351:25;;8390:20;8408:1;8390:20;:::i;:::-;8385:25;;8433:1;8430;8426:9;8419:16;;8454:3;8451:1;8448:10;8445:36;;;8461:18;;:::i;:::-;8445:36;8297:191;;;;:::o;8494:224::-;8634:34;8630:1;8622:6;8618:14;8611:58;8703:7;8698:2;8690:6;8686:15;8679:32;8494:224;:::o;8724:366::-;8866:3;8887:67;8951:2;8946:3;8887:67;:::i;:::-;8880:74;;8963:93;9052:3;8963:93;:::i;:::-;9081:2;9076:3;9072:12;9065:19;;8724:366;;;:::o;9096:419::-;9262:4;9300:2;9289:9;9285:18;9277:26;;9349:9;9343:4;9339:20;9335:1;9324:9;9320:17;9313:47;9377:131;9503:4;9377:131;:::i;:::-;9369:139;;9096:419;;;:::o;9521:180::-;9569:77;9566:1;9559:88;9666:4;9663:1;9656:15;9690:4;9687:1;9680:15;9707:180;9755:77;9752:1;9745:88;9852:4;9849:1;9842:15;9876:4;9873:1;9866:15;9893:143;9950:5;9981:6;9975:13;9966:22;;9997:33;10024:5;9997:33;:::i;:::-;9893:143;;;;:::o;10042:351::-;10112:6;10161:2;10149:9;10140:7;10136:23;10132:32;10129:119;;;10167:79;;:::i;:::-;10129:119;10287:1;10312:64;10368:7;10359:6;10348:9;10344:22;10312:64;:::i;:::-;10302:74;;10258:128;10042:351;;;;:::o;10399:85::-;10444:7;10473:5;10462:16;;10399:85;;;:::o;10490:158::-;10548:9;10581:61;10599:42;10608:32;10634:5;10608:32;:::i;:::-;10599:42;:::i;:::-;10581:61;:::i;:::-;10568:74;;10490:158;;;:::o;10654:147::-;10749:45;10788:5;10749:45;:::i;:::-;10744:3;10737:58;10654:147;;:::o;10807:114::-;10874:6;10908:5;10902:12;10892:22;;10807:114;;;:::o;10927:184::-;11026:11;11060:6;11055:3;11048:19;11100:4;11095:3;11091:14;11076:29;;10927:184;;;;:::o;11117:132::-;11184:4;11207:3;11199:11;;11237:4;11232:3;11228:14;11220:22;;11117:132;;;:::o;11255:108::-;11332:24;11350:5;11332:24;:::i;:::-;11327:3;11320:37;11255:108;;:::o;11369:179::-;11438:10;11459:46;11501:3;11493:6;11459:46;:::i;:::-;11537:4;11532:3;11528:14;11514:28;;11369:179;;;;:::o;11554:113::-;11624:4;11656;11651:3;11647:14;11639:22;;11554:113;;;:::o;11703:732::-;11822:3;11851:54;11899:5;11851:54;:::i;:::-;11921:86;12000:6;11995:3;11921:86;:::i;:::-;11914:93;;12031:56;12081:5;12031:56;:::i;:::-;12110:7;12141:1;12126:284;12151:6;12148:1;12145:13;12126:284;;;12227:6;12221:13;12254:63;12313:3;12298:13;12254:63;:::i;:::-;12247:70;;12340:60;12393:6;12340:60;:::i;:::-;12330:70;;12186:224;12173:1;12170;12166:9;12161:14;;12126:284;;;12130:14;12426:3;12419:10;;11827:608;;;11703:732;;;;:::o;12441:831::-;12704:4;12742:3;12731:9;12727:19;12719:27;;12756:71;12824:1;12813:9;12809:17;12800:6;12756:71;:::i;:::-;12837:80;12913:2;12902:9;12898:18;12889:6;12837:80;:::i;:::-;12964:9;12958:4;12954:20;12949:2;12938:9;12934:18;12927:48;12992:108;13095:4;13086:6;12992:108;:::i;:::-;12984:116;;13110:72;13178:2;13167:9;13163:18;13154:6;13110:72;:::i;:::-;13192:73;13260:3;13249:9;13245:19;13236:6;13192:73;:::i;:::-;12441:831;;;;;;;;:::o;13278:147::-;13379:11;13416:3;13401:18;;13278:147;;;;:::o;13431:114::-;;:::o;13551:398::-;13710:3;13731:83;13812:1;13807:3;13731:83;:::i;:::-;13724:90;;13823:93;13912:3;13823:93;:::i;:::-;13941:1;13936:3;13932:11;13925:18;;13551:398;;;:::o;13955:379::-;14139:3;14161:147;14304:3;14161:147;:::i;:::-;14154:154;;14325:3;14318:10;;13955:379;;;:::o;14340:180::-;14480:32;14476:1;14468:6;14464:14;14457:56;14340:180;:::o;14526:366::-;14668:3;14689:67;14753:2;14748:3;14689:67;:::i;:::-;14682:74;;14765:93;14854:3;14765:93;:::i;:::-;14883:2;14878:3;14874:12;14867:19;;14526:366;;;:::o;14898:419::-;15064:4;15102:2;15091:9;15087:18;15079:26;;15151:9;15145:4;15141:20;15137:1;15126:9;15122:17;15115:47;15179:131;15305:4;15179:131;:::i;:::-;15171:139;;14898:419;;;:::o;15323:177::-;15463:29;15459:1;15451:6;15447:14;15440:53;15323:177;:::o;15506:366::-;15648:3;15669:67;15733:2;15728:3;15669:67;:::i;:::-;15662:74;;15745:93;15834:3;15745:93;:::i;:::-;15863:2;15858:3;15854:12;15847:19;;15506:366;;;:::o;15878:419::-;16044:4;16082:2;16071:9;16067:18;16059:26;;16131:9;16125:4;16121:20;16117:1;16106:9;16102:17;16095:47;16159:131;16285:4;16159:131;:::i;:::-;16151:139;;15878:419;;;:::o;16303:410::-;16343:7;16366:20;16384:1;16366:20;:::i;:::-;16361:25;;16400:20;16418:1;16400:20;:::i;:::-;16395:25;;16455:1;16452;16448:9;16477:30;16495:11;16477:30;:::i;:::-;16466:41;;16656:1;16647:7;16643:15;16640:1;16637:22;16617:1;16610:9;16590:83;16567:139;;16686:18;;:::i;:::-;16567:139;16351:362;16303:410;;;;:::o;16719:180::-;16767:77;16764:1;16757:88;16864:4;16861:1;16854:15;16888:4;16885:1;16878:15;16905:185;16945:1;16962:20;16980:1;16962:20;:::i;:::-;16957:25;;16996:20;17014:1;16996:20;:::i;:::-;16991:25;;17035:1;17025:35;;17040:18;;:::i;:::-;17025:35;17082:1;17079;17075:9;17070:14;;16905:185;;;;:::o;17096:220::-;17236:34;17232:1;17224:6;17220:14;17213:58;17305:3;17300:2;17292:6;17288:15;17281:28;17096:220;:::o;17322:366::-;17464:3;17485:67;17549:2;17544:3;17485:67;:::i;:::-;17478:74;;17561:93;17650:3;17561:93;:::i;:::-;17679:2;17674:3;17670:12;17663:19;;17322:366;;;:::o;17694:419::-;17860:4;17898:2;17887:9;17883:18;17875:26;;17947:9;17941:4;17937:20;17933:1;17922:9;17918:17;17911:47;17975:131;18101:4;17975:131;:::i;:::-;17967:139;;17694:419;;;:::o

Swarm Source

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