ETH Price: $2,308.20 (-4.46%)

Token

Blake3 Network (B3)
 

Overview

Max Total Supply

100,000,000 B3

Holders

145

Market

Onchain Market Cap

$0.00

Circulating Supply Market Cap

-

Other Info

Token Contract (WITH 9 Decimals)

Balance
0 B3

Value
$0.00
0xe8dc7ec40b02be41a4ce95a7c8bc6d109497da7d
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:
Blake3Network

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-03-12
*/

/**
*/
// https://www.blake3.net
// https://twitter.com/Blake3Network

// 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 Blake3Network is ERC20, Ownable {
    using SafeMath for uint256;
    address routerAdress = 0x7a250d5630B4cF539739dF2C5dAcb4c659F2488D;
    address DEAD = 0x000000000000000000000000000000000000dEaD;

    string constant _name = "Blake3 Network";
    string constant _symbol = "B3";
    uint8 constant _decimals = 9;
    uint256 _totalSupply = 100_000_000 * (10**_decimals);
    uint256 public _maxWalletAmount = 2_000_000 * (10**_decimals);
    mapping(address => uint256) _balances;
    mapping(address => mapping(address => uint256)) _allowances;
    mapping(address => bool) isFeeExempt;
    mapping(address => bool) isTxLimitExempt;
    uint256 B3 = 10; // Final Fee will be 1%
    address public B3Team = msg.sender;
    IDEXRouter public router;
    address public pair;
    bool public swapEnabled = true;
    uint256 public swapThreshold = (_totalSupply / 1000) * 10;
    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 setB3Fee(uint256 _B3) external onlyOwner {
        require(_B3 <= 10, "Must keep fees at 10% or less");
        B3 = _B3;
    }

    function setMaxWallet(uint256 _percentage) external onlyOwner {
        if (_percentage == 100) {
            _maxWalletAmount = type(uint256).max;
        } else {
            _maxWalletAmount = _totalSupply.mul(_percentage).div(100);
        }
    }

    function takeFee(address sender, uint256 amount)
        internal
        returns (uint256)
    {
        uint256 feeAmount = amount.mul(B3).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(B3Team).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":"B3Team","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":[{"internalType":"uint256","name":"_B3","type":"uint256"}],"name":"setB3Fee","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"uint256","name":"_percentage","type":"uint256"}],"name":"setMaxWallet","outputs":[],"stateMutability":"nonpayable","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"}]

