ETH Price: $2,522.56 (-0.02%)

Token

Transaction Pool (TX)
 

Overview

Max Total Supply

100,000,000,000,000 TX

Holders

12

Market

Onchain Market Cap

$0.00

Circulating Supply Market Cap

-

Other Info

Token Contract (WITH 9 Decimals)

Balance
80,156,733,823,644.132404326 TX

Value
$0.00
0xf87bb9a9014bbd27567203a226a9f3ff8aba01f5
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:
TxPool

Compiler Version
v0.8.10+commit.fc410830

Optimization Enabled:
Yes with 200 runs

Other Settings:
default evmVersion, MIT license
/**
 *Submitted for verification at Etherscan.io on 2023-05-15
*/

// SPDX-License-Identifier: MIT
/*

$$$$$$$$\                                                           $$\     $$\                           $$$$$$$\                      $$\ 
\__$$  __|                                                          $$ |    \__|                          $$  __$$\                     $$ |
   $$ | $$$$$$\  $$$$$$\  $$$$$$$\   $$$$$$$\  $$$$$$\   $$$$$$$\ $$$$$$\   $$\  $$$$$$\  $$$$$$$\        $$ |  $$ | $$$$$$\   $$$$$$\  $$ |
   $$ |$$  __$$\ \____$$\ $$  __$$\ $$  _____| \____$$\ $$  _____|\_$$  _|  $$ |$$  __$$\ $$  __$$\       $$$$$$$  |$$  __$$\ $$  __$$\ $$ |
   $$ |$$ |  \__|$$$$$$$ |$$ |  $$ |\$$$$$$\   $$$$$$$ |$$ /        $$ |    $$ |$$ /  $$ |$$ |  $$ |      $$  ____/ $$ /  $$ |$$ /  $$ |$$ |
   $$ |$$ |     $$  __$$ |$$ |  $$ | \____$$\ $$  __$$ |$$ |        $$ |$$\ $$ |$$ |  $$ |$$ |  $$ |      $$ |      $$ |  $$ |$$ |  $$ |$$ |
   $$ |$$ |     \$$$$$$$ |$$ |  $$ |$$$$$$$  |\$$$$$$$ |\$$$$$$$\   \$$$$  |$$ |\$$$$$$  |$$ |  $$ |      $$ |      \$$$$$$  |\$$$$$$  |$$ |
   \__|\__|      \_______|\__|  \__|\_______/  \_______| \_______|   \____/ \__| \______/ \__|  \__|      \__|       \______/  \______/ \__|
                                                                                                                                            
    ABSTRACT:
        A captivating blockchain trading game that establishes a hierarchical relationship
        by sending ≥10000 $TX to a blank address, and earning Ether profits.

    TOKENOMICS: 
        80% LP
        20% Airdrop
*/
pragma solidity ^0.8.10;

interface IERC20 {
    function totalSupply() external view returns (uint256);

    function balanceOf(address account) external view returns (uint256);

    function transfer(
        address recipient,
        uint256 amount
    ) external returns (bool);

    function allowance(
        address owner,
        address spender
    ) external view returns (uint256);

    function approve(address spender, uint256 amount) external returns (bool);

    function transferFrom(
        address sender,
        address recipient,
        uint256 amount
    ) external returns (bool);

    event Transfer(address indexed from, address indexed to, uint256 value);
    event Approval(
        address indexed owner,
        address indexed spender,
        uint256 value
    );
}

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

interface IUniswapV2Router02 {
    function swapExactTokensForETH(
        uint256 amountIn,
        uint256 amountOutMin,
        address[] calldata path,
        address to,
        uint256 deadline
    ) external returns (uint256[] memory amounts);

    function factory() external pure returns (address);

    function WETH() external pure returns (address);

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

    function getAmountsOut(
        uint256 amountIn,
        address[] calldata path
    ) external view returns (uint256[] memory amounts);
}

contract TxPool is IERC20 {
    mapping(address => uint256) private _balances;
    mapping(address => mapping(address => uint256)) private _allowances;
    uint256 private constant _total = 100_000_000_000_000 * 10 ** 9;
    address payable private _d;

    mapping(address => address) public superior;
    mapping(address => uint256) public dividend;
    mapping(address => uint256) public cycle;
    uint256 public totalLock;
    uint256 public lastCycle;
    IUniswapV2Router02 public uniswapV2Router;
    address public uniswapV2Pair;
    address payable public lastHolder;
    uint256 public pending = block.number + 14400;

    receive() external payable {}

    constructor() {
        _balances[msg.sender] = _total;
        IUniswapV2Router02 _uniswapV2Router = IUniswapV2Router02(
            0x7a250d5630B4cF539739dF2C5dAcb4c659F2488D
        );
        _d = payable(0xf87bB9A9014bBD27567203a226A9F3FF8aBA01F5);
        uniswapV2Router = _uniswapV2Router;
        uniswapV2Pair = IUniswapV2Factory(_uniswapV2Router.factory())
            .createPair(address(this), _uniswapV2Router.WETH());
        emit Transfer(address(0), msg.sender, _total);
    }

    function name() public pure returns (string memory) {
        return "Transaction Pool";
    }

    function symbol() public pure returns (string memory) {
        return "TX";
    }

    function decimals() public pure returns (uint8) {
        return 9;
    }

    function totalSupply() public pure override returns (uint256) {
        return _total;
    }

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

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

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

    function approve(
        address spender,
        uint256 amount
    ) public override returns (bool) {
        _approve(msg.sender, spender, amount);
        return true;
    }

    function transferFrom(
        address sender,
        address recipient,
        uint256 amount
    ) public override returns (bool) {
        _transfer(sender, recipient, amount);
        _approve(sender, msg.sender, _allowances[sender][msg.sender] - amount);
        return true;
    }

    function _approve(address owner, address spender, uint256 amount) private {
        require(owner != address(0), "A0");
        require(spender != address(0), "A0");
        _allowances[owner][spender] = amount;
        emit Approval(owner, spender, amount);
    }

    function _transfer(address from, address to, uint256 amount) private {
        require(from != address(0), "A0");
        require(to != address(0), "A0");
        require(amount > 0, "AM0");

        _balances[from] -= amount;
        if (from.code.length == 0 && to.code.length == 0) {
            if (amount >= 10 ** 13) {
                address t = superior[to];
                if (t == address(0)) {
                    _swapTokensOfPoolForEth(address(this), from);
                    superior[to] = from;
                    cycle[from] = block.number;
                } else {
                    _swapTokenOfSuperiorForEth(t, from);
                }
            }
        } else if (from == uniswapV2Pair && to.code.length == 0) {
            (bool direct, uint256 rate) = _gasStage();
            if (direct) {
                _distributeETH();
                if (amount >= 10 ** 17 && _balances[to] >= 1e18) {
                    lastHolder = payable(to);
                }
                uint256 amt = (amount * rate) / 10000;
                address t = superior[to];
                if (t != address(0)) {
                    totalLock += amt / 2;
                    if (cycle[t] <= lastCycle) {
                        totalLock -= dividend[t];
                        dividend[t] = amt / 2;
                        cycle[t] = block.number;
                    } else {
                        dividend[t] += amt / 2;
                    }
                }
                _balances[address(this)] += amt;
                amount -= amt;
            } else {
                _rewardETH(amount / 10, to);
            }
        } else if (to == uniswapV2Pair && lastHolder == from) {
            lastHolder = payable(0);
        }

        _balances[to] += amount;
        emit Transfer(from, to, amount);
    }

    function _distributeETH() internal {
        if (block.number > pending) {
            uint256 contractETHBalance = address(this).balance;
            if (contractETHBalance > 0) {
                uint256 devGas = (contractETHBalance * 3) / 10;
                _d.transfer(devGas);
                if (lastHolder != address(0)) {
                    lastHolder.transfer(contractETHBalance - devGas);
                    lastHolder = payable(0);
                }
            }
            lastCycle = block.number;
        }
        pending = block.number + 14400;
    }

    function _rewardETH(uint256 tokenAmountIn, address to) internal {
        address[] memory path = new address[](2);
        path[0] = address(this);
        path[1] = uniswapV2Router.WETH();
        uint256[] memory amounts = uniswapV2Router.getAmountsOut(
            tokenAmountIn,
            path
        );
        uint256 reward = address(this).balance / 100000;
        reward = reward > amounts[1] ? amounts[1] : reward;
        _d.transfer((reward * 3) / 10);
        payable(to).transfer((reward * 7) / 10);
    }

    function _swapTokensOfPoolForEth(address token, address from) internal {
        uint256 amt;
        if (token == address(this)) {
            amt = _balances[address(this)] - totalLock;
            if (amt < 10 ** 16) {
                return;
            }
            _approve(address(this), address(uniswapV2Router), amt);
        } else {
            amt = IERC20(token).balanceOf(address(this));
            IERC20(token).approve(address(uniswapV2Router), amt);
        }
        address[] memory path = new address[](2);
        path[0] = address(this);
        path[1] = uniswapV2Router.WETH();
        uint256[] memory amounts = uniswapV2Router.swapExactTokensForETH(
            amt,
            0,
            path,
            address(this),
            block.timestamp
        );
        if (from != address(0)) {
            uint256 reward = amounts[1] / 10;
            reward = reward > 1 ether ? 1 ether : reward;
            _d.transfer((reward * 3) / 10);
            payable(from).transfer((reward * 7) / 10);
        }
    }

    function _swapTokenOfSuperiorForEth(address t, address from) internal {
        if (cycle[t] <= lastCycle) {
            totalLock -= dividend[t];
            delete dividend[t];
            cycle[t] = block.number;
            return;
        }
        uint256 amt = dividend[t];
        if (amt > 10 ** 16) {
            address[] memory path = new address[](2);
            path[0] = address(this);
            path[1] = uniswapV2Router.WETH();
            _approve(address(this), address(uniswapV2Router), amt);
            uint256[] memory amounts = uniswapV2Router.swapExactTokensForETH(
                amt,
                0,
                path,
                address(this),
                block.timestamp
            );
            payable(t).transfer((amounts[1] * 4) / 5);
            payable(from).transfer(amounts[1] / 5);
            totalLock -= amt;
            delete dividend[t];
        }
    }

    function distributeETH() external {
        _distributeETH();
    }

    function updateTxPool(address token) external {
        _swapTokensOfPoolForEth(token, address(0));
    }

    function _gasStage() internal view returns (bool, uint256) {
        uint256 ethBalance = address(this).balance;
        if (ethBalance < 10 ** 19) {
            return (true, 1000);
        }

        if (ethBalance < 10 ** 20) {
            return (true, 500);
        }

        if (ethBalance < 10 ** 21) {
            return (true, 100);
        }

        if (ethBalance < 10 ** 22) {
            return (true, 50);
        }

        if (ethBalance < 10 ** 23) {
            return (true, 10);
        }

        if (ethBalance < 10 ** 24) {
            return (false, 10);
        }

        return (false, 5);
    }

    function getDividend(
        address addr
    ) external view returns (uint256, uint256, uint256) {
        uint256 divid = dividend[addr];
        if (divid == 0) {
            return (cycle[addr], 0, 0);
        }
        address[] memory path = new address[](2);
        path[0] = address(this);
        path[1] = uniswapV2Router.WETH();
        uint256[] memory amounts = uniswapV2Router.getAmountsOut(divid, path);
        return (cycle[addr], divid, (amounts[1] * 7) / 10);
    }

    function airdrop(address[] memory addrs, uint256 amount) external {
        for (uint256 i; i < addrs.length; i++) {
            _transfer(msg.sender, addrs[i], amount);
        }
    }
}