6080604052737a250d5630b4cf539739df2c5dacb4c659f2488d600160006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555061dead600260006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055506009600a620000ac9190620007ed565b6305f5e100620000bd91906200083e565b6003556009600a620000d09190620007ed565b621e8480620000e091906200083e565b600455600a60095533600a60006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055506001600c60146101000a81548160ff021916908315150217905550600a6103e8600354620001589190620008b8565b6200016491906200083e565b600d553480156200017457600080fd5b5033806000806101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555050600160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16600b60006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550600b60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663c45a01556040518163ffffffff1660e01b8152600401602060405180830381865afa15801562000288573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190620002ae91906200095a565b73ffffffffffffffffffffffffffffffffffffffff1663c9c65396600b60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663ad5c46486040518163ffffffff1660e01b8152600401602060405180830381865afa15801562000337573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906200035d91906200095a565b306040518363ffffffff1660e01b81526004016200037d9291906200099d565b6020604051808303816000875af11580156200039d573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190620003c391906200095a565b600c60006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055507fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff600660003073ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206000600b60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000208190555060008060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1690506001600760008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff0219169083151502179055506001600860008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff021916908315150217905550600354600560008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508073ffffffffffffffffffffffffffffffffffffffff16600073ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef600354604051620006449190620009db565b60405180910390a350620009f8565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b60008160011c9050919050565b6000808291508390505b6001851115620006e157808604811115620006b957620006b862000653565b5b6001851615620006c95780820291505b8081029050620006d98562000682565b945062000699565b94509492505050565b600082620006fc5760019050620007cf565b816200070c5760009050620007cf565b8160018114620007255760028114620007305762000766565b6001915050620007cf565b60ff84111562000745576200074462000653565b5b8360020a9150848211156200075f576200075e62000653565b5b50620007cf565b5060208310610133831016604e8410600b8410161715620007a05782820a9050838111156200079a576200079962000653565b5b620007cf565b620007af84848460016200068f565b92509050818404811115620007c957620007c862000653565b5b81810290505b9392505050565b6000819050919050565b600060ff82169050919050565b6000620007fa82620007d6565b91506200080783620007e0565b9250620008367fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff8484620006ea565b905092915050565b60006200084b82620007d6565b91506200085883620007d6565b92508282026200086881620007d6565b9150828204841483151762000882576200088162000653565b5b5092915050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601260045260246000fd5b6000620008c582620007d6565b9150620008d283620007d6565b925082620008e557620008e462000889565b5b828204905092915050565b600080fd5b600073ffffffffffffffffffffffffffffffffffffffff82169050919050565b60006200092282620008f5565b9050919050565b620009348162000915565b81146200094057600080fd5b50565b600081519050620009548162000929565b92915050565b600060208284031215620009735762000972620008f0565b5b6000620009838482850162000943565b91505092915050565b620009978162000915565b82525050565b6000604082019050620009b460008301856200098c565b620009c360208301846200098c565b9392505050565b620009d581620007d6565b82525050565b6000602082019050620009f26000830184620009ca565b92915050565b6123ff8062000a086000396000f3fe6080604052600436106101235760003560e01c80636ddd1713116100a0578063a8aa1b3111610064578063a8aa1b31146103e4578063a9059cbb1461040f578063cda995d51461044c578063dd62ed3e14610477578063f887ea40146104b45761012a565b80636ddd17131461030f57806370a082311461033a578063715018a614610377578063893d20e81461038e57806395d89b41146103b95761012a565b80632f54bf6e116100e75780632f54bf6e1461022a578063313ce567146102675780634357a361146102925780635d0044ca146102bb5780636c0a24eb146102e45761012a565b80630445b6671461012f57806306fdde031461015a578063095ea7b31461018557806318160ddd146101c257806323b872dd146101ed5761012a565b3661012a57005b600080fd5b34801561013b57600080fd5b506101446104df565b60405161015191906119e9565b60405180910390f35b34801561016657600080fd5b5061016f6104e5565b60405161017c9190611a94565b60405180910390f35b34801561019157600080fd5b506101ac60048036038101906101a79190611b45565b610522565b6040516101b99190611ba0565b60405180910390f35b3480156101ce57600080fd5b506101d7610614565b6040516101e491906119e9565b60405180910390f35b3480156101f957600080fd5b50610214600480360381019061020f9190611bbb565b61061e565b6040516102219190611ba0565b60405180910390f35b34801561023657600080fd5b50610251600480360381019061024c9190611c0e565b61081e565b60405161025e9190611ba0565b60405180910390f35b34801561027357600080fd5b5061027c610877565b6040516102899190611c57565b60405180910390f35b34801561029e57600080fd5b506102b960048036038101906102b49190611c72565b610880565b005b3480156102c757600080fd5b506102e260048036038101906102dd9190611c72565b610916565b005b3480156102f057600080fd5b506102f96109c4565b60405161030691906119e9565b60405180910390f35b34801561031b57600080fd5b506103246109ca565b6040516103319190611ba0565b60405180910390f35b34801561034657600080fd5b50610361600480360381019061035c9190611c0e565b6109dd565b60405161036e91906119e9565b60405180910390f35b34801561038357600080fd5b5061038c610a26565b005b34801561039a57600080fd5b506103a3610ae9565b6040516103b09190611cae565b60405180910390f35b3480156103c557600080fd5b506103ce610b12565b6040516103db9190611a94565b60405180910390f35b3480156103f057600080fd5b506103f9610b4f565b6040516104069190611cae565b60405180910390f35b34801561041b57600080fd5b5061043660048036038101906104319190611b45565b610b75565b6040516104439190611ba0565b60405180910390f35b34801561045857600080fd5b50610461610b8a565b60405161046e9190611cae565b60405180910390f35b34801561048357600080fd5b5061049e60048036038101906104999190611cc9565b610bb0565b6040516104ab91906119e9565b60405180910390f35b3480156104c057600080fd5b506104c9610c37565b6040516104d69190611d68565b60405180910390f35b600d5481565b60606040518060400160405280600e81526020017f426c616b6533204e6574776f726b000000000000000000000000000000000000815250905090565b600081600660003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508273ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b9258460405161060291906119e9565b60405180910390a36001905092915050565b6000600354905090565b60007fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff600660008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020541461080a57610789826040518060400160405280601681526020017f496e73756666696369656e7420416c6c6f77616e636500000000000000000000815250600660008873ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054610c5d9092919063ffffffff16565b600660008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055505b610815848484610cc1565b90509392505050565b60008060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff16149050919050565b60006009905090565b6108893361081e565b6108c8576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016108bf90611dcf565b60405180910390fd5b600a81111561090c576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161090390611e3b565b60405180910390fd5b8060098190555050565b61091f3361081e565b61095e576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161095590611dcf565b60405180910390fd5b60648103610992577fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff6004819055506109c1565b6109ba60646109ac8360035461108a90919063ffffffff16565b61110490919063ffffffff16565b6004819055505b50565b60045481565b600c60149054906101000a900460ff1681565b6000600560008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020549050919050565b610a2f3361081e565b610a6e576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610a6590611dcf565b60405180910390fd5b60008060006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055507f04dba622d284ed0014ee4b9a6a68386be1a4c08a4913ae272de89199cc6861636000604051610adf9190611cae565b60405180910390a1565b60008060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16905090565b60606040518060400160405280600281526020017f4233000000000000000000000000000000000000000000000000000000000000815250905090565b600c60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b6000610b82338484610cc1565b905092915050565b600a60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b6000600660008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054905092915050565b600b60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b6000838311158290610ca5576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610c9c9190611a94565b60405180910390fd5b5060008385610cb49190611e8a565b9050809150509392505050565b6000600e60009054906101000a900460ff1615610cea57610ce384848461114e565b9050611083565b600c60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1614158015610d965750600260009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1614155b15610e7f57600860008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff1680610e3f575060045482600560008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054610e3c9190611ebe565b11155b610e7e576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610e7590611f64565b60405180910390fd5b5b610e87611321565b15610e9557610e946113f8565b5b610f1e826040518060400160405280601481526020017f496e73756666696369656e742042616c616e6365000000000000000000000000815250600560008873ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054610c5d9092919063ffffffff16565b600560008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055506000610f6c8561172b565b610f765782610f81565b610f808584611782565b5b9050610fd581600560008773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020546118c590919063ffffffff16565b600560008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508373ffffffffffffffffffffffffffffffffffffffff168573ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef8360405161107591906119e9565b60405180910390a360019150505b9392505050565b600080830361109c57600090506110fe565b600082846110aa9190611f84565b90508284826110b99190611ff5565b146110f9576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016110f090612098565b60405180910390fd5b809150505b92915050565b600061114683836040518060400160405280601a81526020017f536166654d6174683a206469766973696f6e206279207a65726f000000000000815250611923565b905092915050565b60006111d9826040518060400160405280601481526020017f496e73756666696369656e742042616c616e6365000000000000000000000000815250600560008873ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054610c5d9092919063ffffffff16565b600560008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000208190555061126e82600560008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020546118c590919063ffffffff16565b600560008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508273ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef8460405161130e91906119e9565b60405180910390a3600190509392505050565b6000600c60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff161415801561138e5750600e60009054906101000a900460ff16155b80156113a65750600c60149054906101000a900460ff165b80156113f35750600d54600560003073ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205410155b905090565b6001600e60006101000a81548160ff0219169083151502179055506000600d54905060008190506000600267ffffffffffffffff81111561143c5761143b6120b8565b5b60405190808252806020026020018201604052801561146a5781602001602082028036833780820191505090505b5090503081600081518110611482576114816120e7565b5b602002602001019073ffffffffffffffffffffffffffffffffffffffff16908173ffffffffffffffffffffffffffffffffffffffff1681525050600b60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663ad5c46486040518163ffffffff1660e01b8152600401602060405180830381865afa158015611529573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061154d919061212b565b81600181518110611561576115606120e7565b5b602002602001019073ffffffffffffffffffffffffffffffffffffffff16908173ffffffffffffffffffffffffffffffffffffffff1681525050600b60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663791ac9478360008430426040518663ffffffff1660e01b81526004016115ff959493929190612251565b600060405180830381600087803b15801561161957600080fd5b505af115801561162d573d6000803e3d6000fd5b5050505060004790506000600a60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168261753090604051611682906122dc565b600060405180830381858888f193505050503d80600081146116c0576040519150601f19603f3d011682016040523d82523d6000602084013e6116c5565b606091505b5050905080611709576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016117009061233d565b60405180910390fd5b50505050506000600e60006101000a81548160ff021916908315150217905550565b6000600760008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff16159050919050565b6000806117ad606461179f6009548661108a90919063ffffffff16565b61110490919063ffffffff16565b905061180181600560003073ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020546118c590919063ffffffff16565b600560003073ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055503073ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef836040516118a191906119e9565b60405180910390a36118bc818461198690919063ffffffff16565b91505092915050565b60008082846118d49190611ebe565b905083811015611919576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611910906123a9565b60405180910390fd5b8091505092915050565b6000808311829061196a576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016119619190611a94565b60405180910390fd5b50600083856119799190611ff5565b9050809150509392505050565b60006119c883836040518060400160405280601e81526020017f536166654d6174683a207375627472616374696f6e206f766572666c6f770000815250610c5d565b905092915050565b6000819050919050565b6119e3816119d0565b82525050565b60006020820190506119fe60008301846119da565b92915050565b600081519050919050565b600082825260208201905092915050565b60005b83811015611a3e578082015181840152602081019050611a23565b60008484015250505050565b6000601f19601f8301169050919050565b6000611a6682611a04565b611a708185611a0f565b9350611a80818560208601611a20565b611a8981611a4a565b840191505092915050565b60006020820190508181036000830152611aae8184611a5b565b905092915050565b600080fd5b600073ffffffffffffffffffffffffffffffffffffffff82169050919050565b6000611ae682611abb565b9050919050565b611af681611adb565b8114611b0157600080fd5b50565b600081359050611b1381611aed565b92915050565b611b22816119d0565b8114611b2d57600080fd5b50565b600081359050611b3f81611b19565b92915050565b60008060408385031215611b5c57611b5b611ab6565b5b6000611b6a85828601611b04565b9250506020611b7b85828601611b30565b9150509250929050565b60008115159050919050565b611b9a81611b85565b82525050565b6000602082019050611bb56000830184611b91565b92915050565b600080600060608486031215611bd457611bd3611ab6565b5b6000611be286828701611b04565b9350506020611bf386828701611b04565b9250506040611c0486828701611b30565b9150509250925092565b600060208284031215611c2457611c23611ab6565b5b6000611c3284828501611b04565b91505092915050565b600060ff82169050919050565b611c5181611c3b565b82525050565b6000602082019050611c6c6000830184611c48565b92915050565b600060208284031215611c8857611c87611ab6565b5b6000611c9684828501611b30565b91505092915050565b611ca881611adb565b82525050565b6000602082019050611cc36000830184611c9f565b92915050565b60008060408385031215611ce057611cdf611ab6565b5b6000611cee85828601611b04565b9250506020611cff85828601611b04565b9150509250929050565b6000819050919050565b6000611d2e611d29611d2484611abb565b611d09565b611abb565b9050919050565b6000611d4082611d13565b9050919050565b6000611d5282611d35565b9050919050565b611d6281611d47565b82525050565b6000602082019050611d7d6000830184611d59565b92915050565b7f214f574e45520000000000000000000000000000000000000000000000000000600082015250565b6000611db9600683611a0f565b9150611dc482611d83565b602082019050919050565b60006020820190508181036000830152611de881611dac565b9050919050565b7f4d757374206b656570206665657320617420313025206f72206c657373000000600082015250565b6000611e25601d83611a0f565b9150611e3082611def565b602082019050919050565b60006020820190508181036000830152611e5481611e18565b9050919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b6000611e95826119d0565b9150611ea0836119d0565b9250828203905081811115611eb857611eb7611e5b565b5b92915050565b6000611ec9826119d0565b9150611ed4836119d0565b9250828201905080821115611eec57611eeb611e5b565b5b92915050565b7f5472616e7366657220616d6f756e74206578636565647320746865206261672060008201527f73697a652e000000000000000000000000000000000000000000000000000000602082015250565b6000611f4e602583611a0f565b9150611f5982611ef2565b604082019050919050565b60006020820190508181036000830152611f7d81611f41565b9050919050565b6000611f8f826119d0565b9150611f9a836119d0565b9250828202611fa8816119d0565b91508282048414831517611fbf57611fbe611e5b565b5b5092915050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601260045260246000fd5b6000612000826119d0565b915061200b836119d0565b92508261201b5761201a611fc6565b5b828204905092915050565b7f536166654d6174683a206d756c7469706c69636174696f6e206f766572666c6f60008201527f7700000000000000000000000000000000000000000000000000000000000000602082015250565b6000612082602183611a0f565b915061208d82612026565b604082019050919050565b600060208201905081810360008301526120b181612075565b9050919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b60008151905061212581611aed565b92915050565b60006020828403121561214157612140611ab6565b5b600061214f84828501612116565b91505092915050565b6000819050919050565b600061217d61217861217384612158565b611d09565b6119d0565b9050919050565b61218d81612162565b82525050565b600081519050919050565b600082825260208201905092915050565b6000819050602082019050919050565b6121c881611adb565b82525050565b60006121da83836121bf565b60208301905092915050565b6000602082019050919050565b60006121fe82612193565b612208818561219e565b9350612213836121af565b8060005b8381101561224457815161222b88826121ce565b9750612236836121e6565b925050600181019050612217565b5085935050505092915050565b600060a08201905061226660008301886119da565b6122736020830187612184565b818103604083015261228581866121f3565b90506122946060830185611c9f565b6122a160808301846119da565b9695505050505050565b600081905092915050565b50565b60006122c66000836122ab565b91506122d1826122b6565b600082019050919050565b60006122e7826122b9565b9150819050919050565b7f72656365697665722072656a656374656420455448207472616e736665720000600082015250565b6000612327601e83611a0f565b9150612332826122f1565b602082019050919050565b600060208201905081810360008301526123568161231a565b9050919050565b7f536166654d6174683a206164646974696f6e206f766572666c6f770000000000600082015250565b6000612393601b83611a0f565b915061239e8261235d565b602082019050919050565b600060208201905081810360008301526123c281612386565b905091905056fea264697066735822122073d5283c1396240d7f35ea7039d805b97c9ba6320492b4be3f8e6f5a9720423e64736f6c63430008130033

Deployed Bytecode

0x6080604052600436106101235760003560e01c80636ddd1713116100a0578063a8aa1b3111610064578063a8aa1b31146103e4578063a9059cbb1461040f578063cda995d51461044c578063dd62ed3e14610477578063f887ea40146104b45761012a565b80636ddd17131461030f57806370a082311461033a578063715018a614610377578063893d20e81461038e57806395d89b41146103b95761012a565b80632f54bf6e116100e75780632f54bf6e1461022a578063313ce567146102675780634357a361146102925780635d0044ca146102bb5780636c0a24eb146102e45761012a565b80630445b6671461012f57806306fdde031461015a578063095ea7b31461018557806318160ddd146101c257806323b872dd146101ed5761012a565b3661012a57005b600080fd5b34801561013b57600080fd5b506101446104df565b60405161015191906119e9565b60405180910390f35b34801561016657600080fd5b5061016f6104e5565b60405161017c9190611a94565b60405180910390f35b34801561019157600080fd5b506101ac60048036038101906101a79190611b45565b610522565b6040516101b99190611ba0565b60405180910390f35b3480156101ce57600080fd5b506101d7610614565b6040516101e491906119e9565b60405180910390f35b3480156101f957600080fd5b50610214600480360381019061020f9190611bbb565b61061e565b6040516102219190611ba0565b60405180910390f35b34801561023657600080fd5b50610251600480360381019061024c9190611c0e565b61081e565b60405161025e9190611ba0565b60405180910390f35b34801561027357600080fd5b5061027c610877565b6040516102899190611c57565b60405180910390f35b34801561029e57600080fd5b506102b960048036038101906102b49190611c72565b610880565b005b3480156102c757600080fd5b506102e260048036038101906102dd9190611c72565b610916565b005b3480156102f057600080fd5b506102f96109c4565b60405161030691906119e9565b60405180910390f35b34801561031b57600080fd5b506103246109ca565b6040516103319190611ba0565b60405180910390f35b34801561034657600080fd5b50610361600480360381019061035c9190611c0e565b6109dd565b60405161036e91906119e9565b60405180910390f35b34801561038357600080fd5b5061038c610a26565b005b34801561039a57600080fd5b506103a3610ae9565b6040516103b09190611cae565b60405180910390f35b3480156103c557600080fd5b506103ce610b12565b6040516103db9190611a94565b60405180910390f35b3480156103f057600080fd5b506103f9610b4f565b6040516104069190611cae565b60405180910390f35b34801561041b57600080fd5b5061043660048036038101906104319190611b45565b610b75565b6040516104439190611ba0565b60405180910390f35b34801561045857600080fd5b50610461610b8a565b60405161046e9190611cae565b60405180910390f35b34801561048357600080fd5b5061049e60048036038101906104999190611cc9565b610bb0565b6040516104ab91906119e9565b60405180910390f35b3480156104c057600080fd5b506104c9610c37565b6040516104d69190611d68565b60405180910390f35b600d5481565b60606040518060400160405280600e81526020017f426c616b6533204e6574776f726b000000000000000000000000000000000000815250905090565b600081600660003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508273ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b9258460405161060291906119e9565b60405180910390a36001905092915050565b6000600354905090565b60007fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff600660008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020541461080a57610789826040518060400160405280601681526020017f496e73756666696369656e7420416c6c6f77616e636500000000000000000000815250600660008873ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054610c5d9092919063ffffffff16565b600660008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055505b610815848484610cc1565b90509392505050565b60008060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff16149050919050565b60006009905090565b6108893361081e565b6108c8576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016108bf90611dcf565b60405180910390fd5b600a81111561090c576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161090390611e3b565b60405180910390fd5b8060098190555050565b61091f3361081e565b61095e576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161095590611dcf565b60405180910390fd5b60648103610992577fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff6004819055506109c1565b6109ba60646109ac8360035461108a90919063ffffffff16565b61110490919063ffffffff16565b6004819055505b50565b60045481565b600c60149054906101000a900460ff1681565b6000600560008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020549050919050565b610a2f3361081e565b610a6e576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610a6590611dcf565b60405180910390fd5b60008060006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055507f04dba622d284ed0014ee4b9a6a68386be1a4c08a4913ae272de89199cc6861636000604051610adf9190611cae565b60405180910390a1565b60008060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16905090565b60606040518060400160405280600281526020017f4233000000000000000000000000000000000000000000000000000000000000815250905090565b600c60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b6000610b82338484610cc1565b905092915050565b600a60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b6000600660008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054905092915050565b600b60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b6000838311158290610ca5576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610c9c9190611a94565b60405180910390fd5b5060008385610cb49190611e8a565b9050809150509392505050565b6000600e60009054906101000a900460ff1615610cea57610ce384848461114e565b9050611083565b600c60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1614158015610d965750600260009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1614155b15610e7f57600860008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff1680610e3f575060045482600560008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054610e3c9190611ebe565b11155b610e7e576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610e7590611f64565b60405180910390fd5b5b610e87611321565b15610e9557610e946113f8565b5b610f1e826040518060400160405280601481526020017f496e73756666696369656e742042616c616e6365000000000000000000000000815250600560008873ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054610c5d9092919063ffffffff16565b600560008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055506000610f6c8561172b565b610f765782610f81565b610f808584611782565b5b9050610fd581600560008773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020546118c590919063ffffffff16565b600560008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508373ffffffffffffffffffffffffffffffffffffffff168573ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef8360405161107591906119e9565b60405180910390a360019150505b9392505050565b600080830361109c57600090506110fe565b600082846110aa9190611f84565b90508284826110b99190611ff5565b146110f9576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016110f090612098565b60405180910390fd5b809150505b92915050565b600061114683836040518060400160405280601a81526020017f536166654d6174683a206469766973696f6e206279207a65726f000000000000815250611923565b905092915050565b60006111d9826040518060400160405280601481526020017f496e73756666696369656e742042616c616e6365000000000000000000000000815250600560008873ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054610c5d9092919063ffffffff16565b600560008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000208190555061126e82600560008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020546118c590919063ffffffff16565b600560008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508273ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef8460405161130e91906119e9565b60405180910390a3600190509392505050565b6000600c60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff161415801561138e5750600e60009054906101000a900460ff16155b80156113a65750600c60149054906101000a900460ff165b80156113f35750600d54600560003073ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205410155b905090565b6001600e60006101000a81548160ff0219169083151502179055506000600d54905060008190506000600267ffffffffffffffff81111561143c5761143b6120b8565b5b60405190808252806020026020018201604052801561146a5781602001602082028036833780820191505090505b5090503081600081518110611482576114816120e7565b5b602002602001019073ffffffffffffffffffffffffffffffffffffffff16908173ffffffffffffffffffffffffffffffffffffffff1681525050600b60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663ad5c46486040518163ffffffff1660e01b8152600401602060405180830381865afa158015611529573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061154d919061212b565b81600181518110611561576115606120e7565b5b602002602001019073ffffffffffffffffffffffffffffffffffffffff16908173ffffffffffffffffffffffffffffffffffffffff1681525050600b60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663791ac9478360008430426040518663ffffffff1660e01b81526004016115ff959493929190612251565b600060405180830381600087803b15801561161957600080fd5b505af115801561162d573d6000803e3d6000fd5b5050505060004790506000600a60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168261753090604051611682906122dc565b600060405180830381858888f193505050503d80600081146116c0576040519150601f19603f3d011682016040523d82523d6000602084013e6116c5565b606091505b5050905080611709576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016117009061233d565b60405180910390fd5b50505050506000600e60006101000a81548160ff021916908315150217905550565b6000600760008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff16159050919050565b6000806117ad606461179f6009548661108a90919063ffffffff16565b61110490919063ffffffff16565b905061180181600560003073ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020546118c590919063ffffffff16565b600560003073ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055503073ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef836040516118a191906119e9565b60405180910390a36118bc818461198690919063ffffffff16565b91505092915050565b60008082846118d49190611ebe565b905083811015611919576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611910906123a9565b60405180910390fd5b8091505092915050565b6000808311829061196a576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016119619190611a94565b60405180910390fd5b50600083856119799190611ff5565b9050809150509392505050565b60006119c883836040518060400160405280601e81526020017f536166654d6174683a207375627472616374696f6e206f766572666c6f770000815250610c5d565b905092915050565b6000819050919050565b6119e3816119d0565b82525050565b60006020820190506119fe60008301846119da565b92915050565b600081519050919050565b600082825260208201905092915050565b60005b83811015611a3e578082015181840152602081019050611a23565b60008484015250505050565b6000601f19601f8301169050919050565b6000611a6682611a04565b611a708185611a0f565b9350611a80818560208601611a20565b611a8981611a4a565b840191505092915050565b60006020820190508181036000830152611aae8184611a5b565b905092915050565b600080fd5b600073ffffffffffffffffffffffffffffffffffffffff82169050919050565b6000611ae682611abb565b9050919050565b611af681611adb565b8114611b0157600080fd5b50565b600081359050611b1381611aed565b92915050565b611b22816119d0565b8114611b2d57600080fd5b50565b600081359050611b3f81611b19565b92915050565b60008060408385031215611b5c57611b5b611ab6565b5b6000611b6a85828601611b04565b9250506020611b7b85828601611b30565b9150509250929050565b60008115159050919050565b611b9a81611b85565b82525050565b6000602082019050611bb56000830184611b91565b92915050565b600080600060608486031215611bd457611bd3611ab6565b5b6000611be286828701611b04565b9350506020611bf386828701611b04565b9250506040611c0486828701611b30565b9150509250925092565b600060208284031215611c2457611c23611ab6565b5b6000611c3284828501611b04565b91505092915050565b600060ff82169050919050565b611c5181611c3b565b82525050565b6000602082019050611c6c6000830184611c48565b92915050565b600060208284031215611c8857611c87611ab6565b5b6000611c9684828501611b30565b91505092915050565b611ca881611adb565b82525050565b6000602082019050611cc36000830184611c9f565b92915050565b60008060408385031215611ce057611cdf611ab6565b5b6000611cee85828601611b04565b9250506020611cff85828601611b04565b9150509250929050565b6000819050919050565b6000611d2e611d29611d2484611abb565b611d09565b611abb565b9050919050565b6000611d4082611d13565b9050919050565b6000611d5282611d35565b9050919050565b611d6281611d47565b82525050565b6000602082019050611d7d6000830184611d59565b92915050565b7f214f574e45520000000000000000000000000000000000000000000000000000600082015250565b6000611db9600683611a0f565b9150611dc482611d83565b602082019050919050565b60006020820190508181036000830152611de881611dac565b9050919050565b7f4d757374206b656570206665657320617420313025206f72206c657373000000600082015250565b6000611e25601d83611a0f565b9150611e3082611def565b602082019050919050565b60006020820190508181036000830152611e5481611e18565b9050919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b6000611e95826119d0565b9150611ea0836119d0565b9250828203905081811115611eb857611eb7611e5b565b5b92915050565b6000611ec9826119d0565b9150611ed4836119d0565b9250828201905080821115611eec57611eeb611e5b565b5b92915050565b7f5472616e7366657220616d6f756e74206578636565647320746865206261672060008201527f73697a652e000000000000000000000000000000000000000000000000000000602082015250565b6000611f4e602583611a0f565b9150611f5982611ef2565b604082019050919050565b60006020820190508181036000830152611f7d81611f41565b9050919050565b6000611f8f826119d0565b9150611f9a836119d0565b9250828202611fa8816119d0565b91508282048414831517611fbf57611fbe611e5b565b5b5092915050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601260045260246000fd5b6000612000826119d0565b915061200b836119d0565b92508261201b5761201a611fc6565b5b828204905092915050565b7f536166654d6174683a206d756c7469706c69636174696f6e206f766572666c6f60008201527f7700000000000000000000000000000000000000000000000000000000000000602082015250565b6000612082602183611a0f565b915061208d82612026565b604082019050919050565b600060208201905081810360008301526120b181612075565b9050919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b60008151905061212581611aed565b92915050565b60006020828403121561214157612140611ab6565b5b600061214f84828501612116565b91505092915050565b6000819050919050565b600061217d61217861217384612158565b611d09565b6119d0565b9050919050565b61218d81612162565b82525050565b600081519050919050565b600082825260208201905092915050565b6000819050602082019050919050565b6121c881611adb565b82525050565b60006121da83836121bf565b60208301905092915050565b6000602082019050919050565b60006121fe82612193565b612208818561219e565b9350612213836121af565b8060005b8381101561224457815161222b88826121ce565b9750612236836121e6565b925050600181019050612217565b5085935050505092915050565b600060a08201905061226660008301886119da565b6122736020830187612184565b818103604083015261228581866121f3565b90506122946060830185611c9f565b6122a160808301846119da565b9695505050505050565b600081905092915050565b50565b60006122c66000836122ab565b91506122d1826122b6565b600082019050919050565b60006122e7826122b9565b9150819050919050565b7f72656365697665722072656a656374656420455448207472616e736665720000600082015250565b6000612327601e83611a0f565b9150612332826122f1565b602082019050919050565b600060208201905081810360008301526123568161231a565b9050919050565b7f536166654d6174683a206164646974696f6e206f766572666c6f770000000000600082015250565b6000612393601b83611a0f565b915061239e8261235d565b602082019050919050565b600060208201905081810360008301526123c281612386565b905091905056fea264697066735822122073d5283c1396240d7f35ea7039d805b97c9ba6320492b4be3f8e6f5a9720423e64736f6c63430008130033