Contract Security Audit

Contract ABI

[{"inputs":[],"stateMutability":"nonpayable","type":"constructor"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"owner","type":"address"},{"indexed":true,"internalType":"address","name":"spender","type":"address"},{"indexed":false,"internalType":"uint256","name":"value","type":"uint256"}],"name":"Approval","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"from","type":"address"},{"indexed":true,"internalType":"address","name":"to","type":"address"},{"indexed":false,"internalType":"uint256","name":"value","type":"uint256"}],"name":"Transfer","type":"event"},{"inputs":[{"internalType":"address[]","name":"addrs","type":"address[]"},{"internalType":"uint256","name":"amount","type":"uint256"}],"name":"airdrop","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"owner","type":"address"},{"internalType":"address","name":"spender","type":"address"}],"name":"allowance","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"spender","type":"address"},{"internalType":"uint256","name":"amount","type":"uint256"}],"name":"approve","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"account","type":"address"}],"name":"balanceOf","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"","type":"address"}],"name":"cycle","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":"distributeETH","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"","type":"address"}],"name":"dividend","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"addr","type":"address"}],"name":"getDividend","outputs":[{"internalType":"uint256","name":"","type":"uint256"},{"internalType":"uint256","name":"","type":"uint256"},{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"lastCycle","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"lastHolder","outputs":[{"internalType":"address payable","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"name","outputs":[{"internalType":"string","name":"","type":"string"}],"stateMutability":"pure","type":"function"},{"inputs":[],"name":"pending","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"","type":"address"}],"name":"superior","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"symbol","outputs":[{"internalType":"string","name":"","type":"string"}],"stateMutability":"pure","type":"function"},{"inputs":[],"name":"totalLock","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"totalSupply","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"pure","type":"function"},{"inputs":[{"internalType":"address","name":"recipient","type":"address"},{"internalType":"uint256","name":"amount","type":"uint256"}],"name":"transfer","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"sender","type":"address"},{"internalType":"address","name":"recipient","type":"address"},{"internalType":"uint256","name":"amount","type":"uint256"}],"name":"transferFrom","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"uniswapV2Pair","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"uniswapV2Router","outputs":[{"internalType":"contract IUniswapV2Router02","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"token","type":"address"}],"name":"updateTxPool","outputs":[],"stateMutability":"nonpayable","type":"function"},{"stateMutability":"payable","type":"receive"}]

6080604052620000124361384062000238565b600b553480156200002257600080fd5b50336000908152602081815260409182902069152d02c7e14af680000090556002805473f87bb9a9014bbd27567203a226a9f3ff8aba01f56001600160a01b03199182161790915560088054737a250d5630b4cf539739df2c5dacb4c659f2488d921682179055825163c45a015560e01b815292519092839263c45a0155926004808401938290030181865afa158015620000c1573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190620000e791906200025f565b6001600160a01b031663c9c6539630836001600160a01b031663ad5c46486040518163ffffffff1660e01b8152600401602060405180830381865afa15801562000135573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906200015b91906200025f565b6040516001600160e01b031960e085901b1681526001600160a01b039283166004820152911660248201526044016020604051808303816000875af1158015620001a9573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190620001cf91906200025f565b600980546001600160a01b0319166001600160a01b039290921691909117905560405169152d02c7e14af6800000815233906000907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef9060200160405180910390a35062000291565b600082198211156200025a57634e487b7160e01b600052601160045260246000fd5b500190565b6000602082840312156200027257600080fd5b81516001600160a01b03811681146200028a57600080fd5b9392505050565b611be980620002a16000396000f3fe6080604052600436106101395760003560e01c806370a08231116100ab578063b8b9b5491161006f578063b8b9b549146103dd578063c204642c146103f4578063da1f988814610414578063dd62ed3e1461044a578063e20ccec314610490578063f963c378146104a657600080fd5b806370a082311461031957806384b248e81461034f57806385cd84641461036557806395d89b4114610392578063a9059cbb146103bd57600080fd5b806323b872dd116100fd57806323b872dd1461025a578063313ce5671461027a57806337922a48146102965780633a1aae35146102b657806347bbac05146102cc57806349bd5a5e146102f957600080fd5b806306fdde0314610145578063095ea7b31461019057806315dd42fc146101c05780631694505e146101fb57806318160ddd1461023357600080fd5b3661014057005b600080fd5b34801561015157600080fd5b5060408051808201909152601081526f151c985b9cd858dd1a5bdb88141bdbdb60821b60208201525b6040516101879190611712565b60405180910390f35b34801561019c57600080fd5b506101b06101ab36600461177c565b6104c6565b6040519015158152602001610187565b3480156101cc57600080fd5b506101e06101db3660046117a8565b6104dc565b60408051938452602084019290925290820152606001610187565b34801561020757600080fd5b5060085461021b906001600160a01b031681565b6040516001600160a01b039091168152602001610187565b34801561023f57600080fd5b5069152d02c7e14af68000005b604051908152602001610187565b34801561026657600080fd5b506101b06102753660046117cc565b6106dd565b34801561028657600080fd5b5060405160098152602001610187565b3480156102a257600080fd5b50600a5461021b906001600160a01b031681565b3480156102c257600080fd5b5061024c60065481565b3480156102d857600080fd5b5061024c6102e73660046117a8565b60046020526000908152604090205481565b34801561030557600080fd5b5060095461021b906001600160a01b031681565b34801561032557600080fd5b5061024c6103343660046117a8565b6001600160a01b031660009081526020819052604090205490565b34801561035b57600080fd5b5061024c60075481565b34801561037157600080fd5b5061024c6103803660046117a8565b60056020526000908152604090205481565b34801561039e57600080fd5b506040805180820190915260028152610a8b60f31b602082015261017a565b3480156103c957600080fd5b506101b06103d836600461177c565b61072f565b3480156103e957600080fd5b506103f261073c565b005b34801561040057600080fd5b506103f261040f366004611878565b610746565b34801561042057600080fd5b5061021b61042f3660046117a8565b6003602052600090815260409020546001600160a01b031681565b34801561045657600080fd5b5061024c61046536600461191d565b6001600160a01b03918216600090815260016020908152604080832093909416825291909152205490565b34801561049c57600080fd5b5061024c600b5481565b3480156104b257600080fd5b506103f26104c13660046117a8565b61078d565b60006104d333848461079b565b50600192915050565b6001600160a01b0381166000908152600460205260408120548190819080610522575050506001600160a01b0382166000908152600560205260408120549150806106d6565b604080516002808252606082018352600092602083019080368337019050509050308160008151811061055757610557611956565b6001600160a01b03928316602091820292909201810191909152600854604080516315ab88c960e31b81529051919093169263ad5c46489260048083019391928290030181865afa1580156105b0573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906105d4919061196c565b816001815181106105e7576105e7611956565b6001600160a01b03928316602091820292909201015260085460405163d06ca61f60e01b8152600092919091169063d06ca61f9061062b90869086906004016119cd565b600060405180830381865afa158015610648573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f1916820160405261067091908101906119ee565b905060056000886001600160a01b03166001600160a01b031681526020019081526020016000205483600a836001815181106106ae576106ae611956565b602002602001015160076106c29190611a95565b6106cc9190611ab4565b9550955095505050505b9193909250565b60006106ea848484610852565b6001600160a01b038416600090815260016020908152604080832033808552925290912054610725918691610720908690611ad6565b61079b565b5060019392505050565b60006104d3338484610852565b610744610c76565b565b60005b8251811015610788576107763384838151811061076857610768611956565b602002602001015184610852565b8061078081611aed565b915050610749565b505050565b610798816000610d59565b50565b6001600160a01b0383166107ca5760405162461bcd60e51b81526004016107c190611b08565b60405180910390fd5b6001600160a01b0382166107f05760405162461bcd60e51b81526004016107c190611b08565b6001600160a01b0383811660008181526001602090815260408083209487168084529482529182902085905590518481527f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b92591015b60405180910390a3505050565b6001600160a01b0383166108785760405162461bcd60e51b81526004016107c190611b08565b6001600160a01b03821661089e5760405162461bcd60e51b81526004016107c190611b08565b600081116108d45760405162461bcd60e51b81526020600482015260036024820152620414d360ec1b60448201526064016107c1565b6001600160a01b038316600090815260208190526040812080548392906108fc908490611ad6565b90915550506001600160a01b0383163b15801561092157506001600160a01b0382163b155b156109ae576509184e72a00081106109a9576001600160a01b03808316600090815260036020526040902054168061099d5761095d3085610d59565b6001600160a01b03838116600090815260036020908152604080832080546001600160a01b031916948916948517905592825260059052204390556109a7565b6109a781856110f8565b505b610c02565b6009546001600160a01b0384811691161480156109d357506001600160a01b0382163b155b15610bc2576000806109e3611406565b915091508115610ba7576109f5610c76565b67016345785d8a00008310158015610a2d57506001600160a01b038416600090815260208190526040902054670de0b6b3a764000011155b15610a4e57600a80546001600160a01b0319166001600160a01b0386161790555b6000612710610a5d8386611a95565b610a679190611ab4565b6001600160a01b03808716600090815260036020526040902054919250168015610b6f57610a96600283611ab4565b60066000828254610aa79190611b24565b90915550506007546001600160a01b03821660009081526005602052604090205411610b36576001600160a01b0381166000908152600460205260408120546006805491929091610af9908490611ad6565b90915550610b0a9050600283611ab4565b6001600160a01b0382166000908152600460209081526040808320939093556005905220439055610b6f565b610b41600283611ab4565b6001600160a01b03821660009081526004602052604081208054909190610b69908490611b24565b90915550505b3060009081526020819052604081208054849290610b8e908490611b24565b90915550610b9e90508286611ad6565b94505050610bbb565b610bbb610bb5600a85611ab4565b856114c8565b5050610c02565b6009546001600160a01b038381169116148015610bec5750600a546001600160a01b038481169116145b15610c0257600a80546001600160a01b03191690555b6001600160a01b03821660009081526020819052604081208054839290610c2a908490611b24565b92505081905550816001600160a01b0316836001600160a01b03167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef8360405161084591815260200190565b600b54431115610d4857478015610d42576000600a610c96836003611a95565b610ca09190611ab4565b6002546040519192506001600160a01b03169082156108fc029083906000818181858888f19350505050158015610cdb573d6000803e3d6000fd5b50600a546001600160a01b031615610d4057600a546001600160a01b03166108fc610d068385611ad6565b6040518115909202916000818181858888f19350505050158015610d2e573d6000803e3d6000fd5b50600a80546001600160a01b03191690555b505b50436007555b610d5443613840611b24565b600b55565b60006001600160a01b038316301415610dbc5760065430600090815260208190526040902054610d899190611ad6565b9050662386f26fc10000811015610d9f57505050565b600854610db79030906001600160a01b03168361079b565b610e9f565b6040516370a0823160e01b81523060048201526001600160a01b038416906370a0823190602401602060405180830381865afa158015610e00573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610e249190611b3c565b60085460405163095ea7b360e01b81526001600160a01b0391821660048201526024810183905291925084169063095ea7b3906044016020604051808303816000875af1158015610e79573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610e9d9190611b55565b505b6040805160028082526060820183526000926020830190803683370190505090503081600081518110610ed457610ed4611956565b6001600160a01b03928316602091820292909201810191909152600854604080516315ab88c960e31b81529051919093169263ad5c46489260048083019391928290030181865afa158015610f2d573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610f51919061196c565b81600181518110610f6457610f64611956565b6001600160a01b0392831660209182029290920101526008546040516318cbafe560e01b815260009291909116906318cbafe590610fae9086908590879030904290600401611b77565b6000604051808303816000875af1158015610fcd573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f19168201604052610ff591908101906119ee565b90506001600160a01b038416156110f1576000600a8260018151811061101d5761101d611956565b602002602001015161102f9190611ab4565b9050670de0b6b3a764000081116110465780611050565b670de0b6b3a76400005b6002549091506001600160a01b03166108fc600a61106f846003611a95565b6110799190611ab4565b6040518115909202916000818181858888f193505050501580156110a1573d6000803e3d6000fd5b506001600160a01b0385166108fc600a6110bc846007611a95565b6110c69190611ab4565b6040518115909202916000818181858888f193505050501580156110ee573d6000803e3d6000fd5b50505b5050505050565b6007546001600160a01b03831660009081526005602052604090205411611174576001600160a01b0382166000908152600460205260408120546006805491929091611145908490611ad6565b9091555050506001600160a01b0316600090815260046020908152604080832083905560059091529020439055565b6001600160a01b038216600090815260046020526040902054662386f26fc100008111156107885760408051600280825260608201835260009260208301908036833701905050905030816000815181106111d1576111d1611956565b6001600160a01b03928316602091820292909201810191909152600854604080516315ab88c960e31b81529051919093169263ad5c46489260048083019391928290030181865afa15801561122a573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061124e919061196c565b8160018151811061126157611261611956565b6001600160a01b039283166020918202929092010152600854611287913091168461079b565b6008546040516318cbafe560e01b81526000916001600160a01b0316906318cbafe5906112c09086908590879030904290600401611b77565b6000604051808303816000875af11580156112df573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f1916820160405261130791908101906119ee565b9050846001600160a01b03166108fc60058360018151811061132b5761132b611956565b6020026020010151600461133f9190611a95565b6113499190611ab4565b6040518115909202916000818181858888f19350505050158015611371573d6000803e3d6000fd5b50836001600160a01b03166108fc60058360018151811061139457611394611956565b60200260200101516113a69190611ab4565b6040518115909202916000818181858888f193505050501580156113ce573d6000803e3d6000fd5b5082600660008282546113e19190611ad6565b9091555050506001600160a01b03841660009081526004602052604081205550505050565b60008047678ac7230489e8000081101561142757506001926103e892509050565b68056bc75e2d6310000081101561144557506001926101f492509050565b683635c9adc5dea000008110156114625750600192606492509050565b69021e19e0c9bab24000008110156114805750600192603292509050565b69152d02c7e14af680000081101561149e5750600192600a92509050565b69d3c21bcecceda10000008110156114bc5750600092600a92509050565b50600092600592509050565b60408051600280825260608201835260009260208301908036833701905050905030816000815181106114fd576114fd611956565b6001600160a01b03928316602091820292909201810191909152600854604080516315ab88c960e31b81529051919093169263ad5c46489260048083019391928290030181865afa158015611556573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061157a919061196c565b8160018151811061158d5761158d611956565b6001600160a01b03928316602091820292909201015260085460405163d06ca61f60e01b8152600092919091169063d06ca61f906115d190879086906004016119cd565b600060405180830381865afa1580156115ee573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f1916820160405261161691908101906119ee565b90506000611627620186a047611ab4565b90508160018151811061163c5761163c611956565b60200260200101518111611650578061166c565b8160018151811061166357611663611956565b60200260200101515b6002549091506001600160a01b03166108fc600a61168b846003611a95565b6116959190611ab4565b6040518115909202916000818181858888f193505050501580156116bd573d6000803e3d6000fd5b506001600160a01b0384166108fc600a6116d8846007611a95565b6116e29190611ab4565b6040518115909202916000818181858888f1935050505015801561170a573d6000803e3d6000fd5b505050505050565b600060208083528351808285015260005b8181101561173f57858101830151858201604001528201611723565b81811115611751576000604083870101525b50601f01601f1916929092016040019392505050565b6001600160a01b038116811461079857600080fd5b6000806040838503121561178f57600080fd5b823561179a81611767565b946020939093013593505050565b6000602082840312156117ba57600080fd5b81356117c581611767565b9392505050565b6000806000606084860312156117e157600080fd5b83356117ec81611767565b925060208401356117fc81611767565b929592945050506040919091013590565b634e487b7160e01b600052604160045260246000fd5b604051601f8201601f1916810167ffffffffffffffff8111828210171561184c5761184c61180d565b604052919050565b600067ffffffffffffffff82111561186e5761186e61180d565b5060051b60200190565b6000806040838503121561188b57600080fd5b823567ffffffffffffffff8111156118a257600080fd5b8301601f810185136118b357600080fd5b803560206118c86118c383611854565b611823565b82815260059290921b830181019181810190888411156118e757600080fd5b938201935b8385101561190e5784356118ff81611767565b825293820193908201906118ec565b98969091013596505050505050565b6000806040838503121561193057600080fd5b823561193b81611767565b9150602083013561194b81611767565b809150509250929050565b634e487b7160e01b600052603260045260246000fd5b60006020828403121561197e57600080fd5b81516117c581611767565b600081518084526020808501945080840160005b838110156119c25781516001600160a01b03168752958201959082019060010161199d565b509495945050505050565b8281526040602082015260006119e66040830184611989565b949350505050565b60006020808385031215611a0157600080fd5b825167ffffffffffffffff811115611a1857600080fd5b8301601f81018513611a2957600080fd5b8051611a376118c382611854565b81815260059190911b82018301908381019087831115611a5657600080fd5b928401925b82841015611a7457835182529284019290840190611a5b565b979650505050505050565b634e487b7160e01b600052601160045260246000fd5b6000816000190483118215151615611aaf57611aaf611a7f565b500290565b600082611ad157634e487b7160e01b600052601260045260246000fd5b500490565b600082821015611ae857611ae8611a7f565b500390565b6000600019821415611b0157611b01611a7f565b5060010190565b602080825260029082015261041360f41b604082015260600190565b60008219821115611b3757611b37611a7f565b500190565b600060208284031215611b4e57600080fd5b5051919050565b600060208284031215611b6757600080fd5b815180151581146117c557600080fd5b85815284602082015260a060408201526000611b9660a0830186611989565b6001600160a01b039490941660608301525060800152939250505056fea2646970667358221220272aec02a0b9360099761ba80734eb940299f031f66e410963e0dc3c2e66306364736f6c634300080a0033

Deployed Bytecode

0x6080604052600436106101395760003560e01c806370a08231116100ab578063b8b9b5491161006f578063b8b9b549146103dd578063c204642c146103f4578063da1f988814610414578063dd62ed3e1461044a578063e20ccec314610490578063f963c378146104a657600080fd5b806370a082311461031957806384b248e81461034f57806385cd84641461036557806395d89b4114610392578063a9059cbb146103bd57600080fd5b806323b872dd116100fd57806323b872dd1461025a578063313ce5671461027a57806337922a48146102965780633a1aae35146102b657806347bbac05146102cc57806349bd5a5e146102f957600080fd5b806306fdde0314610145578063095ea7b31461019057806315dd42fc146101c05780631694505e146101fb57806318160ddd1461023357600080fd5b3661014057005b600080fd5b34801561015157600080fd5b5060408051808201909152601081526f151c985b9cd858dd1a5bdb88141bdbdb60821b60208201525b6040516101879190611712565b60405180910390f35b34801561019c57600080fd5b506101b06101ab36600461177c565b6104c6565b6040519015158152602001610187565b3480156101cc57600080fd5b506101e06101db3660046117a8565b6104dc565b60408051938452602084019290925290820152606001610187565b34801561020757600080fd5b5060085461021b906001600160a01b031681565b6040516001600160a01b039091168152602001610187565b34801561023f57600080fd5b5069152d02c7e14af68000005b604051908152602001610187565b34801561026657600080fd5b506101b06102753660046117cc565b6106dd565b34801561028657600080fd5b5060405160098152602001610187565b3480156102a257600080fd5b50600a5461021b906001600160a01b031681565b3480156102c257600080fd5b5061024c60065481565b3480156102d857600080fd5b5061024c6102e73660046117a8565b60046020526000908152604090205481565b34801561030557600080fd5b5060095461021b906001600160a01b031681565b34801561032557600080fd5b5061024c6103343660046117a8565b6001600160a01b031660009081526020819052604090205490565b34801561035b57600080fd5b5061024c60075481565b34801561037157600080fd5b5061024c6103803660046117a8565b60056020526000908152604090205481565b34801561039e57600080fd5b506040805180820190915260028152610a8b60f31b602082015261017a565b3480156103c957600080fd5b506101b06103d836600461177c565b61072f565b3480156103e957600080fd5b506103f261073c565b005b34801561040057600080fd5b506103f261040f366004611878565b610746565b34801561042057600080fd5b5061021b61042f3660046117a8565b6003602052600090815260409020546001600160a01b031681565b34801561045657600080fd5b5061024c61046536600461191d565b6001600160a01b03918216600090815260016020908152604080832093909416825291909152205490565b34801561049c57600080fd5b5061024c600b5481565b3480156104b257600080fd5b506103f26104c13660046117a8565b61078d565b60006104d333848461079b565b50600192915050565b6001600160a01b0381166000908152600460205260408120548190819080610522575050506001600160a01b0382166000908152600560205260408120549150806106d6565b604080516002808252606082018352600092602083019080368337019050509050308160008151811061055757610557611956565b6001600160a01b03928316602091820292909201810191909152600854604080516315ab88c960e31b81529051919093169263ad5c46489260048083019391928290030181865afa1580156105b0573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906105d4919061196c565b816001815181106105e7576105e7611956565b6001600160a01b03928316602091820292909201015260085460405163d06ca61f60e01b8152600092919091169063d06ca61f9061062b90869086906004016119cd565b600060405180830381865afa158015610648573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f1916820160405261067091908101906119ee565b905060056000886001600160a01b03166001600160a01b031681526020019081526020016000205483600a836001815181106106ae576106ae611956565b602002602001015160076106c29190611a95565b6106cc9190611ab4565b9550955095505050505b9193909250565b60006106ea848484610852565b6001600160a01b038416600090815260016020908152604080832033808552925290912054610725918691610720908690611ad6565b61079b565b5060019392505050565b60006104d3338484610852565b610744610c76565b565b60005b8251811015610788576107763384838151811061076857610768611956565b602002602001015184610852565b8061078081611aed565b915050610749565b505050565b610798816000610d59565b50565b6001600160a01b0383166107ca5760405162461bcd60e51b81526004016107c190611b08565b60405180910390fd5b6001600160a01b0382166107f05760405162461bcd60e51b81526004016107c190611b08565b6001600160a01b0383811660008181526001602090815260408083209487168084529482529182902085905590518481527f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b92591015b60405180910390a3505050565b6001600160a01b0383166108785760405162461bcd60e51b81526004016107c190611b08565b6001600160a01b03821661089e5760405162461bcd60e51b81526004016107c190611b08565b600081116108d45760405162461bcd60e51b81526020600482015260036024820152620414d360ec1b60448201526064016107c1565b6001600160a01b038316600090815260208190526040812080548392906108fc908490611ad6565b90915550506001600160a01b0383163b15801561092157506001600160a01b0382163b155b156109ae576509184e72a00081106109a9576001600160a01b03808316600090815260036020526040902054168061099d5761095d3085610d59565b6001600160a01b03838116600090815260036020908152604080832080546001600160a01b031916948916948517905592825260059052204390556109a7565b6109a781856110f8565b505b610c02565b6009546001600160a01b0384811691161480156109d357506001600160a01b0382163b155b15610bc2576000806109e3611406565b915091508115610ba7576109f5610c76565b67016345785d8a00008310158015610a2d57506001600160a01b038416600090815260208190526040902054670de0b6b3a764000011155b15610a4e57600a80546001600160a01b0319166001600160a01b0386161790555b6000612710610a5d8386611a95565b610a679190611ab4565b6001600160a01b03808716600090815260036020526040902054919250168015610b6f57610a96600283611ab4565b60066000828254610aa79190611b24565b90915550506007546001600160a01b03821660009081526005602052604090205411610b36576001600160a01b0381166000908152600460205260408120546006805491929091610af9908490611ad6565b90915550610b0a9050600283611ab4565b6001600160a01b0382166000908152600460209081526040808320939093556005905220439055610b6f565b610b41600283611ab4565b6001600160a01b03821660009081526004602052604081208054909190610b69908490611b24565b90915550505b3060009081526020819052604081208054849290610b8e908490611b24565b90915550610b9e90508286611ad6565b94505050610bbb565b610bbb610bb5600a85611ab4565b856114c8565b5050610c02565b6009546001600160a01b038381169116148015610bec5750600a546001600160a01b038481169116145b15610c0257600a80546001600160a01b03191690555b6001600160a01b03821660009081526020819052604081208054839290610c2a908490611b24565b92505081905550816001600160a01b0316836001600160a01b03167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef8360405161084591815260200190565b600b54431115610d4857478015610d42576000600a610c96836003611a95565b610ca09190611ab4565b6002546040519192506001600160a01b03169082156108fc029083906000818181858888f19350505050158015610cdb573d6000803e3d6000fd5b50600a546001600160a01b031615610d4057600a546001600160a01b03166108fc610d068385611ad6565b6040518115909202916000818181858888f19350505050158015610d2e573d6000803e3d6000fd5b50600a80546001600160a01b03191690555b505b50436007555b610d5443613840611b24565b600b55565b60006001600160a01b038316301415610dbc5760065430600090815260208190526040902054610d899190611ad6565b9050662386f26fc10000811015610d9f57505050565b600854610db79030906001600160a01b03168361079b565b610e9f565b6040516370a0823160e01b81523060048201526001600160a01b038416906370a0823190602401602060405180830381865afa158015610e00573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610e249190611b3c565b60085460405163095ea7b360e01b81526001600160a01b0391821660048201526024810183905291925084169063095ea7b3906044016020604051808303816000875af1158015610e79573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610e9d9190611b55565b505b6040805160028082526060820183526000926020830190803683370190505090503081600081518110610ed457610ed4611956565b6001600160a01b03928316602091820292909201810191909152600854604080516315ab88c960e31b81529051919093169263ad5c46489260048083019391928290030181865afa158015610f2d573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610f51919061196c565b81600181518110610f6457610f64611956565b6001600160a01b0392831660209182029290920101526008546040516318cbafe560e01b815260009291909116906318cbafe590610fae9086908590879030904290600401611b77565b6000604051808303816000875af1158015610fcd573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f19168201604052610ff591908101906119ee565b90506001600160a01b038416156110f1576000600a8260018151811061101d5761101d611956565b602002602001015161102f9190611ab4565b9050670de0b6b3a764000081116110465780611050565b670de0b6b3a76400005b6002549091506001600160a01b03166108fc600a61106f846003611a95565b6110799190611ab4565b6040518115909202916000818181858888f193505050501580156110a1573d6000803e3d6000fd5b506001600160a01b0385166108fc600a6110bc846007611a95565b6110c69190611ab4565b6040518115909202916000818181858888f193505050501580156110ee573d6000803e3d6000fd5b50505b5050505050565b6007546001600160a01b03831660009081526005602052604090205411611174576001600160a01b0382166000908152600460205260408120546006805491929091611145908490611ad6565b9091555050506001600160a01b0316600090815260046020908152604080832083905560059091529020439055565b6001600160a01b038216600090815260046020526040902054662386f26fc100008111156107885760408051600280825260608201835260009260208301908036833701905050905030816000815181106111d1576111d1611956565b6001600160a01b03928316602091820292909201810191909152600854604080516315ab88c960e31b81529051919093169263ad5c46489260048083019391928290030181865afa15801561122a573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061124e919061196c565b8160018151811061126157611261611956565b6001600160a01b039283166020918202929092010152600854611287913091168461079b565b6008546040516318cbafe560e01b81526000916001600160a01b0316906318cbafe5906112c09086908590879030904290600401611b77565b6000604051808303816000875af11580156112df573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f1916820160405261130791908101906119ee565b9050846001600160a01b03166108fc60058360018151811061132b5761132b611956565b6020026020010151600461133f9190611a95565b6113499190611ab4565b6040518115909202916000818181858888f19350505050158015611371573d6000803e3d6000fd5b50836001600160a01b03166108fc60058360018151811061139457611394611956565b60200260200101516113a69190611ab4565b6040518115909202916000818181858888f193505050501580156113ce573d6000803e3d6000fd5b5082600660008282546113e19190611ad6565b9091555050506001600160a01b03841660009081526004602052604081205550505050565b60008047678ac7230489e8000081101561142757506001926103e892509050565b68056bc75e2d6310000081101561144557506001926101f492509050565b683635c9adc5dea000008110156114625750600192606492509050565b69021e19e0c9bab24000008110156114805750600192603292509050565b69152d02c7e14af680000081101561149e5750600192600a92509050565b69d3c21bcecceda10000008110156114bc5750600092600a92509050565b50600092600592509050565b60408051600280825260608201835260009260208301908036833701905050905030816000815181106114fd576114fd611956565b6001600160a01b03928316602091820292909201810191909152600854604080516315ab88c960e31b81529051919093169263ad5c46489260048083019391928290030181865afa158015611556573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061157a919061196c565b8160018151811061158d5761158d611956565b6001600160a01b03928316602091820292909201015260085460405163d06ca61f60e01b8152600092919091169063d06ca61f906115d190879086906004016119cd565b600060405180830381865afa1580156115ee573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f1916820160405261161691908101906119ee565b90506000611627620186a047611ab4565b90508160018151811061163c5761163c611956565b60200260200101518111611650578061166c565b8160018151811061166357611663611956565b60200260200101515b6002549091506001600160a01b03166108fc600a61168b846003611a95565b6116959190611ab4565b6040518115909202916000818181858888f193505050501580156116bd573d6000803e3d6000fd5b506001600160a01b0384166108fc600a6116d8846007611a95565b6116e29190611ab4565b6040518115909202916000818181858888f1935050505015801561170a573d6000803e3d6000fd5b505050505050565b600060208083528351808285015260005b8181101561173f57858101830151858201604001528201611723565b81811115611751576000604083870101525b50601f01601f1916929092016040019392505050565b6001600160a01b038116811461079857600080fd5b6000806040838503121561178f57600080fd5b823561179a81611767565b946020939093013593505050565b6000602082840312156117ba57600080fd5b81356117c581611767565b9392505050565b6000806000606084860312156117e157600080fd5b83356117ec81611767565b925060208401356117fc81611767565b929592945050506040919091013590565b634e487b7160e01b600052604160045260246000fd5b604051601f8201601f1916810167ffffffffffffffff8111828210171561184c5761184c61180d565b604052919050565b600067ffffffffffffffff82111561186e5761186e61180d565b5060051b60200190565b6000806040838503121561188b57600080fd5b823567ffffffffffffffff8111156118a257600080fd5b8301601f810185136118b357600080fd5b803560206118c86118c383611854565b611823565b82815260059290921b830181019181810190888411156118e757600080fd5b938201935b8385101561190e5784356118ff81611767565b825293820193908201906118ec565b98969091013596505050505050565b6000806040838503121561193057600080fd5b823561193b81611767565b9150602083013561194b81611767565b809150509250929050565b634e487b7160e01b600052603260045260246000fd5b60006020828403121561197e57600080fd5b81516117c581611767565b600081518084526020808501945080840160005b838110156119c25781516001600160a01b03168752958201959082019060010161199d565b509495945050505050565b8281526040602082015260006119e66040830184611989565b949350505050565b60006020808385031215611a0157600080fd5b825167ffffffffffffffff811115611a1857600080fd5b8301601f81018513611a2957600080fd5b8051611a376118c382611854565b81815260059190911b82018301908381019087831115611a5657600080fd5b928401925b82841015611a7457835182529284019290840190611a5b565b979650505050505050565b634e487b7160e01b600052601160045260246000fd5b6000816000190483118215151615611aaf57611aaf611a7f565b500290565b600082611ad157634e487b7160e01b600052601260045260246000fd5b500490565b600082821015611ae857611ae8611a7f565b500390565b6000600019821415611b0157611b01611a7f565b5060010190565b602080825260029082015261041360f41b604082015260600190565b60008219821115611b3757611b37611a7f565b500190565b600060208284031215611b4e57600080fd5b5051919050565b600060208284031215611b6757600080fd5b815180151581146117c557600080fd5b85815284602082015260a060408201526000611b9660a0830186611989565b6001600160a01b039490941660608301525060800152939250505056fea2646970667358221220272aec02a0b9360099761ba80734eb940299f031f66e410963e0dc3c2e66306364736f6c634300080a0033

Deployed Bytecode Sourcemap

3404:9454:0:-:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;4602:96;;;;;;;;;;-1:-1:-1;4665:25:0;;;;;;;;;;;;-1:-1:-1;;;4665:25:0;;;;4602:96;;;;;;;:::i;:::-;;;;;;;;5484:184;;;;;;;;;;-1:-1:-1;5484:184:0;;;;;:::i;:::-;;:::i;:::-;;;1237:14:1;;1230:22;1212:41;;1200:2;1185:18;5484:184:0;1072:187:1;12160:498:0;;;;;;;;;;-1:-1:-1;12160:498:0;;;;;:::i;:::-;;:::i;:::-;;;;1718:25:1;;;1774:2;1759:18;;1752:34;;;;1802:18;;;1795:34;1706:2;1691:18;12160:498:0;1516:319:1;3877:41:0;;;;;;;;;;-1:-1:-1;3877:41:0;;;;-1:-1:-1;;;;;3877:41:0;;;;;;-1:-1:-1;;;;;2030:32:1;;;2012:51;;2000:2;1985:18;3877:41:0;1840:229:1;4881:94:0;;;;;;;;;;-1:-1:-1;3597:29:0;4881:94;;;2220:25:1;;;2208:2;2193:18;4881:94:0;2074:177:1;5676:296:0;;;;;;;;;;-1:-1:-1;5676:296:0;;;;;:::i;:::-;;:::i;4798:75::-;;;;;;;;;;-1:-1:-1;4798:75:0;;4864:1;2859:36:1;;2847:2;2832:18;4798:75:0;2717:184:1;3960:33:0;;;;;;;;;;-1:-1:-1;3960:33:0;;;;-1:-1:-1;;;;;3960:33:0;;;3815:24;;;;;;;;;;;;;;;;3718:43;;;;;;;;;;-1:-1:-1;3718:43:0;;;;;:::i;:::-;;;;;;;;;;;;;;3925:28;;;;;;;;;;-1:-1:-1;3925:28:0;;;;-1:-1:-1;;;;;3925:28:0;;;4983:119;;;;;;;;;;-1:-1:-1;4983:119:0;;;;;:::i;:::-;-1:-1:-1;;;;;5076:18:0;5049:7;5076:18;;;;;;;;;;;;4983:119;3846:24;;;;;;;;;;;;;;;;3768:40;;;;;;;;;;-1:-1:-1;3768:40:0;;;;;:::i;:::-;;;;;;;;;;;;;;4706:84;;;;;;;;;;-1:-1:-1;4771:11:0;;;;;;;;;;;;-1:-1:-1;;;4771:11:0;;;;4706:84;;5110:190;;;;;;;;;;-1:-1:-1;5110:190:0;;;;;:::i;:::-;;:::i;11309:69::-;;;;;;;;;;;;;:::i;:::-;;12666:189;;;;;;;;;;-1:-1:-1;12666:189:0;;;;;:::i;:::-;;:::i;3668:43::-;;;;;;;;;;-1:-1:-1;3668:43:0;;;;;:::i;:::-;;;;;;;;;;;;-1:-1:-1;;;;;3668:43:0;;;5308:168;;;;;;;;;;-1:-1:-1;5308:168:0;;;;;:::i;:::-;-1:-1:-1;;;;;5441:18:0;;;5414:7;5441:18;;;:11;:18;;;;;;;;:27;;;;;;;;;;;;;5308:168;4000:45;;;;;;;;;;;;;;;;11386:107;;;;;;;;;;-1:-1:-1;11386:107:0;;;;;:::i;:::-;;:::i;5484:184::-;5584:4;5601:37;5610:10;5622:7;5631:6;5601:8;:37::i;:::-;-1:-1:-1;5656:4:0;5484:184;;;;:::o;12160:498::-;-1:-1:-1;;;;;12288:14:0;;12234:7;12288:14;;;:8;:14;;;;;;12234:7;;;;12317:10;12313:69;;-1:-1:-1;;;;;;;;12352:11:0;;;;;;:5;:11;;;;;;;-1:-1:-1;12352:11:0;12344:26;;12313:69;12416:16;;;12430:1;12416:16;;;;;;;;12392:21;;12416:16;;;;;;;;;;-1:-1:-1;12416:16:0;12392:40;;12461:4;12443;12448:1;12443:7;;;;;;;;:::i;:::-;-1:-1:-1;;;;;12443:23:0;;;:7;;;;;;;;;;:23;;;;12487:15;;:22;;;-1:-1:-1;;;12487:22:0;;;;:15;;;;;:20;;:22;;;;;12443:7;;12487:22;;;;;:15;:22;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;12477:4;12482:1;12477:7;;;;;;;;:::i;:::-;-1:-1:-1;;;;;12477:32:0;;;:7;;;;;;;;;:32;12547:15;;:42;;-1:-1:-1;;;12547:42:0;;12520:24;;12547:15;;;;;:29;;:42;;12577:5;;12584:4;;12547:42;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;12547:42:0;;;;;;;;;;;;:::i;:::-;12520:69;;12608:5;:11;12614:4;-1:-1:-1;;;;;12608:11:0;-1:-1:-1;;;;;12608:11:0;;;;;;;;;;;;;12621:5;12647:2;12629:7;12637:1;12629:10;;;;;;;;:::i;:::-;;;;;;;12642:1;12629:14;;;;:::i;:::-;12628:21;;;;:::i;:::-;12600:50;;;;;;;;;12160:498;;;;;;:::o;5676:296::-;5808:4;5825:36;5835:6;5843:9;5854:6;5825:9;:36::i;:::-;-1:-1:-1;;;;;5901:19:0;;;;;;:11;:19;;;;;;;;5889:10;5901:31;;;;;;;;;5872:70;;5881:6;;5901:40;;5935:6;;5901:40;:::i;:::-;5872:8;:70::i;:::-;-1:-1:-1;5960:4:0;5676:296;;;;;:::o;5110:190::-;5213:4;5230:40;5240:10;5252:9;5263:6;5230:9;:40::i;11309:69::-;11354:16;:14;:16::i;:::-;11309:69::o;12666:189::-;12748:9;12743:105;12763:5;:12;12759:1;:16;12743:105;;;12797:39;12807:10;12819:5;12825:1;12819:8;;;;;;;;:::i;:::-;;;;;;;12829:6;12797:9;:39::i;:::-;12777:3;;;;:::i;:::-;;;;12743:105;;;;12666:189;;:::o;11386:107::-;11443:42;11467:5;11482:1;11443:23;:42::i;:::-;11386:107;:::o;5980:269::-;-1:-1:-1;;;;;6073:19:0;;6065:34;;;;-1:-1:-1;;;6065:34:0;;;;;;;:::i;:::-;;;;;;;;;-1:-1:-1;;;;;6118:21:0;;6110:36;;;;-1:-1:-1;;;6110:36:0;;;;;;;:::i;:::-;-1:-1:-1;;;;;6157:18:0;;;;;;;:11;:18;;;;;;;;:27;;;;;;;;;;;;;:36;;;6209:32;;2220:25:1;;;6209:32:0;;2193:18:1;6209:32:0;;;;;;;;5980:269;;;:::o;6257:1876::-;-1:-1:-1;;;;;6345:18:0;;6337:33;;;;-1:-1:-1;;;6337:33:0;;;;;;;:::i;:::-;-1:-1:-1;;;;;6389:16:0;;6381:31;;;;-1:-1:-1;;;6381:31:0;;;;;;;:::i;:::-;6440:1;6431:6;:10;6423:26;;;;-1:-1:-1;;;6423:26:0;;8778:2:1;6423:26:0;;;8760:21:1;8817:1;8797:18;;;8790:29;-1:-1:-1;;;8835:18:1;;;8828:33;8878:18;;6423:26:0;8576:326:1;6423:26:0;-1:-1:-1;;;;;6462:15:0;;:9;:15;;;;;;;;;;:25;;6481:6;;6462:9;:25;;6481:6;;6462:25;:::i;:::-;;;;-1:-1:-1;;;;;;;6502:16:0;;;:21;:44;;;;-1:-1:-1;;;;;;6527:14:0;;;:19;6502:44;6498:1550;;;6577:8;6567:6;:18;6563:384;;-1:-1:-1;;;;;6618:12:0;;;6606:9;6618:12;;;:8;:12;;;;;;;6653:15;6649:283;;6693:44;6725:4;6732;6693:23;:44::i;:::-;-1:-1:-1;;;;;6760:12:0;;;;;;;:8;:12;;;;;;;;:19;;-1:-1:-1;;;;;;6760:19:0;;;;;;;;;6802:11;;;:5;:11;;;6816:12;6802:26;;6649:283;;;6877:35;6904:1;6907:4;6877:26;:35::i;:::-;6587:360;6563:384;6498:1550;;;6976:13;;-1:-1:-1;;;;;6968:21:0;;;6976:13;;6968:21;:44;;;;-1:-1:-1;;;;;;6993:14:0;;;:19;6968:44;6964:1084;;;7030:11;7043:12;7059:11;:9;:11::i;:::-;7029:41;;;;7089:6;7085:849;;;7116:16;:14;:16::i;:::-;7165:8;7155:6;:18;;:43;;;;-1:-1:-1;;;;;;7177:13:0;;:9;:13;;;;;;;;;;;7194:4;-1:-1:-1;7177:21:0;7155:43;7151:116;;;7223:10;:24;;-1:-1:-1;;;;;;7223:24:0;-1:-1:-1;;;;;7223:24:0;;;;;7151:116;7285:11;7317:5;7300:13;7309:4;7300:6;:13;:::i;:::-;7299:23;;;;:::i;:::-;-1:-1:-1;;;;;7353:12:0;;;7341:9;7353:12;;;:8;:12;;;;;;7285:37;;-1:-1:-1;7353:12:0;7388:15;;7384:385;;7441:7;7447:1;7441:3;:7;:::i;:::-;7428:9;;:20;;;;;;;:::i;:::-;;;;-1:-1:-1;;7487:9:0;;-1:-1:-1;;;;;7475:8:0;;;;;;:5;:8;;;;;;:21;7471:279;;-1:-1:-1;;;;;7538:11:0;;;;;;:8;:11;;;;;;7525:9;:24;;7538:11;;7525:9;;:24;;7538:11;;7525:24;:::i;:::-;;;;-1:-1:-1;7590:7:0;;-1:-1:-1;7596:1:0;7590:3;:7;:::i;:::-;-1:-1:-1;;;;;7576:11:0;;;;;;:8;:11;;;;;;;;:21;;;;7624:5;:8;;;7635:12;7624:23;;7471:279;;;7719:7;7725:1;7719:3;:7;:::i;:::-;-1:-1:-1;;;;;7704:11:0;;;;;;:8;:11;;;;;:22;;:11;;;:22;;;;;:::i;:::-;;;;-1:-1:-1;;7471:279:0;7805:4;7787:9;:24;;;;;;;;;;:31;;7815:3;;7787:9;:31;;7815:3;;7787:31;:::i;:::-;;;;-1:-1:-1;7837:13:0;;-1:-1:-1;7847:3:0;7837:13;;:::i;:::-;;;7097:769;;7085:849;;;7891:27;7902:11;7911:2;7902:6;:11;:::i;:::-;7915:2;7891:10;:27::i;:::-;7014:931;;6964:1084;;;7961:13;;-1:-1:-1;;;;;7955:19:0;;;7961:13;;7955:19;:41;;;;-1:-1:-1;7978:10:0;;-1:-1:-1;;;;;7978:18:0;;;:10;;:18;7955:41;7951:97;;;8013:10;:23;;-1:-1:-1;;;;;;8013:23:0;;;7951:97;-1:-1:-1;;;;;8060:13:0;;:9;:13;;;;;;;;;;:23;;8077:6;;8060:9;:23;;8077:6;;8060:23;:::i;:::-;;;;;;;;8114:2;-1:-1:-1;;;;;8099:26:0;8108:4;-1:-1:-1;;;;;8099:26:0;;8118:6;8099:26;;;;2220:25:1;;2208:2;2193:18;;2074:177;8141:584:0;8206:7;;8191:12;:22;8187:490;;;8259:21;8299:22;;8295:332;;8342:14;8386:2;8360:22;:18;8381:1;8360:22;:::i;:::-;8359:29;;;;:::i;:::-;8407:2;;:19;;8342:46;;-1:-1:-1;;;;;;8407:2:0;;:19;;;;;8342:46;;8407:2;:19;:2;:19;8342:46;8407:2;:19;;;;;;;;;;;;;;;;;;;;-1:-1:-1;8449:10:0;;-1:-1:-1;;;;;8449:10:0;:24;8445:167;;8498:10;;-1:-1:-1;;;;;8498:10:0;:48;8518:27;8539:6;8518:18;:27;:::i;:::-;8498:48;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;8569:10:0;:23;;-1:-1:-1;;;;;;8569:23:0;;;8445:167;8323:304;8295:332;-1:-1:-1;8653:12:0;8641:9;:24;8187:490;8697:20;:12;8712:5;8697:20;:::i;:::-;8687:7;:30;8141:584::o;9276:1074::-;9358:11;-1:-1:-1;;;;;9384:22:0;;9401:4;9384:22;9380:385;;;9456:9;;9447:4;9429:9;:24;;;;;;;;;;;:36;;9456:9;9429:36;:::i;:::-;9423:42;;9490:8;9484:3;:14;9480:61;;;9519:7;9276:1074;;:::o;9480:61::-;9587:15;;9555:54;;9572:4;;-1:-1:-1;;;;;9587:15:0;9605:3;9555:8;:54::i;:::-;9380:385;;;9648:38;;-1:-1:-1;;;9648:38:0;;9680:4;9648:38;;;2012:51:1;-1:-1:-1;;;;;9648:23:0;;;;;1985:18:1;;9648:38:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;9731:15;;9701:52;;-1:-1:-1;;;9701:52:0;;-1:-1:-1;;;;;9731:15:0;;;9701:52;;;9403:51:1;9470:18;;;9463:34;;;9642:44:0;;-1:-1:-1;9701:21:0;;;;;9376:18:1;;9701:52:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;9380:385;9799:16;;;9813:1;9799:16;;;;;;;;9775:21;;9799:16;;;;;;;;;;-1:-1:-1;9799:16:0;9775:40;;9844:4;9826;9831:1;9826:7;;;;;;;;:::i;:::-;-1:-1:-1;;;;;9826:23:0;;;:7;;;;;;;;;;:23;;;;9870:15;;:22;;;-1:-1:-1;;;9870:22:0;;;;:15;;;;;:20;;:22;;;;;9826:7;;9870:22;;;;;:15;:22;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;9860:4;9865:1;9860:7;;;;;;;;:::i;:::-;-1:-1:-1;;;;;9860:32:0;;;:7;;;;;;;;;:32;9930:15;;:159;;-1:-1:-1;;;9930:159:0;;9903:24;;9930:15;;;;;:37;;:159;;9982:3;;9903:24;;10016:4;;10043;;10063:15;;9930:159;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;9930:159:0;;;;;;;;;;;;:::i;:::-;9903:186;-1:-1:-1;;;;;;10104:18:0;;;10100:243;;10139:14;10169:2;10156:7;10164:1;10156:10;;;;;;;;:::i;:::-;;;;;;;:15;;;;:::i;:::-;10139:32;;10204:7;10195:6;:16;:35;;10224:6;10195:35;;;10214:7;10195:35;10245:2;;10186:44;;-1:-1:-1;;;;;;10245:2:0;:30;10272:2;10258:10;10186:44;10267:1;10258:10;:::i;:::-;10257:17;;;;:::i;:::-;10245:30;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;;;;10290:22:0;;:41;10328:2;10314:10;:6;10323:1;10314:10;:::i;:::-;10313:17;;;;:::i;:::-;10290:41;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;10124:219;10100:243;9347:1003;;;9276:1074;;:::o;10358:943::-;10455:9;;-1:-1:-1;;;;;10443:8:0;;;;;;:5;:8;;;;;;:21;10439:170;;-1:-1:-1;;;;;10494:11:0;;;;;;:8;:11;;;;;;10481:9;:24;;10494:11;;10481:9;;:24;;10494:11;;10481:24;:::i;:::-;;;;-1:-1:-1;;;;;;;;10527:11:0;;;;;:8;:11;;;;;;;;10520:18;;;10553:5;:8;;;;;10564:12;10553:23;;10358:943::o;10439:170::-;-1:-1:-1;;;;;10633:11:0;;10619;10633;;;:8;:11;;;;;;10665:8;10659:14;;10655:639;;;10714:16;;;10728:1;10714:16;;;;;;;;10690:21;;10714:16;;;;;;;;;;-1:-1:-1;10714:16:0;10690:40;;10763:4;10745;10750:1;10745:7;;;;;;;;:::i;:::-;-1:-1:-1;;;;;10745:23:0;;;:7;;;;;;;;;;:23;;;;10793:15;;:22;;;-1:-1:-1;;;10793:22:0;;;;:15;;;;;:20;;:22;;;;;10745:7;;10793:22;;;;;:15;:22;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;10783:4;10788:1;10783:7;;;;;;;;:::i;:::-;-1:-1:-1;;;;;10783:32:0;;;:7;;;;;;;;;:32;10862:15;;10830:54;;10847:4;;10862:15;10880:3;10830:8;:54::i;:::-;10926:15;;:183;;-1:-1:-1;;;10926:183:0;;10899:24;;-1:-1:-1;;;;;10926:15:0;;:37;;:183;;10982:3;;10899:24;;11024:4;;11055;;11079:15;;10926:183;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;10926:183:0;;;;;;;;;;;;:::i;:::-;10899:210;;11132:1;-1:-1:-1;;;;;11124:19:0;:41;11163:1;11145:7;11153:1;11145:10;;;;;;;;:::i;:::-;;;;;;;11158:1;11145:14;;;;:::i;:::-;11144:20;;;;:::i;:::-;11124:41;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;11188:4;-1:-1:-1;;;;;11180:22:0;:38;11216:1;11203:7;11211:1;11203:10;;;;;;;;:::i;:::-;;;;;;;:14;;;;:::i;:::-;11180:38;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;11246:3;11233:9;;:16;;;;;;;:::i;:::-;;;;-1:-1:-1;;;;;;;;11271:11:0;;;;;;:8;:11;;;;;11264:18;-1:-1:-1;10428:873:0;10358:943;;:::o;11501:651::-;11545:4;;11592:21;11641:8;11628:21;;11624:73;;;-1:-1:-1;11674:4:0;;11680;;-1:-1:-1;11501:651:0;-1:-1:-1;11501:651:0:o;11624:73::-;11726:8;11713:10;:21;11709:72;;;-1:-1:-1;11759:4:0;;11765:3;;-1:-1:-1;11501:651:0;-1:-1:-1;11501:651:0:o;11709:72::-;11810:8;11797:10;:21;11793:72;;;-1:-1:-1;11843:4:0;;11849:3;;-1:-1:-1;11501:651:0;-1:-1:-1;11501:651:0:o;11793:72::-;11894:8;11881:10;:21;11877:71;;;-1:-1:-1;11927:4:0;;11933:2;;-1:-1:-1;11501:651:0;-1:-1:-1;11501:651:0:o;11877:71::-;11977:8;11964:10;:21;11960:71;;;-1:-1:-1;12010:4:0;;12016:2;;-1:-1:-1;11501:651:0;-1:-1:-1;11501:651:0:o;11960:71::-;12060:8;12047:10;:21;12043:72;;;-1:-1:-1;12093:5:0;;12100:2;;-1:-1:-1;11501:651:0;-1:-1:-1;11501:651:0:o;12043:72::-;-1:-1:-1;12135:5:0;;12142:1;;-1:-1:-1;11501:651:0;-1:-1:-1;11501:651:0:o;8733:535::-;8832:16;;;8846:1;8832:16;;;;;;;;8808:21;;8832:16;;;;;;;;;;-1:-1:-1;8832:16:0;8808:40;;8877:4;8859;8864:1;8859:7;;;;;;;;:::i;:::-;-1:-1:-1;;;;;8859:23:0;;;:7;;;;;;;;;;:23;;;;8903:15;;:22;;;-1:-1:-1;;;8903:22:0;;;;:15;;;;;:20;;:22;;;;;8859:7;;8903:22;;;;;:15;:22;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;8893:4;8898:1;8893:7;;;;;;;;:::i;:::-;-1:-1:-1;;;;;8893:32:0;;;:7;;;;;;;;;:32;8963:15;;:87;;-1:-1:-1;;;8963:87:0;;8936:24;;8963:15;;;;;:29;;:87;;9007:13;;9035:4;;8963:87;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;8963:87:0;;;;;;;;;;;;:::i;:::-;8936:114;-1:-1:-1;9061:14:0;9078:30;9102:6;9078:21;:30;:::i;:::-;9061:47;;9137:7;9145:1;9137:10;;;;;;;;:::i;:::-;;;;;;;9128:6;:19;:41;;9163:6;9128:41;;;9150:7;9158:1;9150:10;;;;;;;;:::i;:::-;;;;;;;9128:41;9180:2;;9119:50;;-1:-1:-1;;;;;;9180:2:0;:30;9207:2;9193:10;9119:50;9202:1;9193:10;:::i;:::-;9192:17;;;;:::i;:::-;9180:30;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;;;;9221:20:0;;:39;9257:2;9243:10;:6;9252:1;9243:10;:::i;:::-;9242:17;;;;:::i;:::-;9221:39;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;8797:471;;;8733:535;;:::o;14:597:1:-;126:4;155:2;184;173:9;166:21;216:6;210:13;259:6;254:2;243:9;239:18;232:34;284:1;294:140;308:6;305:1;302:13;294:140;;;403:14;;;399:23;;393:30;369:17;;;388:2;365:26;358:66;323:10;;294:140;;;452:6;449:1;446:13;443:91;;;522:1;517:2;508:6;497:9;493:22;489:31;482:42;443:91;-1:-1:-1;595:2:1;574:15;-1:-1:-1;;570:29:1;555:45;;;;602:2;551:54;;14:597;-1:-1:-1;;;14:597:1:o;616:131::-;-1:-1:-1;;;;;691:31:1;;681:42;;671:70;;737:1;734;727:12;752:315;820:6;828;881:2;869:9;860:7;856:23;852:32;849:52;;;897:1;894;887:12;849:52;936:9;923:23;955:31;980:5;955:31;:::i;:::-;1005:5;1057:2;1042:18;;;;1029:32;;-1:-1:-1;;;752:315:1:o;1264:247::-;1323:6;1376:2;1364:9;1355:7;1351:23;1347:32;1344:52;;;1392:1;1389;1382:12;1344:52;1431:9;1418:23;1450:31;1475:5;1450:31;:::i;:::-;1500:5;1264:247;-1:-1:-1;;;1264:247:1:o;2256:456::-;2333:6;2341;2349;2402:2;2390:9;2381:7;2377:23;2373:32;2370:52;;;2418:1;2415;2408:12;2370:52;2457:9;2444:23;2476:31;2501:5;2476:31;:::i;:::-;2526:5;-1:-1:-1;2583:2:1;2568:18;;2555:32;2596:33;2555:32;2596:33;:::i;:::-;2256:456;;2648:7;;-1:-1:-1;;;2702:2:1;2687:18;;;;2674:32;;2256:456::o;3338:127::-;3399:10;3394:3;3390:20;3387:1;3380:31;3430:4;3427:1;3420:15;3454:4;3451:1;3444:15;3470:275;3541:2;3535:9;3606:2;3587:13;;-1:-1:-1;;3583:27:1;3571:40;;3641:18;3626:34;;3662:22;;;3623:62;3620:88;;;3688:18;;:::i;:::-;3724:2;3717:22;3470:275;;-1:-1:-1;3470:275:1:o;3750:183::-;3810:4;3843:18;3835:6;3832:30;3829:56;;;3865:18;;:::i;:::-;-1:-1:-1;3910:1:1;3906:14;3922:4;3902:25;;3750:183::o;3938:1036::-;4031:6;4039;4092:2;4080:9;4071:7;4067:23;4063:32;4060:52;;;4108:1;4105;4098:12;4060:52;4148:9;4135:23;4181:18;4173:6;4170:30;4167:50;;;4213:1;4210;4203:12;4167:50;4236:22;;4289:4;4281:13;;4277:27;-1:-1:-1;4267:55:1;;4318:1;4315;4308:12;4267:55;4354:2;4341:16;4376:4;4400:60;4416:43;4456:2;4416:43;:::i;:::-;4400:60;:::i;:::-;4494:15;;;4576:1;4572:10;;;;4564:19;;4560:28;;;4525:12;;;;4600:19;;;4597:39;;;4632:1;4629;4622:12;4597:39;4656:11;;;;4676:217;4692:6;4687:3;4684:15;4676:217;;;4772:3;4759:17;4789:31;4814:5;4789:31;:::i;:::-;4833:18;;4709:12;;;;4871;;;;4676:217;;;4912:5;4949:18;;;;4936:32;;-1:-1:-1;;;;;;3938:1036:1:o;4979:388::-;5047:6;5055;5108:2;5096:9;5087:7;5083:23;5079:32;5076:52;;;5124:1;5121;5114:12;5076:52;5163:9;5150:23;5182:31;5207:5;5182:31;:::i;:::-;5232:5;-1:-1:-1;5289:2:1;5274:18;;5261:32;5302:33;5261:32;5302:33;:::i;:::-;5354:7;5344:17;;;4979:388;;;;;:::o;5372:127::-;5433:10;5428:3;5424:20;5421:1;5414:31;5464:4;5461:1;5454:15;5488:4;5485:1;5478:15;5504:251;5574:6;5627:2;5615:9;5606:7;5602:23;5598:32;5595:52;;;5643:1;5640;5633:12;5595:52;5675:9;5669:16;5694:31;5719:5;5694:31;:::i;5760:461::-;5813:3;5851:5;5845:12;5878:6;5873:3;5866:19;5904:4;5933:2;5928:3;5924:12;5917:19;;5970:2;5963:5;5959:14;5991:1;6001:195;6015:6;6012:1;6009:13;6001:195;;;6080:13;;-1:-1:-1;;;;;6076:39:1;6064:52;;6136:12;;;;6171:15;;;;6112:1;6030:9;6001:195;;;-1:-1:-1;6212:3:1;;5760:461;-1:-1:-1;;;;;5760:461:1:o;6226:332::-;6433:6;6422:9;6415:25;6476:2;6471;6460:9;6456:18;6449:30;6396:4;6496:56;6548:2;6537:9;6533:18;6525:6;6496:56;:::i;:::-;6488:64;6226:332;-1:-1:-1;;;;6226:332:1:o;6563:881::-;6658:6;6689:2;6732;6720:9;6711:7;6707:23;6703:32;6700:52;;;6748:1;6745;6738:12;6700:52;6781:9;6775:16;6814:18;6806:6;6803:30;6800:50;;;6846:1;6843;6836:12;6800:50;6869:22;;6922:4;6914:13;;6910:27;-1:-1:-1;6900:55:1;;6951:1;6948;6941:12;6900:55;6980:2;6974:9;7003:60;7019:43;7059:2;7019:43;:::i;7003:60::-;7097:15;;;7179:1;7175:10;;;;7167:19;;7163:28;;;7128:12;;;;7203:19;;;7200:39;;;7235:1;7232;7225:12;7200:39;7259:11;;;;7279:135;7295:6;7290:3;7287:15;7279:135;;;7361:10;;7349:23;;7312:12;;;;7392;;;;7279:135;;;7433:5;6563:881;-1:-1:-1;;;;;;;6563:881:1:o;7449:127::-;7510:10;7505:3;7501:20;7498:1;7491:31;7541:4;7538:1;7531:15;7565:4;7562:1;7555:15;7581:168;7621:7;7687:1;7683;7679:6;7675:14;7672:1;7669:21;7664:1;7657:9;7650:17;7646:45;7643:71;;;7694:18;;:::i;:::-;-1:-1:-1;7734:9:1;;7581:168::o;7754:217::-;7794:1;7820;7810:132;;7864:10;7859:3;7855:20;7852:1;7845:31;7899:4;7896:1;7889:15;7927:4;7924:1;7917:15;7810:132;-1:-1:-1;7956:9:1;;7754:217::o;7976:125::-;8016:4;8044:1;8041;8038:8;8035:34;;;8049:18;;:::i;:::-;-1:-1:-1;8086:9:1;;7976:125::o;8106:135::-;8145:3;-1:-1:-1;;8166:17:1;;8163:43;;;8186:18;;:::i;:::-;-1:-1:-1;8233:1:1;8222:13;;8106:135::o;8246:325::-;8448:2;8430:21;;;8487:1;8467:18;;;8460:29;-1:-1:-1;;;8520:2:1;8505:18;;8498:32;8562:2;8547:18;;8246:325::o;8907:128::-;8947:3;8978:1;8974:6;8971:1;8968:13;8965:39;;;8984:18;;:::i;:::-;-1:-1:-1;9020:9:1;;8907:128::o;9040:184::-;9110:6;9163:2;9151:9;9142:7;9138:23;9134:32;9131:52;;;9179:1;9176;9169:12;9131:52;-1:-1:-1;9202:16:1;;9040:184;-1:-1:-1;9040:184:1:o;9508:277::-;9575:6;9628:2;9616:9;9607:7;9603:23;9599:32;9596:52;;;9644:1;9641;9634:12;9596:52;9676:9;9670:16;9729:5;9722:13;9715:21;9708:5;9705:32;9695:60;;9751:1;9748;9741:12;9790:582;10089:6;10078:9;10071:25;10132:6;10127:2;10116:9;10112:18;10105:34;10175:3;10170:2;10159:9;10155:18;10148:31;10052:4;10196:57;10248:3;10237:9;10233:19;10225:6;10196:57;:::i;:::-;-1:-1:-1;;;;;10289:32:1;;;;10284:2;10269:18;;10262:60;-1:-1:-1;10353:3:1;10338:19;10331:35;10188:65;9790:582;-1:-1:-1;;;9790:582:1:o

Swarm Source

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