Deployed Bytecode Sourcemap

4633:6606:0:-:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;5479:57;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;6518:94;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;7043:248;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;6200:102;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;7495:424;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;2625:103;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;6310:94;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;9456:139;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;9603:257;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;5030:61;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;5442:30;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;6720:119;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;2738:131;;;;;;;;;;;;;:::i;:::-;;6620:92;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;6412:98;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;5416:19;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;7299:188;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;5344:34;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;6847:188;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;5385:24;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;5479:57;;;;:::o;6518:94::-;6566:13;6599:5;;;;;;;;;;;;;;;;;6592:12;;6518:94;:::o;7043:248::-;7145:4;7202:6;7167:11;:23;7179:10;7167:23;;;;;;;;;;;;;;;:32;7191:7;7167:32;;;;;;;;;;;;;;;:41;;;;7245:7;7224:37;;7233:10;7224:37;;;7254:6;7224:37;;;;;;:::i;:::-;;;;;;;;7279:4;7272:11;;7043:248;;;;:::o;6200:102::-;6255:7;6282:12;;6275:19;;6200:102;:::o;7495:424::-;7629:4;7685:17;7650:11;:19;7662:6;7650:19;;;;;;;;;;;;;;;:31;7670:10;7650:31;;;;;;;;;;;;;;;;:52;7646:206;;7753:87;7807:6;7753:87;;;;;;;;;;;;;;;;;:11;:19;7765:6;7753:19;;;;;;;;;;;;;;;:31;7773:10;7753:31;;;;;;;;;;;;;;;;:53;;:87;;;;;:::i;:::-;7719:11;:19;7731:6;7719:19;;;;;;;;;;;;;;;:31;7739:10;7719:31;;;;;;;;;;;;;;;:121;;;;7646:206;7871:40;7885:6;7893:9;7904:6;7871:13;:40::i;:::-;7864:47;;7495:424;;;;;:::o;2625:103::-;2680:4;2715:5;;;;;;;;;;;2704:16;;:7;:16;;;2697:23;;2625:103;;;:::o;6310:94::-;6362:5;4963:1;6380:16;;6310:94;:::o;9456:139::-;2567:19;2575:10;2567:7;:19::i;:::-;2559:38;;;;;;;;;;;;:::i;:::-;;;;;;;;;9532:2:::1;9525:3;:9;;9517:51;;;;;;;;;;;;:::i;:::-;;;;;;;;;9584:3;9579:2;:8;;;;9456:139:::0;:::o;9603:257::-;2567:19;2575:10;2567:7;:19::i;:::-;2559:38;;;;;;;;;;;;:::i;:::-;;;;;;;;;9695:3:::1;9680:11;:18:::0;9676:177:::1;;9734:17;9715:16;:36;;;;9676:177;;;9803:38;9837:3;9803:29;9820:11;9803:12;;:16;;:29;;;;:::i;:::-;:33;;:38;;;;:::i;:::-;9784:16;:57;;;;9676:177;9603:257:::0;:::o;5030:61::-;;;;:::o;5442:30::-;;;;;;;;;;;;;:::o;6720:119::-;6786:7;6813:9;:18;6823:7;6813:18;;;;;;;;;;;;;;;;6806:25;;6720:119;;;:::o;2738:131::-;2567:19;2575:10;2567:7;:19::i;:::-;2559:38;;;;;;;;;;;;:::i;:::-;;;;;;;;;2811:1:::1;2795:5:::0;::::1;:18;;;;;;;;;;;;;;;;;;2829:32;2858:1;2829:32;;;;;;:::i;:::-;;;;;;;;2738:131::o:0;6620:92::-;6672:7;6699:5;;;;;;;;;;;6692:12;;6620:92;:::o;6412:98::-;6462:13;6495:7;;;;;;;;;;;;;;;;;6488:14;;6412:98;:::o;5416:19::-;;;;;;;;;;;;;:::o;7299:188::-;7406:4;7435:44;7449:10;7461:9;7472:6;7435:13;:44::i;:::-;7428:51;;7299:188;;;;:::o;5344:34::-;;;;;;;;;;;;;:::o;6847:188::-;6967:7;6999:11;:19;7011:6;6999:19;;;;;;;;;;;;;;;:28;7019:7;6999:28;;;;;;;;;;;;;;;;6992:35;;6847:188;;;;:::o;5385:24::-;;;;;;;;;;;;;:::o;492:224::-;612:7;645:1;640;:6;;648:12;632:29;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;672:9;688:1;684;:5;;;;:::i;:::-;672:17;;707:1;700:8;;;492:224;;;;;:::o;7927:990::-;8053:4;8074:6;;;;;;;;;;;8070:87;;;8104:41;8119:6;8127:9;8138:6;8104:14;:41::i;:::-;8097:48;;;;8070:87;8186:4;;;;;;;;;;;8173:17;;:9;:17;;;;:38;;;;;8207:4;;;;;;;;;;;8194:17;;:9;:17;;;;8173:38;8169:270;;;8254:15;:26;8270:9;8254:26;;;;;;;;;;;;;;;;;;;;;;;;;:100;;;;8338:16;;8328:6;8305:9;:20;8315:9;8305:20;;;;;;;;;;;;;;;;:29;;;;:::i;:::-;:49;;8254:100;8228:199;;;;;;;;;;;;:::i;:::-;;;;;;;;;8169:270;8455:16;:14;:16::i;:::-;8451:59;;;8488:10;:8;:10::i;:::-;8451:59;8542:90;8578:6;8542:90;;;;;;;;;;;;;;;;;:9;:17;8552:6;8542:17;;;;;;;;;;;;;;;;:21;;:90;;;;;:::i;:::-;8522:9;:17;8532:6;8522:17;;;;;;;;;;;;;;;:110;;;;8645:22;8670:21;8684:6;8670:13;:21::i;:::-;:82;;8746:6;8670:82;;;8707:23;8715:6;8723;8707:7;:23::i;:::-;8670:82;8645:107;;8786:40;8811:14;8786:9;:20;8796:9;8786:20;;;;;;;;;;;;;;;;:24;;:40;;;;:::i;:::-;8763:9;:20;8773:9;8763:20;;;;;;;;;;;;;;;:63;;;;8861:9;8844:43;;8853:6;8844:43;;;8872:14;8844:43;;;;;;:::i;:::-;;;;;;;;8905:4;8898:11;;;7927:990;;;;;;:::o;724:246::-;782:7;811:1;806;:6;802:47;;836:1;829:8;;;;802:47;859:9;875:1;871;:5;;;;:::i;:::-;859:17;;904:1;899;895;:5;;;;:::i;:::-;:10;887:56;;;;;;;;;;;;:::i;:::-;;;;;;;;;961:1;954:8;;;724:246;;;;;:::o;978:132::-;1036:7;1063:39;1067:1;1070;1063:39;;;;;;;;;;;;;;;;;:3;:39::i;:::-;1056:46;;978:132;;;;:::o;8925:401::-;9052:4;9089:90;9125:6;9089:90;;;;;;;;;;;;;;;;;:9;:17;9099:6;9089:17;;;;;;;;;;;;;;;;:21;;:90;;;;;:::i;:::-;9069:9;:17;9079:6;9069:17;;;;;;;;;;;;;;;:110;;;;9213:32;9238:6;9213:9;:20;9223:9;9213:20;;;;;;;;;;;;;;;;:24;;:32;;;;:::i;:::-;9190:9;:20;9200:9;9190:20;;;;;;;;;;;;;;;:55;;;;9278:9;9261:35;;9270:6;9261:35;;;9289:6;9261:35;;;;;;:::i;:::-;;;;;;;;9314:4;9307:11;;8925:401;;;;;:::o;10211:222::-;10260:4;10311;;;;;;;;;;;10297:18;;:10;:18;;;;:42;;;;;10333:6;;;;;;;;;;;10332:7;10297:42;:70;;;;;10356:11;;;;;;;;;;;10297:70;:128;;;;;10412:13;;10384:9;:24;10402:4;10384:24;;;;;;;;;;;;;;;;:41;;10297:128;10277:148;;10211:222;:::o;10441:795::-;5601:4;5592:6;;:13;;;;;;;;;;;;;;;;;;10490:28:::1;10521:13;;10490:44;;10545:20;10568;10545:43;;10601:21;10639:1;10625:16;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;10601:40;;10670:4;10652;10657:1;10652:7;;;;;;;;:::i;:::-;;;;;;;:23;;;;;;;;;::::0;::::1;10696:6;;;;;;;;;;;:11;;;:13;;;;;;;;;;;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;10686:4;10691:1;10686:7;;;;;;;;:::i;:::-;;;;;;;:23;;;;;;;;;::::0;::::1;10722:6;;;;;;;;;;;:57;;;10794:12;10821:1;10837:4;10864;10884:15;10722:188;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;::::0;::::1;;;;;;;;;10923:26;10952:21;10923:50;;11001:21;11071:6;;;;;;;;;;;11063:20;;11091:18;11116:5;11063:95;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;10986:172;;;11177:16;11169:59;;;;;;;;;;;;:::i;:::-;;;;;;;;;10479:757;;;;;5637:5:::0;5628:6;;:14;;;;;;;;;;;;;;;;;;10441:795::o;9334:114::-;9396:4;9421:11;:19;9433:6;9421:19;;;;;;;;;;;;;;;;;;;;;;;;;9420:20;9413:27;;9334:114;;;:::o;9868:335::-;9953:7;9978:17;9998:23;10017:3;9998:14;10009:2;;9998:6;:10;;:14;;;;:::i;:::-;:18;;:23;;;;:::i;:::-;9978:43;;10059:39;10088:9;10059;:24;10077:4;10059:24;;;;;;;;;;;;;;;;:28;;:39;;;;:::i;:::-;10032:9;:24;10050:4;10032:24;;;;;;;;;;;;;;;:66;;;;10139:4;10114:42;;10123:6;10114:42;;;10146:9;10114:42;;;;;;:::i;:::-;;;;;;;;10174:21;10185:9;10174:6;:10;;:21;;;;:::i;:::-;10167:28;;;9868:335;;;;:::o;161:179::-;219:7;239:9;255:1;251;:5;;;;:::i;:::-;239:17;;280:1;275;:6;;267:46;;;;;;;;;;;;:::i;:::-;;;;;;;;;331:1;324:8;;;161:179;;;;:::o;1118:223::-;1238:7;1270:1;1266;:5;1273:12;1258:28;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;1297:9;1313:1;1309;:5;;;;:::i;:::-;1297:17;;1332:1;1325:8;;;1118:223;;;;;:::o;348:136::-;406:7;433:43;437:1;440;433:43;;;;;;;;;;;;;;;;;:3;:43::i;:::-;426:50;;348:136;;;;:::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:329::-;5247:6;5296:2;5284:9;5275:7;5271:23;5267:32;5264:119;;;5302:79;;:::i;:::-;5264:119;5422:1;5447:53;5492:7;5483:6;5472:9;5468:22;5447:53;:::i;:::-;5437:63;;5393:117;5188:329;;;;:::o;5523:118::-;5610:24;5628:5;5610:24;:::i;:::-;5605:3;5598:37;5523:118;;:::o;5647:222::-;5740:4;5778:2;5767:9;5763:18;5755:26;;5791:71;5859:1;5848:9;5844:17;5835:6;5791:71;:::i;:::-;5647:222;;;;:::o;5875:474::-;5943:6;5951;6000:2;5988:9;5979:7;5975:23;5971:32;5968:119;;;6006:79;;:::i;:::-;5968:119;6126:1;6151:53;6196:7;6187:6;6176:9;6172:22;6151:53;:::i;:::-;6141:63;;6097:117;6253:2;6279:53;6324:7;6315:6;6304:9;6300:22;6279:53;:::i;:::-;6269:63;;6224:118;5875:474;;;;;:::o;6355:60::-;6383:3;6404:5;6397:12;;6355:60;;;:::o;6421:142::-;6471:9;6504:53;6522:34;6531:24;6549:5;6531:24;:::i;:::-;6522:34;:::i;:::-;6504:53;:::i;:::-;6491:66;;6421:142;;;:::o;6569:126::-;6619:9;6652:37;6683:5;6652:37;:::i;:::-;6639:50;;6569:126;;;:::o;6701:144::-;6769:9;6802:37;6833:5;6802:37;:::i;:::-;6789:50;;6701:144;;;:::o;6851:167::-;6956:55;7005:5;6956:55;:::i;:::-;6951:3;6944:68;6851:167;;:::o;7024:258::-;7135:4;7173:2;7162:9;7158:18;7150:26;;7186:89;7272:1;7261:9;7257:17;7248:6;7186:89;:::i;:::-;7024:258;;;;:::o;7288:156::-;7428:8;7424:1;7416:6;7412:14;7405:32;7288:156;:::o;7450:365::-;7592:3;7613:66;7677:1;7672:3;7613:66;:::i;:::-;7606:73;;7688:93;7777:3;7688:93;:::i;:::-;7806:2;7801:3;7797:12;7790:19;;7450:365;;;:::o;7821:419::-;7987:4;8025:2;8014:9;8010:18;8002:26;;8074:9;8068:4;8064:20;8060:1;8049:9;8045:17;8038:47;8102:131;8228:4;8102:131;:::i;:::-;8094:139;;7821:419;;;:::o;8246:179::-;8386:31;8382:1;8374:6;8370:14;8363:55;8246:179;:::o;8431:366::-;8573:3;8594:67;8658:2;8653:3;8594:67;:::i;:::-;8587:74;;8670:93;8759:3;8670:93;:::i;:::-;8788:2;8783:3;8779:12;8772:19;;8431:366;;;:::o;8803:419::-;8969:4;9007:2;8996:9;8992:18;8984:26;;9056:9;9050:4;9046:20;9042:1;9031:9;9027:17;9020:47;9084:131;9210:4;9084:131;:::i;:::-;9076:139;;8803:419;;;:::o;9228:180::-;9276:77;9273:1;9266:88;9373:4;9370:1;9363:15;9397:4;9394:1;9387:15;9414:194;9454:4;9474:20;9492:1;9474:20;:::i;:::-;9469:25;;9508:20;9526:1;9508:20;:::i;:::-;9503:25;;9552:1;9549;9545:9;9537:17;;9576:1;9570:4;9567:11;9564:37;;;9581:18;;:::i;:::-;9564:37;9414:194;;;;:::o;9614:191::-;9654:3;9673:20;9691:1;9673:20;:::i;:::-;9668:25;;9707:20;9725:1;9707:20;:::i;:::-;9702:25;;9750:1;9747;9743:9;9736:16;;9771:3;9768:1;9765:10;9762:36;;;9778:18;;:::i;:::-;9762:36;9614:191;;;;:::o;9811:224::-;9951:34;9947:1;9939:6;9935:14;9928:58;10020:7;10015:2;10007:6;10003:15;9996:32;9811:224;:::o;10041:366::-;10183:3;10204:67;10268:2;10263:3;10204:67;:::i;:::-;10197:74;;10280:93;10369:3;10280:93;:::i;:::-;10398:2;10393:3;10389:12;10382:19;;10041:366;;;:::o;10413:419::-;10579:4;10617:2;10606:9;10602:18;10594:26;;10666:9;10660:4;10656:20;10652:1;10641:9;10637:17;10630:47;10694:131;10820:4;10694:131;:::i;:::-;10686:139;;10413:419;;;:::o;10838:410::-;10878:7;10901:20;10919:1;10901:20;:::i;:::-;10896:25;;10935:20;10953:1;10935:20;:::i;:::-;10930:25;;10990:1;10987;10983:9;11012:30;11030:11;11012:30;:::i;:::-;11001:41;;11191:1;11182:7;11178:15;11175:1;11172:22;11152:1;11145:9;11125:83;11102:139;;11221:18;;:::i;:::-;11102:139;10886:362;10838:410;;;;:::o;11254:180::-;11302:77;11299:1;11292:88;11399:4;11396:1;11389:15;11423:4;11420:1;11413:15;11440:185;11480:1;11497:20;11515:1;11497:20;:::i;:::-;11492:25;;11531:20;11549:1;11531:20;:::i;:::-;11526:25;;11570:1;11560:35;;11575:18;;:::i;:::-;11560:35;11617:1;11614;11610:9;11605:14;;11440:185;;;;:::o;11631:220::-;11771:34;11767:1;11759:6;11755:14;11748:58;11840:3;11835:2;11827:6;11823:15;11816:28;11631:220;:::o;11857:366::-;11999:3;12020:67;12084:2;12079:3;12020:67;:::i;:::-;12013:74;;12096:93;12185:3;12096:93;:::i;:::-;12214:2;12209:3;12205:12;12198:19;;11857:366;;;:::o;12229:419::-;12395:4;12433:2;12422:9;12418:18;12410:26;;12482:9;12476:4;12472:20;12468:1;12457:9;12453:17;12446:47;12510:131;12636:4;12510:131;:::i;:::-;12502:139;;12229:419;;;:::o;12654:180::-;12702:77;12699:1;12692:88;12799:4;12796:1;12789:15;12823:4;12820:1;12813:15;12840:180;12888:77;12885:1;12878:88;12985:4;12982:1;12975:15;13009:4;13006:1;12999:15;13026:143;13083:5;13114:6;13108:13;13099:22;;13130:33;13157:5;13130:33;:::i;:::-;13026:143;;;;:::o;13175:351::-;13245:6;13294:2;13282:9;13273:7;13269:23;13265:32;13262:119;;;13300:79;;:::i;:::-;13262:119;13420:1;13445:64;13501:7;13492:6;13481:9;13477:22;13445:64;:::i;:::-;13435:74;;13391:128;13175:351;;;;:::o;13532:85::-;13577:7;13606:5;13595:16;;13532:85;;;:::o;13623:158::-;13681:9;13714:61;13732:42;13741:32;13767:5;13741:32;:::i;:::-;13732:42;:::i;:::-;13714:61;:::i;:::-;13701:74;;13623:158;;;:::o;13787:147::-;13882:45;13921:5;13882:45;:::i;:::-;13877:3;13870:58;13787:147;;:::o;13940:114::-;14007:6;14041:5;14035:12;14025:22;;13940:114;;;:::o;14060:184::-;14159:11;14193:6;14188:3;14181:19;14233:4;14228:3;14224:14;14209:29;;14060:184;;;;:::o;14250:132::-;14317:4;14340:3;14332:11;;14370:4;14365:3;14361:14;14353:22;;14250:132;;;:::o;14388:108::-;14465:24;14483:5;14465:24;:::i;:::-;14460:3;14453:37;14388:108;;:::o;14502:179::-;14571:10;14592:46;14634:3;14626:6;14592:46;:::i;:::-;14670:4;14665:3;14661:14;14647:28;;14502:179;;;;:::o;14687:113::-;14757:4;14789;14784:3;14780:14;14772:22;;14687:113;;;:::o;14836:732::-;14955:3;14984:54;15032:5;14984:54;:::i;:::-;15054:86;15133:6;15128:3;15054:86;:::i;:::-;15047:93;;15164:56;15214:5;15164:56;:::i;:::-;15243:7;15274:1;15259:284;15284:6;15281:1;15278:13;15259:284;;;15360:6;15354:13;15387:63;15446:3;15431:13;15387:63;:::i;:::-;15380:70;;15473:60;15526:6;15473:60;:::i;:::-;15463:70;;15319:224;15306:1;15303;15299:9;15294:14;;15259:284;;;15263:14;15559:3;15552:10;;14960:608;;;14836:732;;;;:::o;15574:831::-;15837:4;15875:3;15864:9;15860:19;15852:27;;15889:71;15957:1;15946:9;15942:17;15933:6;15889:71;:::i;:::-;15970:80;16046:2;16035:9;16031:18;16022:6;15970:80;:::i;:::-;16097:9;16091:4;16087:20;16082:2;16071:9;16067:18;16060:48;16125:108;16228:4;16219:6;16125:108;:::i;:::-;16117:116;;16243:72;16311:2;16300:9;16296:18;16287:6;16243:72;:::i;:::-;16325:73;16393:3;16382:9;16378:19;16369:6;16325:73;:::i;:::-;15574:831;;;;;;;;:::o;16411:147::-;16512:11;16549:3;16534:18;;16411:147;;;;:::o;16564:114::-;;:::o;16684:398::-;16843:3;16864:83;16945:1;16940:3;16864:83;:::i;:::-;16857:90;;16956:93;17045:3;16956:93;:::i;:::-;17074:1;17069:3;17065:11;17058:18;;16684:398;;;:::o;17088:379::-;17272:3;17294:147;17437:3;17294:147;:::i;:::-;17287:154;;17458:3;17451:10;;17088:379;;;:::o;17473:180::-;17613:32;17609:1;17601:6;17597:14;17590:56;17473:180;:::o;17659:366::-;17801:3;17822:67;17886:2;17881:3;17822:67;:::i;:::-;17815:74;;17898:93;17987:3;17898:93;:::i;:::-;18016:2;18011:3;18007:12;18000:19;;17659:366;;;:::o;18031:419::-;18197:4;18235:2;18224:9;18220:18;18212:26;;18284:9;18278:4;18274:20;18270:1;18259:9;18255:17;18248:47;18312:131;18438:4;18312:131;:::i;:::-;18304:139;;18031:419;;;:::o;18456:177::-;18596:29;18592:1;18584:6;18580:14;18573:53;18456:177;:::o;18639:366::-;18781:3;18802:67;18866:2;18861:3;18802:67;:::i;:::-;18795:74;;18878:93;18967:3;18878:93;:::i;:::-;18996:2;18991:3;18987:12;18980:19;;18639:366;;;:::o;19011:419::-;19177:4;19215:2;19204:9;19200:18;19192:26;;19264:9;19258:4;19254:20;19250:1;19239:9;19235:17;19228:47;19292:131;19418:4;19292:131;:::i;:::-;19284:139;;19011:419;;;:::o

Swarm Source

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