ETH Price: $2,972.07 (+1.78%)
Gas: 2 Gwei

Token

THE ZEUS DOG (ZEPE)
 

Overview

Max Total Supply

420,690,000,000,000 ZEPE

Holders

86

Total Transfers

-

Market

Onchain Market Cap

$0.00

Circulating Supply Market Cap

-

Other Info

Token Contract (WITH 18 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:
ZepeToken

Compiler Version
v0.8.25+commit.b61c2a91

Optimization Enabled:
No with 200 runs

Other Settings:
default evmVersion, MIT license

Contract Source Code (Solidity)

/**
 *Submitted for verification at Etherscan.io on 2024-04-20
*/

// SPDX-License-Identifier: MIT
pragma solidity ^0.8.20;

abstract contract Context {
    function _msgSender() internal view virtual returns (address) {
        return msg.sender;
    }

    function _msgData() internal view virtual returns (bytes calldata) {
        return msg.data;
    }
}

abstract contract Ownable is Context {
    address private _owner;

    event OwnershipTransferred(address indexed previousOwner, address indexed newOwner);

    constructor() {
        _transferOwnership(_msgSender());
    }

    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 {
        _transferOwnership(address(0));
    }

    function transferOwnership(address newOwner) public virtual onlyOwner {
        require(newOwner != address(0), "Ownable: new owner is the zero address");
        _transferOwnership(newOwner);
    }

    function _transferOwnership(address newOwner) internal virtual {
        address oldOwner = _owner;
        _owner = newOwner;
        emit OwnershipTransferred(oldOwner, newOwner);
    }
}

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 IERC20Metadata is IERC20 {
    function name() external view returns (string memory);

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

    function decimals() external view returns (uint8);
}

contract ERC20 is Context, IERC20, IERC20Metadata {
    mapping(address => uint256) private _balances;

    mapping(address => mapping(address => uint256)) private _allowances;

    uint256 private _totalSupply;

    string private _name;
    string private _symbol;

    constructor(string memory name_, string memory symbol_) {
        _name = name_;
        _symbol = symbol_;
    }

    function name() public view virtual override returns (string memory) {
        return _name;
    }

    function symbol() public view virtual override returns (string memory) {
        return _symbol;
    }

    function decimals() public view virtual override returns (uint8) {
        return 18;
    }

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

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

    function transfer(address recipient, uint256 amount) public virtual override returns (bool) {
        _transfer(_msgSender(), recipient, amount);
        return true;
    }

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

    function approve(address spender, uint256 amount) public virtual override returns (bool) {
        _approve(_msgSender(), spender, amount);
        return true;
    }

    function transferFrom(
        address sender,
        address recipient,
        uint256 amount
    ) public virtual override returns (bool) {
        _transfer(sender, recipient, amount);

        uint256 currentAllowance = _allowances[sender][_msgSender()];
        require(currentAllowance >= amount, "ERC20: transfer amount exceeds allowance");
        unchecked {
            _approve(sender, _msgSender(), currentAllowance - amount);
        }

        return true;
    }

    function increaseAllowance(address spender, uint256 addedValue) public virtual returns (bool) {
        _approve(_msgSender(), spender, _allowances[_msgSender()][spender] + addedValue);
        return true;
    }

    function decreaseAllowance(address spender, uint256 subtractedValue) public virtual returns (bool) {
        uint256 currentAllowance = _allowances[_msgSender()][spender];
        require(currentAllowance >= subtractedValue, "ERC20: decreased allowance below zero");
        unchecked {
            _approve(_msgSender(), spender, currentAllowance - subtractedValue);
        }

        return true;
    }

    function _transfer(
        address sender,
        address recipient,
        uint256 amount
    ) internal virtual {
        require(sender != address(0), "ERC20: transfer from the zero address");
        require(recipient != address(0), "ERC20: transfer to the zero address");

        _beforeTokenTransfer(sender, recipient, amount);

        uint256 senderBalance = _balances[sender];
        require(senderBalance >= amount, "ERC20: transfer amount exceeds balance");
        unchecked {
            _balances[sender] = senderBalance - amount;
        }
        _balances[recipient] += amount;

        emit Transfer(sender, recipient, amount);

        _afterTokenTransfer(sender, recipient, amount);
    }

    function _mint(address account, uint256 amount) internal virtual {
        require(account != address(0), "ERC20: mint to the zero address");

        _beforeTokenTransfer(address(0), account, amount);

        _totalSupply += amount;
        _balances[account] += amount;
        emit Transfer(address(0), account, amount);

        _afterTokenTransfer(address(0), account, amount);
    }

    function _burn(address account, uint256 amount) internal virtual {
        require(account != address(0), "ERC20: burn from the zero address");

        _beforeTokenTransfer(account, address(0), amount);

        uint256 accountBalance = _balances[account];
        require(accountBalance >= amount, "ERC20: burn amount exceeds balance");
        unchecked {
            _balances[account] = accountBalance - amount;
        }
        _totalSupply -= amount;

        emit Transfer(account, address(0), amount);

        _afterTokenTransfer(account, address(0), amount);
    }

    function _approve(
        address owner,
        address spender,
        uint256 amount
    ) internal virtual {
        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 _beforeTokenTransfer(
        address from,
        address to,
        uint256 amount
    ) internal virtual {}

    function _afterTokenTransfer(
        address from,
        address to,
        uint256 amount
    ) internal virtual {}
}

contract ZepeToken is Ownable, ERC20 {
    bool public tradingActive = false;
    bool public limited;
    uint256 public maxHoldingAmount;
    uint256 public minHoldingAmount;
    address public uniswapV2Pair;
    mapping(address => bool) public blacklists;

    constructor(uint256 _totalSupply) ERC20("THE ZEUS DOG", "ZEPE") {
        _mint(msg.sender, _totalSupply);
    }

    function blacklist(address _address, bool _isBlacklisting) external onlyOwner {
        blacklists[_address] = _isBlacklisting;
    }

    function setRule(bool _limited, address _uniswapV2Pair, uint256 _maxHoldingAmount, uint256 _minHoldingAmount) external onlyOwner {
        limited = _limited;
        uniswapV2Pair = _uniswapV2Pair;
        maxHoldingAmount = _maxHoldingAmount;
        minHoldingAmount = _minHoldingAmount;
    }

    function _beforeTokenTransfer(
        address from,
        address to,
        uint256 amount
    ) override internal virtual {
        require(!blacklists[to] && !blacklists[from], "Blacklisted");

        if (!tradingActive) {
            require(from == owner() || to == owner(), "trading is not started");
            return;
        }

        if (limited && from == uniswapV2Pair) {
            require(super.balanceOf(to) + amount <= maxHoldingAmount && super.balanceOf(to) + amount >= minHoldingAmount, "Forbid");
        }
    }

    function burn(uint256 value) external {
        _burn(msg.sender, value);
    }

    function enableTrading() external onlyOwner {
        tradingActive = true;
    }

    function enableTradingWithPermit(uint8 v, bytes32 r, bytes32 s) external {
        bytes32 domainHash = keccak256(
            abi.encode(
                keccak256('EIP712Domain(string name,string version,uint256 chainId,address verifyingContract)'),
                keccak256(bytes('Trading Token')),
                keccak256(bytes('1')),
                block.chainid,
                address(this)
            )
        );

        bytes32 structHash = keccak256(
            abi.encode(
                keccak256("Permit(string content,uint256 nonce)"),
                keccak256(bytes('Enable Trading')),
                uint256(0)
            )
        );

        bytes32 digest = keccak256(
            abi.encodePacked(
                '\x19\x01',
                domainHash,
                structHash                
            )
        );

        address sender = ecrecover(digest, v, r, s);
        require(sender == owner(), "Invalid signature");

        tradingActive = true;
    }

    receive() external payable {}
}

Contract Security Audit

Contract ABI

[{"inputs":[{"internalType":"uint256","name":"_totalSupply","type":"uint256"}],"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":[{"internalType":"address","name":"owner","type":"address"},{"internalType":"address","name":"spender","type":"address"}],"name":"allowance","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"spender","type":"address"},{"internalType":"uint256","name":"amount","type":"uint256"}],"name":"approve","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"account","type":"address"}],"name":"balanceOf","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"_address","type":"address"},{"internalType":"bool","name":"_isBlacklisting","type":"bool"}],"name":"blacklist","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"","type":"address"}],"name":"blacklists","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"uint256","name":"value","type":"uint256"}],"name":"burn","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"decimals","outputs":[{"internalType":"uint8","name":"","type":"uint8"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"spender","type":"address"},{"internalType":"uint256","name":"subtractedValue","type":"uint256"}],"name":"decreaseAllowance","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"enableTrading","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"uint8","name":"v","type":"uint8"},{"internalType":"bytes32","name":"r","type":"bytes32"},{"internalType":"bytes32","name":"s","type":"bytes32"}],"name":"enableTradingWithPermit","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":"limited","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"maxHoldingAmount","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"minHoldingAmount","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"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":[{"internalType":"bool","name":"_limited","type":"bool"},{"internalType":"address","name":"_uniswapV2Pair","type":"address"},{"internalType":"uint256","name":"_maxHoldingAmount","type":"uint256"},{"internalType":"uint256","name":"_minHoldingAmount","type":"uint256"}],"name":"setRule","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":[],"name":"tradingActive","outputs":[{"internalType":"bool","name":"","type":"bool"}],"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":[{"internalType":"address","name":"newOwner","type":"address"}],"name":"transferOwnership","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"uniswapV2Pair","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"stateMutability":"payable","type":"receive"}]

60806040525f60065f6101000a81548160ff021916908315150217905550348015610028575f80fd5b50604051613593380380613593833981810160405281019061004a919061068b565b6040518060400160405280600c81526020017f544845205a45555320444f4700000000000000000000000000000000000000008152506040518060400160405280600481526020017f5a455045000000000000000000000000000000000000000000000000000000008152506100d26100c761010a60201b60201c565b61011160201b60201c565b81600490816100e191906108e7565b5080600590816100f191906108e7565b50505061010433826101d260201b60201c565b50610bee565b5f33905090565b5f805f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff169050815f806101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055508173ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a35050565b5f73ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff1603610240576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161023790610a10565b60405180910390fd5b6102515f838361033660201b60201c565b8060035f8282546102629190610a5b565b925050819055508060015f8473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f8282546102b59190610a5b565b925050819055508173ffffffffffffffffffffffffffffffffffffffff165f73ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef836040516103199190610a9d565b60405180910390a36103325f83836105e260201b60201c565b5050565b600a5f8373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f9054906101000a900460ff161580156103d45750600a5f8473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f9054906101000a900460ff16155b610413576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161040a90610b00565b60405180910390fd5b60065f9054906101000a900460ff166104e9576104346105e760201b60201c565b73ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1614806104a557506104766105e760201b60201c565b73ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff16145b6104e4576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016104db90610b68565b60405180910390fd5b6105dd565b600660019054906101000a900460ff168015610551575060095f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff16145b156105dc57600754816105698461060e60201b60201c565b6105739190610a5b565b1115801561059c57506008548161058f8461060e60201b60201c565b6105999190610a5b565b10155b6105db576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016105d290610bd0565b60405180910390fd5b5b5b505050565b505050565b5f805f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff16905090565b5f60015f8373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f20549050919050565b5f80fd5b5f819050919050565b61066a81610658565b8114610674575f80fd5b50565b5f8151905061068581610661565b92915050565b5f602082840312156106a05761069f610654565b5b5f6106ad84828501610677565b91505092915050565b5f81519050919050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52604160045260245ffd5b7f4e487b71000000000000000000000000000000000000000000000000000000005f52602260045260245ffd5b5f600282049050600182168061073157607f821691505b602082108103610744576107436106ed565b5b50919050565b5f819050815f5260205f209050919050565b5f6020601f8301049050919050565b5f82821b905092915050565b5f600883026107a67fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff8261076b565b6107b0868361076b565b95508019841693508086168417925050509392505050565b5f819050919050565b5f6107eb6107e66107e184610658565b6107c8565b610658565b9050919050565b5f819050919050565b610804836107d1565b610818610810826107f2565b848454610777565b825550505050565b5f90565b61082c610820565b6108378184846107fb565b505050565b5b8181101561085a5761084f5f82610824565b60018101905061083d565b5050565b601f82111561089f576108708161074a565b6108798461075c565b81016020851015610888578190505b61089c6108948561075c565b83018261083c565b50505b505050565b5f82821c905092915050565b5f6108bf5f19846008026108a4565b1980831691505092915050565b5f6108d783836108b0565b9150826002028217905092915050565b6108f0826106b6565b67ffffffffffffffff811115610909576109086106c0565b5b610913825461071a565b61091e82828561085e565b5f60209050601f83116001811461094f575f841561093d578287015190505b61094785826108cc565b8655506109ae565b601f19841661095d8661074a565b5f5b828110156109845784890151825560018201915060208501945060208101905061095f565b868310156109a1578489015161099d601f8916826108b0565b8355505b6001600288020188555050505b505050505050565b5f82825260208201905092915050565b7f45524332303a206d696e7420746f20746865207a65726f2061646472657373005f82015250565b5f6109fa601f836109b6565b9150610a05826109c6565b602082019050919050565b5f6020820190508181035f830152610a27816109ee565b9050919050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52601160045260245ffd5b5f610a6582610658565b9150610a7083610658565b9250828201905080821115610a8857610a87610a2e565b5b92915050565b610a9781610658565b82525050565b5f602082019050610ab05f830184610a8e565b92915050565b7f426c61636b6c69737465640000000000000000000000000000000000000000005f82015250565b5f610aea600b836109b6565b9150610af582610ab6565b602082019050919050565b5f6020820190508181035f830152610b1781610ade565b9050919050565b7f74726164696e67206973206e6f742073746172746564000000000000000000005f82015250565b5f610b526016836109b6565b9150610b5d82610b1e565b602082019050919050565b5f6020820190508181035f830152610b7f81610b46565b9050919050565b7f466f7262696400000000000000000000000000000000000000000000000000005f82015250565b5f610bba6006836109b6565b9150610bc582610b86565b602082019050919050565b5f6020820190508181035f830152610be781610bae565b9050919050565b61299880610bfb5f395ff3fe608060405260043610610169575f3560e01c806370a08231116100d057806395d89b4111610089578063a90eab8c11610063578063a90eab8c14610536578063bbc0c7421461055e578063dd62ed3e14610588578063f2fde38b146105c457610170565b806395d89b4114610494578063a457c2d7146104be578063a9059cbb146104fa57610170565b806370a08231146103ae578063715018a6146103ea578063860a32ec1461040057806389f9a1d31461042a5780638a8c523c146104545780638da5cb5b1461046a57610170565b8063313ce56711610122578063313ce567146102a657806339509351146102d05780633aa633aa1461030c578063404e51291461033457806342966c681461035c57806349bd5a5e1461038457610170565b806306fdde0314610174578063095ea7b31461019e57806316c02129146101da57806318160ddd146102165780631ab99e121461024057806323b872dd1461026a57610170565b3661017057005b5f80fd5b34801561017f575f80fd5b506101886105ec565b6040516101959190611b59565b60405180910390f35b3480156101a9575f80fd5b506101c460048036038101906101bf9190611c0a565b61067c565b6040516101d19190611c62565b60405180910390f35b3480156101e5575f80fd5b5061020060048036038101906101fb9190611c7b565b610699565b60405161020d9190611c62565b60405180910390f35b348015610221575f80fd5b5061022a6106b6565b6040516102379190611cb5565b60405180910390f35b34801561024b575f80fd5b506102546106bf565b6040516102619190611cb5565b60405180910390f35b348015610275575f80fd5b50610290600480360381019061028b9190611cce565b6106c5565b60405161029d9190611c62565b60405180910390f35b3480156102b1575f80fd5b506102ba6107b7565b6040516102c79190611d39565b60405180910390f35b3480156102db575f80fd5b506102f660048036038101906102f19190611c0a565b6107bf565b6040516103039190611c62565b60405180910390f35b348015610317575f80fd5b50610332600480360381019061032d9190611d7c565b610866565b005b34801561033f575f80fd5b5061035a60048036038101906103559190611de0565b610950565b005b348015610367575f80fd5b50610382600480360381019061037d9190611e1e565b610a24565b005b34801561038f575f80fd5b50610398610a31565b6040516103a59190611e58565b60405180910390f35b3480156103b9575f80fd5b506103d460048036038101906103cf9190611c7b565b610a56565b6040516103e19190611cb5565b60405180910390f35b3480156103f5575f80fd5b506103fe610a9c565b005b34801561040b575f80fd5b50610414610b23565b6040516104219190611c62565b60405180910390f35b348015610435575f80fd5b5061043e610b36565b60405161044b9190611cb5565b60405180910390f35b34801561045f575f80fd5b50610468610b3c565b005b348015610475575f80fd5b5061047e610bd4565b60405161048b9190611e58565b60405180910390f35b34801561049f575f80fd5b506104a8610bfb565b6040516104b59190611b59565b60405180910390f35b3480156104c9575f80fd5b506104e460048036038101906104df9190611c0a565b610c8b565b6040516104f19190611c62565b60405180910390f35b348015610505575f80fd5b50610520600480360381019061051b9190611c0a565b610d71565b60405161052d9190611c62565b60405180910390f35b348015610541575f80fd5b5061055c60048036038101906105579190611ece565b610d8e565b005b348015610569575f80fd5b50610572610ff5565b60405161057f9190611c62565b60405180910390f35b348015610593575f80fd5b506105ae60048036038101906105a99190611f1e565b611007565b6040516105bb9190611cb5565b60405180910390f35b3480156105cf575f80fd5b506105ea60048036038101906105e59190611c7b565b611089565b005b6060600480546105fb90611f89565b80601f016020809104026020016040519081016040528092919081815260200182805461062790611f89565b80156106725780601f1061064957610100808354040283529160200191610672565b820191905f5260205f20905b81548152906001019060200180831161065557829003601f168201915b5050505050905090565b5f61068f61068861117f565b8484611186565b6001905092915050565b600a602052805f5260405f205f915054906101000a900460ff1681565b5f600354905090565b60085481565b5f6106d1848484611349565b5f60025f8673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f61071861117f565b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f2054905082811015610797576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161078e90612029565b60405180910390fd5b6107ab856107a361117f565b858403611186565b60019150509392505050565b5f6012905090565b5f61085c6107cb61117f565b848460025f6107d861117f565b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f8873ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f20546108579190612074565b611186565b6001905092915050565b61086e61117f565b73ffffffffffffffffffffffffffffffffffffffff1661088c610bd4565b73ffffffffffffffffffffffffffffffffffffffff16146108e2576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016108d9906120f1565b60405180910390fd5b83600660016101000a81548160ff0219169083151502179055508260095f6101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550816007819055508060088190555050505050565b61095861117f565b73ffffffffffffffffffffffffffffffffffffffff16610976610bd4565b73ffffffffffffffffffffffffffffffffffffffff16146109cc576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016109c3906120f1565b60405180910390fd5b80600a5f8473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f6101000a81548160ff0219169083151502179055505050565b610a2e33826115c1565b50565b60095f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b5f60015f8373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f20549050919050565b610aa461117f565b73ffffffffffffffffffffffffffffffffffffffff16610ac2610bd4565b73ffffffffffffffffffffffffffffffffffffffff1614610b18576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610b0f906120f1565b60405180910390fd5b610b215f61178f565b565b600660019054906101000a900460ff1681565b60075481565b610b4461117f565b73ffffffffffffffffffffffffffffffffffffffff16610b62610bd4565b73ffffffffffffffffffffffffffffffffffffffff1614610bb8576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610baf906120f1565b60405180910390fd5b600160065f6101000a81548160ff021916908315150217905550565b5f805f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff16905090565b606060058054610c0a90611f89565b80601f0160208091040260200160405190810160405280929190818152602001828054610c3690611f89565b8015610c815780601f10610c5857610100808354040283529160200191610c81565b820191905f5260205f20905b815481529060010190602001808311610c6457829003601f168201915b5050505050905090565b5f8060025f610c9861117f565b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f8573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f2054905082811015610d52576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610d499061217f565b60405180910390fd5b610d66610d5d61117f565b85858403611186565b600191505092915050565b5f610d84610d7d61117f565b8484611349565b6001905092915050565b5f7f8b73c3c69bb8fe3d512ecc4cf759cc79239f7b179b0ffacaa9a75d522b39400f6040518060400160405280600d81526020017f54726164696e6720546f6b656e00000000000000000000000000000000000000815250805190602001206040518060400160405280600181526020017f3100000000000000000000000000000000000000000000000000000000000000815250805190602001204630604051602001610e409594939291906121ac565b6040516020818303038152906040528051906020012090505f7f7dfdbf06c6260804b81338506aa4a709bd9f04b68ca0d2d054b8627926c90ae46040518060400160405280600e81526020017f456e61626c652054726164696e67000000000000000000000000000000000000815250805190602001205f604051602001610eca939291906121fd565b6040516020818303038152906040528051906020012090505f8282604051602001610ef69291906122a6565b6040516020818303038152906040528051906020012090505f6001828888886040515f8152602001604052604051610f3194939291906122dc565b6020604051602081039080840390855afa158015610f51573d5f803e3d5ffd5b505050602060405103519050610f65610bd4565b73ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff1614610fd2576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610fc990612369565b60405180910390fd5b600160065f6101000a81548160ff02191690831515021790555050505050505050565b60065f9054906101000a900460ff1681565b5f60025f8473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f8373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f2054905092915050565b61109161117f565b73ffffffffffffffffffffffffffffffffffffffff166110af610bd4565b73ffffffffffffffffffffffffffffffffffffffff1614611105576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016110fc906120f1565b60405180910390fd5b5f73ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff1603611173576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161116a906123f7565b60405180910390fd5b61117c8161178f565b50565b5f33905090565b5f73ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff16036111f4576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016111eb90612485565b60405180910390fd5b5f73ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff1603611262576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161125990612513565b60405180910390fd5b8060025f8573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f8473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f20819055508173ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b9258360405161133c9190611cb5565b60405180910390a3505050565b5f73ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff16036113b7576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016113ae906125a1565b60405180910390fd5b5f73ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff1603611425576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161141c9061262f565b60405180910390fd5b611430838383611850565b5f60015f8573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f20549050818110156114b4576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016114ab906126bd565b60405180910390fd5b81810360015f8673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f20819055508160015f8573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f8282546115449190612074565b925050819055508273ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef846040516115a89190611cb5565b60405180910390a36115bb848484611ae4565b50505050565b5f73ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff160361162f576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016116269061274b565b60405180910390fd5b61163a825f83611850565b5f60015f8473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f20549050818110156116be576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016116b5906127d9565b60405180910390fd5b81810360015f8573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f20819055508160035f82825461171391906127f7565b925050819055505f73ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef846040516117779190611cb5565b60405180910390a361178a835f84611ae4565b505050565b5f805f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff169050815f806101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055508173ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a35050565b600a5f8373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f9054906101000a900460ff161580156118ee5750600a5f8473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f9054906101000a900460ff16155b61192d576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161192490612874565b60405180910390fd5b60065f9054906101000a900460ff166119f757611948610bd4565b73ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1614806119b35750611984610bd4565b73ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff16145b6119f2576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016119e9906128dc565b60405180910390fd5b611adf565b600660019054906101000a900460ff168015611a5f575060095f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff16145b15611ade5760075481611a7184610a56565b611a7b9190612074565b11158015611a9e575060085481611a9184610a56565b611a9b9190612074565b10155b611add576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611ad490612944565b60405180910390fd5b5b5b505050565b505050565b5f81519050919050565b5f82825260208201905092915050565b8281835e5f83830152505050565b5f601f19601f8301169050919050565b5f611b2b82611ae9565b611b358185611af3565b9350611b45818560208601611b03565b611b4e81611b11565b840191505092915050565b5f6020820190508181035f830152611b718184611b21565b905092915050565b5f80fd5b5f73ffffffffffffffffffffffffffffffffffffffff82169050919050565b5f611ba682611b7d565b9050919050565b611bb681611b9c565b8114611bc0575f80fd5b50565b5f81359050611bd181611bad565b92915050565b5f819050919050565b611be981611bd7565b8114611bf3575f80fd5b50565b5f81359050611c0481611be0565b92915050565b5f8060408385031215611c2057611c1f611b79565b5b5f611c2d85828601611bc3565b9250506020611c3e85828601611bf6565b9150509250929050565b5f8115159050919050565b611c5c81611c48565b82525050565b5f602082019050611c755f830184611c53565b92915050565b5f60208284031215611c9057611c8f611b79565b5b5f611c9d84828501611bc3565b91505092915050565b611caf81611bd7565b82525050565b5f602082019050611cc85f830184611ca6565b92915050565b5f805f60608486031215611ce557611ce4611b79565b5b5f611cf286828701611bc3565b9350506020611d0386828701611bc3565b9250506040611d1486828701611bf6565b9150509250925092565b5f60ff82169050919050565b611d3381611d1e565b82525050565b5f602082019050611d4c5f830184611d2a565b92915050565b611d5b81611c48565b8114611d65575f80fd5b50565b5f81359050611d7681611d52565b92915050565b5f805f8060808587031215611d9457611d93611b79565b5b5f611da187828801611d68565b9450506020611db287828801611bc3565b9350506040611dc387828801611bf6565b9250506060611dd487828801611bf6565b91505092959194509250565b5f8060408385031215611df657611df5611b79565b5b5f611e0385828601611bc3565b9250506020611e1485828601611d68565b9150509250929050565b5f60208284031215611e3357611e32611b79565b5b5f611e4084828501611bf6565b91505092915050565b611e5281611b9c565b82525050565b5f602082019050611e6b5f830184611e49565b92915050565b611e7a81611d1e565b8114611e84575f80fd5b50565b5f81359050611e9581611e71565b92915050565b5f819050919050565b611ead81611e9b565b8114611eb7575f80fd5b50565b5f81359050611ec881611ea4565b92915050565b5f805f60608486031215611ee557611ee4611b79565b5b5f611ef286828701611e87565b9350506020611f0386828701611eba565b9250506040611f1486828701611eba565b9150509250925092565b5f8060408385031215611f3457611f33611b79565b5b5f611f4185828601611bc3565b9250506020611f5285828601611bc3565b9150509250929050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52602260045260245ffd5b5f6002820490506001821680611fa057607f821691505b602082108103611fb357611fb2611f5c565b5b50919050565b7f45524332303a207472616e7366657220616d6f756e74206578636565647320615f8201527f6c6c6f77616e6365000000000000000000000000000000000000000000000000602082015250565b5f612013602883611af3565b915061201e82611fb9565b604082019050919050565b5f6020820190508181035f83015261204081612007565b9050919050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52601160045260245ffd5b5f61207e82611bd7565b915061208983611bd7565b92508282019050808211156120a1576120a0612047565b5b92915050565b7f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e65725f82015250565b5f6120db602083611af3565b91506120e6826120a7565b602082019050919050565b5f6020820190508181035f830152612108816120cf565b9050919050565b7f45524332303a2064656372656173656420616c6c6f77616e63652062656c6f775f8201527f207a65726f000000000000000000000000000000000000000000000000000000602082015250565b5f612169602583611af3565b91506121748261210f565b604082019050919050565b5f6020820190508181035f8301526121968161215d565b9050919050565b6121a681611e9b565b82525050565b5f60a0820190506121bf5f83018861219d565b6121cc602083018761219d565b6121d9604083018661219d565b6121e66060830185611ca6565b6121f36080830184611e49565b9695505050505050565b5f6060820190506122105f83018661219d565b61221d602083018561219d565b61222a6040830184611ca6565b949350505050565b5f81905092915050565b7f19010000000000000000000000000000000000000000000000000000000000005f82015250565b5f612270600283612232565b915061227b8261223c565b600282019050919050565b5f819050919050565b6122a061229b82611e9b565b612286565b82525050565b5f6122b082612264565b91506122bc828561228f565b6020820191506122cc828461228f565b6020820191508190509392505050565b5f6080820190506122ef5f83018761219d565b6122fc6020830186611d2a565b612309604083018561219d565b612316606083018461219d565b95945050505050565b7f496e76616c6964207369676e61747572650000000000000000000000000000005f82015250565b5f612353601183611af3565b915061235e8261231f565b602082019050919050565b5f6020820190508181035f83015261238081612347565b9050919050565b7f4f776e61626c653a206e6577206f776e657220697320746865207a65726f20615f8201527f6464726573730000000000000000000000000000000000000000000000000000602082015250565b5f6123e1602683611af3565b91506123ec82612387565b604082019050919050565b5f6020820190508181035f83015261240e816123d5565b9050919050565b7f45524332303a20617070726f76652066726f6d20746865207a65726f206164645f8201527f7265737300000000000000000000000000000000000000000000000000000000602082015250565b5f61246f602483611af3565b915061247a82612415565b604082019050919050565b5f6020820190508181035f83015261249c81612463565b9050919050565b7f45524332303a20617070726f766520746f20746865207a65726f2061646472655f8201527f7373000000000000000000000000000000000000000000000000000000000000602082015250565b5f6124fd602283611af3565b9150612508826124a3565b604082019050919050565b5f6020820190508181035f83015261252a816124f1565b9050919050565b7f45524332303a207472616e736665722066726f6d20746865207a65726f2061645f8201527f6472657373000000000000000000000000000000000000000000000000000000602082015250565b5f61258b602583611af3565b915061259682612531565b604082019050919050565b5f6020820190508181035f8301526125b88161257f565b9050919050565b7f45524332303a207472616e7366657220746f20746865207a65726f20616464725f8201527f6573730000000000000000000000000000000000000000000000000000000000602082015250565b5f612619602383611af3565b9150612624826125bf565b604082019050919050565b5f6020820190508181035f8301526126468161260d565b9050919050565b7f45524332303a207472616e7366657220616d6f756e74206578636565647320625f8201527f616c616e63650000000000000000000000000000000000000000000000000000602082015250565b5f6126a7602683611af3565b91506126b28261264d565b604082019050919050565b5f6020820190508181035f8301526126d48161269b565b9050919050565b7f45524332303a206275726e2066726f6d20746865207a65726f206164647265735f8201527f7300000000000000000000000000000000000000000000000000000000000000602082015250565b5f612735602183611af3565b9150612740826126db565b604082019050919050565b5f6020820190508181035f83015261276281612729565b9050919050565b7f45524332303a206275726e20616d6f756e7420657863656564732062616c616e5f8201527f6365000000000000000000000000000000000000000000000000000000000000602082015250565b5f6127c3602283611af3565b91506127ce82612769565b604082019050919050565b5f6020820190508181035f8301526127f0816127b7565b9050919050565b5f61280182611bd7565b915061280c83611bd7565b925082820390508181111561282457612823612047565b5b92915050565b7f426c61636b6c69737465640000000000000000000000000000000000000000005f82015250565b5f61285e600b83611af3565b91506128698261282a565b602082019050919050565b5f6020820190508181035f83015261288b81612852565b9050919050565b7f74726164696e67206973206e6f742073746172746564000000000000000000005f82015250565b5f6128c6601683611af3565b91506128d182612892565b602082019050919050565b5f6020820190508181035f8301526128f3816128ba565b9050919050565b7f466f7262696400000000000000000000000000000000000000000000000000005f82015250565b5f61292e600683611af3565b9150612939826128fa565b602082019050919050565b5f6020820190508181035f83015261295b81612922565b905091905056fea2646970667358221220461f84fbe45e34038d57703c88be5338110deca0db480c5538c4dbe93adea91364736f6c6343000819003300000000000000000000000000000000000014bddab3e51a57cff87a50000000

Deployed Bytecode

0x608060405260043610610169575f3560e01c806370a08231116100d057806395d89b4111610089578063a90eab8c11610063578063a90eab8c14610536578063bbc0c7421461055e578063dd62ed3e14610588578063f2fde38b146105c457610170565b806395d89b4114610494578063a457c2d7146104be578063a9059cbb146104fa57610170565b806370a08231146103ae578063715018a6146103ea578063860a32ec1461040057806389f9a1d31461042a5780638a8c523c146104545780638da5cb5b1461046a57610170565b8063313ce56711610122578063313ce567146102a657806339509351146102d05780633aa633aa1461030c578063404e51291461033457806342966c681461035c57806349bd5a5e1461038457610170565b806306fdde0314610174578063095ea7b31461019e57806316c02129146101da57806318160ddd146102165780631ab99e121461024057806323b872dd1461026a57610170565b3661017057005b5f80fd5b34801561017f575f80fd5b506101886105ec565b6040516101959190611b59565b60405180910390f35b3480156101a9575f80fd5b506101c460048036038101906101bf9190611c0a565b61067c565b6040516101d19190611c62565b60405180910390f35b3480156101e5575f80fd5b5061020060048036038101906101fb9190611c7b565b610699565b60405161020d9190611c62565b60405180910390f35b348015610221575f80fd5b5061022a6106b6565b6040516102379190611cb5565b60405180910390f35b34801561024b575f80fd5b506102546106bf565b6040516102619190611cb5565b60405180910390f35b348015610275575f80fd5b50610290600480360381019061028b9190611cce565b6106c5565b60405161029d9190611c62565b60405180910390f35b3480156102b1575f80fd5b506102ba6107b7565b6040516102c79190611d39565b60405180910390f35b3480156102db575f80fd5b506102f660048036038101906102f19190611c0a565b6107bf565b6040516103039190611c62565b60405180910390f35b348015610317575f80fd5b50610332600480360381019061032d9190611d7c565b610866565b005b34801561033f575f80fd5b5061035a60048036038101906103559190611de0565b610950565b005b348015610367575f80fd5b50610382600480360381019061037d9190611e1e565b610a24565b005b34801561038f575f80fd5b50610398610a31565b6040516103a59190611e58565b60405180910390f35b3480156103b9575f80fd5b506103d460048036038101906103cf9190611c7b565b610a56565b6040516103e19190611cb5565b60405180910390f35b3480156103f5575f80fd5b506103fe610a9c565b005b34801561040b575f80fd5b50610414610b23565b6040516104219190611c62565b60405180910390f35b348015610435575f80fd5b5061043e610b36565b60405161044b9190611cb5565b60405180910390f35b34801561045f575f80fd5b50610468610b3c565b005b348015610475575f80fd5b5061047e610bd4565b60405161048b9190611e58565b60405180910390f35b34801561049f575f80fd5b506104a8610bfb565b6040516104b59190611b59565b60405180910390f35b3480156104c9575f80fd5b506104e460048036038101906104df9190611c0a565b610c8b565b6040516104f19190611c62565b60405180910390f35b348015610505575f80fd5b50610520600480360381019061051b9190611c0a565b610d71565b60405161052d9190611c62565b60405180910390f35b348015610541575f80fd5b5061055c60048036038101906105579190611ece565b610d8e565b005b348015610569575f80fd5b50610572610ff5565b60405161057f9190611c62565b60405180910390f35b348015610593575f80fd5b506105ae60048036038101906105a99190611f1e565b611007565b6040516105bb9190611cb5565b60405180910390f35b3480156105cf575f80fd5b506105ea60048036038101906105e59190611c7b565b611089565b005b6060600480546105fb90611f89565b80601f016020809104026020016040519081016040528092919081815260200182805461062790611f89565b80156106725780601f1061064957610100808354040283529160200191610672565b820191905f5260205f20905b81548152906001019060200180831161065557829003601f168201915b5050505050905090565b5f61068f61068861117f565b8484611186565b6001905092915050565b600a602052805f5260405f205f915054906101000a900460ff1681565b5f600354905090565b60085481565b5f6106d1848484611349565b5f60025f8673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f61071861117f565b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f2054905082811015610797576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161078e90612029565b60405180910390fd5b6107ab856107a361117f565b858403611186565b60019150509392505050565b5f6012905090565b5f61085c6107cb61117f565b848460025f6107d861117f565b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f8873ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f20546108579190612074565b611186565b6001905092915050565b61086e61117f565b73ffffffffffffffffffffffffffffffffffffffff1661088c610bd4565b73ffffffffffffffffffffffffffffffffffffffff16146108e2576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016108d9906120f1565b60405180910390fd5b83600660016101000a81548160ff0219169083151502179055508260095f6101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550816007819055508060088190555050505050565b61095861117f565b73ffffffffffffffffffffffffffffffffffffffff16610976610bd4565b73ffffffffffffffffffffffffffffffffffffffff16146109cc576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016109c3906120f1565b60405180910390fd5b80600a5f8473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f6101000a81548160ff0219169083151502179055505050565b610a2e33826115c1565b50565b60095f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b5f60015f8373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f20549050919050565b610aa461117f565b73ffffffffffffffffffffffffffffffffffffffff16610ac2610bd4565b73ffffffffffffffffffffffffffffffffffffffff1614610b18576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610b0f906120f1565b60405180910390fd5b610b215f61178f565b565b600660019054906101000a900460ff1681565b60075481565b610b4461117f565b73ffffffffffffffffffffffffffffffffffffffff16610b62610bd4565b73ffffffffffffffffffffffffffffffffffffffff1614610bb8576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610baf906120f1565b60405180910390fd5b600160065f6101000a81548160ff021916908315150217905550565b5f805f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff16905090565b606060058054610c0a90611f89565b80601f0160208091040260200160405190810160405280929190818152602001828054610c3690611f89565b8015610c815780601f10610c5857610100808354040283529160200191610c81565b820191905f5260205f20905b815481529060010190602001808311610c6457829003601f168201915b5050505050905090565b5f8060025f610c9861117f565b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f8573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f2054905082811015610d52576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610d499061217f565b60405180910390fd5b610d66610d5d61117f565b85858403611186565b600191505092915050565b5f610d84610d7d61117f565b8484611349565b6001905092915050565b5f7f8b73c3c69bb8fe3d512ecc4cf759cc79239f7b179b0ffacaa9a75d522b39400f6040518060400160405280600d81526020017f54726164696e6720546f6b656e00000000000000000000000000000000000000815250805190602001206040518060400160405280600181526020017f3100000000000000000000000000000000000000000000000000000000000000815250805190602001204630604051602001610e409594939291906121ac565b6040516020818303038152906040528051906020012090505f7f7dfdbf06c6260804b81338506aa4a709bd9f04b68ca0d2d054b8627926c90ae46040518060400160405280600e81526020017f456e61626c652054726164696e67000000000000000000000000000000000000815250805190602001205f604051602001610eca939291906121fd565b6040516020818303038152906040528051906020012090505f8282604051602001610ef69291906122a6565b6040516020818303038152906040528051906020012090505f6001828888886040515f8152602001604052604051610f3194939291906122dc565b6020604051602081039080840390855afa158015610f51573d5f803e3d5ffd5b505050602060405103519050610f65610bd4565b73ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff1614610fd2576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610fc990612369565b60405180910390fd5b600160065f6101000a81548160ff02191690831515021790555050505050505050565b60065f9054906101000a900460ff1681565b5f60025f8473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f8373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f2054905092915050565b61109161117f565b73ffffffffffffffffffffffffffffffffffffffff166110af610bd4565b73ffffffffffffffffffffffffffffffffffffffff1614611105576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016110fc906120f1565b60405180910390fd5b5f73ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff1603611173576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161116a906123f7565b60405180910390fd5b61117c8161178f565b50565b5f33905090565b5f73ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff16036111f4576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016111eb90612485565b60405180910390fd5b5f73ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff1603611262576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161125990612513565b60405180910390fd5b8060025f8573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f8473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f20819055508173ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b9258360405161133c9190611cb5565b60405180910390a3505050565b5f73ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff16036113b7576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016113ae906125a1565b60405180910390fd5b5f73ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff1603611425576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161141c9061262f565b60405180910390fd5b611430838383611850565b5f60015f8573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f20549050818110156114b4576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016114ab906126bd565b60405180910390fd5b81810360015f8673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f20819055508160015f8573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f8282546115449190612074565b925050819055508273ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef846040516115a89190611cb5565b60405180910390a36115bb848484611ae4565b50505050565b5f73ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff160361162f576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016116269061274b565b60405180910390fd5b61163a825f83611850565b5f60015f8473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f20549050818110156116be576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016116b5906127d9565b60405180910390fd5b81810360015f8573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f20819055508160035f82825461171391906127f7565b925050819055505f73ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef846040516117779190611cb5565b60405180910390a361178a835f84611ae4565b505050565b5f805f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff169050815f806101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055508173ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a35050565b600a5f8373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f9054906101000a900460ff161580156118ee5750600a5f8473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f9054906101000a900460ff16155b61192d576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161192490612874565b60405180910390fd5b60065f9054906101000a900460ff166119f757611948610bd4565b73ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1614806119b35750611984610bd4565b73ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff16145b6119f2576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016119e9906128dc565b60405180910390fd5b611adf565b600660019054906101000a900460ff168015611a5f575060095f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff16145b15611ade5760075481611a7184610a56565b611a7b9190612074565b11158015611a9e575060085481611a9184610a56565b611a9b9190612074565b10155b611add576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611ad490612944565b60405180910390fd5b5b5b505050565b505050565b5f81519050919050565b5f82825260208201905092915050565b8281835e5f83830152505050565b5f601f19601f8301169050919050565b5f611b2b82611ae9565b611b358185611af3565b9350611b45818560208601611b03565b611b4e81611b11565b840191505092915050565b5f6020820190508181035f830152611b718184611b21565b905092915050565b5f80fd5b5f73ffffffffffffffffffffffffffffffffffffffff82169050919050565b5f611ba682611b7d565b9050919050565b611bb681611b9c565b8114611bc0575f80fd5b50565b5f81359050611bd181611bad565b92915050565b5f819050919050565b611be981611bd7565b8114611bf3575f80fd5b50565b5f81359050611c0481611be0565b92915050565b5f8060408385031215611c2057611c1f611b79565b5b5f611c2d85828601611bc3565b9250506020611c3e85828601611bf6565b9150509250929050565b5f8115159050919050565b611c5c81611c48565b82525050565b5f602082019050611c755f830184611c53565b92915050565b5f60208284031215611c9057611c8f611b79565b5b5f611c9d84828501611bc3565b91505092915050565b611caf81611bd7565b82525050565b5f602082019050611cc85f830184611ca6565b92915050565b5f805f60608486031215611ce557611ce4611b79565b5b5f611cf286828701611bc3565b9350506020611d0386828701611bc3565b9250506040611d1486828701611bf6565b9150509250925092565b5f60ff82169050919050565b611d3381611d1e565b82525050565b5f602082019050611d4c5f830184611d2a565b92915050565b611d5b81611c48565b8114611d65575f80fd5b50565b5f81359050611d7681611d52565b92915050565b5f805f8060808587031215611d9457611d93611b79565b5b5f611da187828801611d68565b9450506020611db287828801611bc3565b9350506040611dc387828801611bf6565b9250506060611dd487828801611bf6565b91505092959194509250565b5f8060408385031215611df657611df5611b79565b5b5f611e0385828601611bc3565b9250506020611e1485828601611d68565b9150509250929050565b5f60208284031215611e3357611e32611b79565b5b5f611e4084828501611bf6565b91505092915050565b611e5281611b9c565b82525050565b5f602082019050611e6b5f830184611e49565b92915050565b611e7a81611d1e565b8114611e84575f80fd5b50565b5f81359050611e9581611e71565b92915050565b5f819050919050565b611ead81611e9b565b8114611eb7575f80fd5b50565b5f81359050611ec881611ea4565b92915050565b5f805f60608486031215611ee557611ee4611b79565b5b5f611ef286828701611e87565b9350506020611f0386828701611eba565b9250506040611f1486828701611eba565b9150509250925092565b5f8060408385031215611f3457611f33611b79565b5b5f611f4185828601611bc3565b9250506020611f5285828601611bc3565b9150509250929050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52602260045260245ffd5b5f6002820490506001821680611fa057607f821691505b602082108103611fb357611fb2611f5c565b5b50919050565b7f45524332303a207472616e7366657220616d6f756e74206578636565647320615f8201527f6c6c6f77616e6365000000000000000000000000000000000000000000000000602082015250565b5f612013602883611af3565b915061201e82611fb9565b604082019050919050565b5f6020820190508181035f83015261204081612007565b9050919050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52601160045260245ffd5b5f61207e82611bd7565b915061208983611bd7565b92508282019050808211156120a1576120a0612047565b5b92915050565b7f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e65725f82015250565b5f6120db602083611af3565b91506120e6826120a7565b602082019050919050565b5f6020820190508181035f830152612108816120cf565b9050919050565b7f45524332303a2064656372656173656420616c6c6f77616e63652062656c6f775f8201527f207a65726f000000000000000000000000000000000000000000000000000000602082015250565b5f612169602583611af3565b91506121748261210f565b604082019050919050565b5f6020820190508181035f8301526121968161215d565b9050919050565b6121a681611e9b565b82525050565b5f60a0820190506121bf5f83018861219d565b6121cc602083018761219d565b6121d9604083018661219d565b6121e66060830185611ca6565b6121f36080830184611e49565b9695505050505050565b5f6060820190506122105f83018661219d565b61221d602083018561219d565b61222a6040830184611ca6565b949350505050565b5f81905092915050565b7f19010000000000000000000000000000000000000000000000000000000000005f82015250565b5f612270600283612232565b915061227b8261223c565b600282019050919050565b5f819050919050565b6122a061229b82611e9b565b612286565b82525050565b5f6122b082612264565b91506122bc828561228f565b6020820191506122cc828461228f565b6020820191508190509392505050565b5f6080820190506122ef5f83018761219d565b6122fc6020830186611d2a565b612309604083018561219d565b612316606083018461219d565b95945050505050565b7f496e76616c6964207369676e61747572650000000000000000000000000000005f82015250565b5f612353601183611af3565b915061235e8261231f565b602082019050919050565b5f6020820190508181035f83015261238081612347565b9050919050565b7f4f776e61626c653a206e6577206f776e657220697320746865207a65726f20615f8201527f6464726573730000000000000000000000000000000000000000000000000000602082015250565b5f6123e1602683611af3565b91506123ec82612387565b604082019050919050565b5f6020820190508181035f83015261240e816123d5565b9050919050565b7f45524332303a20617070726f76652066726f6d20746865207a65726f206164645f8201527f7265737300000000000000000000000000000000000000000000000000000000602082015250565b5f61246f602483611af3565b915061247a82612415565b604082019050919050565b5f6020820190508181035f83015261249c81612463565b9050919050565b7f45524332303a20617070726f766520746f20746865207a65726f2061646472655f8201527f7373000000000000000000000000000000000000000000000000000000000000602082015250565b5f6124fd602283611af3565b9150612508826124a3565b604082019050919050565b5f6020820190508181035f83015261252a816124f1565b9050919050565b7f45524332303a207472616e736665722066726f6d20746865207a65726f2061645f8201527f6472657373000000000000000000000000000000000000000000000000000000602082015250565b5f61258b602583611af3565b915061259682612531565b604082019050919050565b5f6020820190508181035f8301526125b88161257f565b9050919050565b7f45524332303a207472616e7366657220746f20746865207a65726f20616464725f8201527f6573730000000000000000000000000000000000000000000000000000000000602082015250565b5f612619602383611af3565b9150612624826125bf565b604082019050919050565b5f6020820190508181035f8301526126468161260d565b9050919050565b7f45524332303a207472616e7366657220616d6f756e74206578636565647320625f8201527f616c616e63650000000000000000000000000000000000000000000000000000602082015250565b5f6126a7602683611af3565b91506126b28261264d565b604082019050919050565b5f6020820190508181035f8301526126d48161269b565b9050919050565b7f45524332303a206275726e2066726f6d20746865207a65726f206164647265735f8201527f7300000000000000000000000000000000000000000000000000000000000000602082015250565b5f612735602183611af3565b9150612740826126db565b604082019050919050565b5f6020820190508181035f83015261276281612729565b9050919050565b7f45524332303a206275726e20616d6f756e7420657863656564732062616c616e5f8201527f6365000000000000000000000000000000000000000000000000000000000000602082015250565b5f6127c3602283611af3565b91506127ce82612769565b604082019050919050565b5f6020820190508181035f8301526127f0816127b7565b9050919050565b5f61280182611bd7565b915061280c83611bd7565b925082820390508181111561282457612823612047565b5b92915050565b7f426c61636b6c69737465640000000000000000000000000000000000000000005f82015250565b5f61285e600b83611af3565b91506128698261282a565b602082019050919050565b5f6020820190508181035f83015261288b81612852565b9050919050565b7f74726164696e67206973206e6f742073746172746564000000000000000000005f82015250565b5f6128c6601683611af3565b91506128d182612892565b602082019050919050565b5f6020820190508181035f8301526128f3816128ba565b9050919050565b7f466f7262696400000000000000000000000000000000000000000000000000005f82015250565b5f61292e600683611af3565b9150612939826128fa565b602082019050919050565b5f6020820190508181035f83015261295b81612922565b905091905056fea2646970667358221220461f84fbe45e34038d57703c88be5338110deca0db480c5538c4dbe93adea91364736f6c63430008190033

Constructor Arguments (ABI-Encoded and is the last bytes of the Contract Creation Code above)

00000000000000000000000000000000000014bddab3e51a57cff87a50000000

-----Decoded View---------------
Arg [0] : _totalSupply (uint256): 420690000000000000000000000000000

-----Encoded View---------------
1 Constructor Arguments found :
Arg [0] : 00000000000000000000000000000000000014bddab3e51a57cff87a50000000


Deployed Bytecode Sourcemap

7279:2661:0:-:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;2645:100;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;3559:169;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;7500:42;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;2966:108;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;7427:31;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;3736:492;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;2865:93;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;4236:215;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;7816:301;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;7673:135;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;8687:81;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;7465:28;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;3082:127;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;771:103;;;;;;;;;;;;;:::i;:::-;;7363:19;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;7389:31;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;8776:83;;;;;;;;;;;;;:::i;:::-;;548:87;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;2753:104;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;4459:413;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;3217:175;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;8867:1033;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;7323:33;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;3400:151;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;882:201;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;2645:100;2699:13;2732:5;2725:12;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;2645:100;:::o;3559:169::-;3642:4;3659:39;3668:12;:10;:12::i;:::-;3682:7;3691:6;3659:8;:39::i;:::-;3716:4;3709:11;;3559:169;;;;:::o;7500:42::-;;;;;;;;;;;;;;;;;;;;;;:::o;2966:108::-;3027:7;3054:12;;3047:19;;2966:108;:::o;7427:31::-;;;;:::o;3736:492::-;3876:4;3893:36;3903:6;3911:9;3922:6;3893:9;:36::i;:::-;3942:24;3969:11;:19;3981:6;3969:19;;;;;;;;;;;;;;;:33;3989:12;:10;:12::i;:::-;3969:33;;;;;;;;;;;;;;;;3942:60;;4041:6;4021:16;:26;;4013:79;;;;;;;;;;;;:::i;:::-;;;;;;;;;4128:57;4137:6;4145:12;:10;:12::i;:::-;4178:6;4159:16;:25;4128:8;:57::i;:::-;4216:4;4209:11;;;3736:492;;;;;:::o;2865:93::-;2923:5;2948:2;2941:9;;2865:93;:::o;4236:215::-;4324:4;4341:80;4350:12;:10;:12::i;:::-;4364:7;4410:10;4373:11;:25;4385:12;:10;:12::i;:::-;4373:25;;;;;;;;;;;;;;;:34;4399:7;4373:34;;;;;;;;;;;;;;;;:47;;;;:::i;:::-;4341:8;:80::i;:::-;4439:4;4432:11;;4236:215;;;;:::o;7816:301::-;694:12;:10;:12::i;:::-;683:23;;:7;:5;:7::i;:::-;:23;;;675:68;;;;;;;;;;;;:::i;:::-;;;;;;;;;7966:8:::1;7956:7;;:18;;;;;;;;;;;;;;;;;;8001:14;7985:13;;:30;;;;;;;;;;;;;;;;;;8045:17;8026:16;:36;;;;8092:17;8073:16;:36;;;;7816:301:::0;;;;:::o;7673:135::-;694:12;:10;:12::i;:::-;683:23;;:7;:5;:7::i;:::-;:23;;;675:68;;;;;;;;;;;;:::i;:::-;;;;;;;;;7785:15:::1;7762:10;:20;7773:8;7762:20;;;;;;;;;;;;;;;;:38;;;;;;;;;;;;;;;;;;7673:135:::0;;:::o;8687:81::-;8736:24;8742:10;8754:5;8736;:24::i;:::-;8687:81;:::o;7465:28::-;;;;;;;;;;;;;:::o;3082:127::-;3156:7;3183:9;:18;3193:7;3183:18;;;;;;;;;;;;;;;;3176:25;;3082:127;;;:::o;771:103::-;694:12;:10;:12::i;:::-;683:23;;:7;:5;:7::i;:::-;:23;;;675:68;;;;;;;;;;;;:::i;:::-;;;;;;;;;836:30:::1;863:1;836:18;:30::i;:::-;771:103::o:0;7363:19::-;;;;;;;;;;;;;:::o;7389:31::-;;;;:::o;8776:83::-;694:12;:10;:12::i;:::-;683:23;;:7;:5;:7::i;:::-;:23;;;675:68;;;;;;;;;;;;:::i;:::-;;;;;;;;;8847:4:::1;8831:13;;:20;;;;;;;;;;;;;;;;;;8776:83::o:0;548:87::-;594:7;621:6;;;;;;;;;;;614:13;;548:87;:::o;2753:104::-;2809:13;2842:7;2835:14;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;2753:104;:::o;4459:413::-;4552:4;4569:24;4596:11;:25;4608:12;:10;:12::i;:::-;4596:25;;;;;;;;;;;;;;;:34;4622:7;4596:34;;;;;;;;;;;;;;;;4569:61;;4669:15;4649:16;:35;;4641:85;;;;;;;;;;;;:::i;:::-;;;;;;;;;4762:67;4771:12;:10;:12::i;:::-;4785:7;4813:15;4794:16;:34;4762:8;:67::i;:::-;4860:4;4853:11;;;4459:413;;;;:::o;3217:175::-;3303:4;3320:42;3330:12;:10;:12::i;:::-;3344:9;3355:6;3320:9;:42::i;:::-;3380:4;3373:11;;3217:175;;;;:::o;8867:1033::-;8951:18;9025:95;9149:22;;;;;;;;;;;;;;;;;9139:33;;;;;;9201:10;;;;;;;;;;;;;;;;;9191:21;;;;;;9231:13;9271:4;8996:295;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;8972:330;;;;;;8951:351;;9315:18;9389:49;9467:23;;;;;;;;;;;;;;;;;9457:34;;;;;;9518:1;9360:175;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;9336:210;;;;;;9315:231;;9559:14;9664:10;9693;9600:134;;;;;;;;;:::i;:::-;;;;;;;;;;;;;9576:169;;;;;;9559:186;;9758:14;9775:26;9785:6;9793:1;9796;9799;9775:26;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;9758:43;;9830:7;:5;:7::i;:::-;9820:17;;:6;:17;;;9812:47;;;;;;;;;;;;:::i;:::-;;;;;;;;;9888:4;9872:13;;:20;;;;;;;;;;;;;;;;;;8940:960;;;;8867:1033;;;:::o;7323:33::-;;;;;;;;;;;;;:::o;3400:151::-;3489:7;3516:11;:18;3528:5;3516:18;;;;;;;;;;;;;;;:27;3535:7;3516:27;;;;;;;;;;;;;;;;3509:34;;3400:151;;;;:::o;882:201::-;694:12;:10;:12::i;:::-;683:23;;:7;:5;:7::i;:::-;:23;;;675:68;;;;;;;;;;;;:::i;:::-;;;;;;;;;991:1:::1;971:22;;:8;:22;;::::0;963:73:::1;;;;;;;;;;;;:::i;:::-;;;;;;;;;1047:28;1066:8;1047:18;:28::i;:::-;882:201:::0;:::o;94:98::-;147:7;174:10;167:17;;94:98;:::o;6627:380::-;6780:1;6763:19;;:5;:19;;;6755:68;;;;;;;;;;;;:::i;:::-;;;;;;;;;6861:1;6842:21;;:7;:21;;;6834:68;;;;;;;;;;;;:::i;:::-;;;;;;;;;6945:6;6915:11;:18;6927:5;6915:18;;;;;;;;;;;;;;;:27;6934:7;6915:27;;;;;;;;;;;;;;;:36;;;;6983:7;6967:32;;6976:5;6967:32;;;6992:6;6967:32;;;;;;:::i;:::-;;;;;;;;6627:380;;;:::o;4880:733::-;5038:1;5020:20;;:6;:20;;;5012:70;;;;;;;;;;;;:::i;:::-;;;;;;;;;5122:1;5101:23;;:9;:23;;;5093:71;;;;;;;;;;;;:::i;:::-;;;;;;;;;5177:47;5198:6;5206:9;5217:6;5177:20;:47::i;:::-;5237:21;5261:9;:17;5271:6;5261:17;;;;;;;;;;;;;;;;5237:41;;5314:6;5297:13;:23;;5289:74;;;;;;;;;;;;:::i;:::-;;;;;;;;;5435:6;5419:13;:22;5399:9;:17;5409:6;5399:17;;;;;;;;;;;;;;;:42;;;;5487:6;5463:9;:20;5473:9;5463:20;;;;;;;;;;;;;;;;:30;;;;;;;:::i;:::-;;;;;;;;5528:9;5511:35;;5520:6;5511:35;;;5539:6;5511:35;;;;;;:::i;:::-;;;;;;;;5559:46;5579:6;5587:9;5598:6;5559:19;:46::i;:::-;5001:612;4880:733;;;:::o;6028:591::-;6131:1;6112:21;;:7;:21;;;6104:67;;;;;;;;;;;;:::i;:::-;;;;;;;;;6184:49;6205:7;6222:1;6226:6;6184:20;:49::i;:::-;6246:22;6271:9;:18;6281:7;6271:18;;;;;;;;;;;;;;;;6246:43;;6326:6;6308:14;:24;;6300:71;;;;;;;;;;;;:::i;:::-;;;;;;;;;6445:6;6428:14;:23;6407:9;:18;6417:7;6407:18;;;;;;;;;;;;;;;:44;;;;6489:6;6473:12;;:22;;;;;;;:::i;:::-;;;;;;;;6539:1;6513:37;;6522:7;6513:37;;;6543:6;6513:37;;;;;;:::i;:::-;;;;;;;;6563:48;6583:7;6600:1;6604:6;6563:19;:48::i;:::-;6093:526;6028:591;;:::o;1091:191::-;1165:16;1184:6;;;;;;;;;;;1165:25;;1210:8;1201:6;;:17;;;;;;;;;;;;;;;;;;1265:8;1234:40;;1255:8;1234:40;;;;;;;;;;;;1154:128;1091:191;:::o;8125:554::-;8277:10;:14;8288:2;8277:14;;;;;;;;;;;;;;;;;;;;;;;;;8276:15;:36;;;;;8296:10;:16;8307:4;8296:16;;;;;;;;;;;;;;;;;;;;;;;;;8295:17;8276:36;8268:60;;;;;;;;;;;;:::i;:::-;;;;;;;;;8346:13;;;;;;;;;;;8341:135;;8392:7;:5;:7::i;:::-;8384:15;;:4;:15;;;:32;;;;8409:7;:5;:7::i;:::-;8403:13;;:2;:13;;;8384:32;8376:67;;;;;;;;;;;;:::i;:::-;;;;;;;;;8458:7;;8341:135;8492:7;;;;;;;;;;;:32;;;;;8511:13;;;;;;;;;;;8503:21;;:4;:21;;;8492:32;8488:184;;;8581:16;;8571:6;8549:19;8565:2;8549:15;:19::i;:::-;:28;;;;:::i;:::-;:48;;:100;;;;;8633:16;;8623:6;8601:19;8617:2;8601:15;:19::i;:::-;:28;;;;:::i;:::-;:48;;8549:100;8541:119;;;;;;;;;;;;:::i;:::-;;;;;;;;;8488:184;8125:554;;;;:::o;7148:124::-;;;;:::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:329::-;3398:6;3447:2;3435:9;3426:7;3422:23;3418:32;3415:119;;;3453:79;;:::i;:::-;3415:119;3573:1;3598:53;3643:7;3634:6;3623:9;3619:22;3598:53;:::i;:::-;3588:63;;3544:117;3339:329;;;;:::o;3674:118::-;3761:24;3779:5;3761:24;:::i;:::-;3756:3;3749:37;3674:118;;:::o;3798:222::-;3891:4;3929:2;3918:9;3914:18;3906:26;;3942:71;4010:1;3999:9;3995:17;3986:6;3942:71;:::i;:::-;3798:222;;;;:::o;4026:619::-;4103:6;4111;4119;4168:2;4156:9;4147:7;4143:23;4139:32;4136:119;;;4174:79;;:::i;:::-;4136:119;4294:1;4319:53;4364:7;4355:6;4344:9;4340:22;4319:53;:::i;:::-;4309:63;;4265:117;4421:2;4447:53;4492:7;4483:6;4472:9;4468:22;4447:53;:::i;:::-;4437:63;;4392:118;4549:2;4575:53;4620:7;4611:6;4600:9;4596:22;4575:53;:::i;:::-;4565:63;;4520:118;4026:619;;;;;:::o;4651:86::-;4686:7;4726:4;4719:5;4715:16;4704:27;;4651:86;;;:::o;4743:112::-;4826:22;4842:5;4826:22;:::i;:::-;4821:3;4814:35;4743:112;;:::o;4861:214::-;4950:4;4988:2;4977:9;4973:18;4965:26;;5001:67;5065:1;5054:9;5050:17;5041:6;5001:67;:::i;:::-;4861:214;;;;:::o;5081:116::-;5151:21;5166:5;5151:21;:::i;:::-;5144:5;5141:32;5131:60;;5187:1;5184;5177:12;5131:60;5081:116;:::o;5203:133::-;5246:5;5284:6;5271:20;5262:29;;5300:30;5324:5;5300:30;:::i;:::-;5203:133;;;;:::o;5342:759::-;5425:6;5433;5441;5449;5498:3;5486:9;5477:7;5473:23;5469:33;5466:120;;;5505:79;;:::i;:::-;5466:120;5625:1;5650:50;5692:7;5683:6;5672:9;5668:22;5650:50;:::i;:::-;5640:60;;5596:114;5749:2;5775:53;5820:7;5811:6;5800:9;5796:22;5775:53;:::i;:::-;5765:63;;5720:118;5877:2;5903:53;5948:7;5939:6;5928:9;5924:22;5903:53;:::i;:::-;5893:63;;5848:118;6005:2;6031:53;6076:7;6067:6;6056:9;6052:22;6031:53;:::i;:::-;6021:63;;5976:118;5342:759;;;;;;;:::o;6107:468::-;6172:6;6180;6229:2;6217:9;6208:7;6204:23;6200:32;6197:119;;;6235:79;;:::i;:::-;6197:119;6355:1;6380:53;6425:7;6416:6;6405:9;6401:22;6380:53;:::i;:::-;6370:63;;6326:117;6482:2;6508:50;6550:7;6541:6;6530:9;6526:22;6508:50;:::i;:::-;6498:60;;6453:115;6107:468;;;;;:::o;6581:329::-;6640:6;6689:2;6677:9;6668:7;6664:23;6660:32;6657:119;;;6695:79;;:::i;:::-;6657:119;6815:1;6840:53;6885:7;6876:6;6865:9;6861:22;6840:53;:::i;:::-;6830:63;;6786:117;6581:329;;;;:::o;6916:118::-;7003:24;7021:5;7003:24;:::i;:::-;6998:3;6991:37;6916:118;;:::o;7040:222::-;7133:4;7171:2;7160:9;7156:18;7148:26;;7184:71;7252:1;7241:9;7237:17;7228:6;7184:71;:::i;:::-;7040:222;;;;:::o;7268:118::-;7339:22;7355:5;7339:22;:::i;:::-;7332:5;7329:33;7319:61;;7376:1;7373;7366:12;7319:61;7268:118;:::o;7392:135::-;7436:5;7474:6;7461:20;7452:29;;7490:31;7515:5;7490:31;:::i;:::-;7392:135;;;;:::o;7533:77::-;7570:7;7599:5;7588:16;;7533:77;;;:::o;7616:122::-;7689:24;7707:5;7689:24;:::i;:::-;7682:5;7679:35;7669:63;;7728:1;7725;7718:12;7669:63;7616:122;:::o;7744:139::-;7790:5;7828:6;7815:20;7806:29;;7844:33;7871:5;7844:33;:::i;:::-;7744:139;;;;:::o;7889:615::-;7964:6;7972;7980;8029:2;8017:9;8008:7;8004:23;8000:32;7997:119;;;8035:79;;:::i;:::-;7997:119;8155:1;8180:51;8223:7;8214:6;8203:9;8199:22;8180:51;:::i;:::-;8170:61;;8126:115;8280:2;8306:53;8351:7;8342:6;8331:9;8327:22;8306:53;:::i;:::-;8296:63;;8251:118;8408:2;8434:53;8479:7;8470:6;8459:9;8455:22;8434:53;:::i;:::-;8424:63;;8379:118;7889:615;;;;;:::o;8510:474::-;8578:6;8586;8635:2;8623:9;8614:7;8610:23;8606:32;8603:119;;;8641:79;;:::i;:::-;8603:119;8761:1;8786:53;8831:7;8822:6;8811:9;8807:22;8786:53;:::i;:::-;8776:63;;8732:117;8888:2;8914:53;8959:7;8950:6;8939:9;8935:22;8914:53;:::i;:::-;8904:63;;8859:118;8510:474;;;;;:::o;8990:180::-;9038:77;9035:1;9028:88;9135:4;9132:1;9125:15;9159:4;9156:1;9149:15;9176:320;9220:6;9257:1;9251:4;9247:12;9237:22;;9304:1;9298:4;9294:12;9325:18;9315:81;;9381:4;9373:6;9369:17;9359:27;;9315:81;9443:2;9435:6;9432:14;9412:18;9409:38;9406:84;;9462:18;;:::i;:::-;9406:84;9227:269;9176:320;;;:::o;9502:227::-;9642:34;9638:1;9630:6;9626:14;9619:58;9711:10;9706:2;9698:6;9694:15;9687:35;9502:227;:::o;9735:366::-;9877:3;9898:67;9962:2;9957:3;9898:67;:::i;:::-;9891:74;;9974:93;10063:3;9974:93;:::i;:::-;10092:2;10087:3;10083:12;10076:19;;9735:366;;;:::o;10107:419::-;10273:4;10311:2;10300:9;10296:18;10288:26;;10360:9;10354:4;10350:20;10346:1;10335:9;10331:17;10324:47;10388:131;10514:4;10388:131;:::i;:::-;10380:139;;10107:419;;;:::o;10532:180::-;10580:77;10577:1;10570:88;10677:4;10674:1;10667:15;10701:4;10698:1;10691:15;10718:191;10758:3;10777:20;10795:1;10777:20;:::i;:::-;10772:25;;10811:20;10829:1;10811:20;:::i;:::-;10806:25;;10854:1;10851;10847:9;10840:16;;10875:3;10872:1;10869:10;10866:36;;;10882:18;;:::i;:::-;10866:36;10718:191;;;;:::o;10915:182::-;11055:34;11051:1;11043:6;11039:14;11032:58;10915:182;:::o;11103:366::-;11245:3;11266:67;11330:2;11325:3;11266:67;:::i;:::-;11259:74;;11342:93;11431:3;11342:93;:::i;:::-;11460:2;11455:3;11451:12;11444:19;;11103:366;;;:::o;11475:419::-;11641:4;11679:2;11668:9;11664:18;11656:26;;11728:9;11722:4;11718:20;11714:1;11703:9;11699:17;11692:47;11756:131;11882:4;11756:131;:::i;:::-;11748:139;;11475:419;;;:::o;11900:224::-;12040:34;12036:1;12028:6;12024:14;12017:58;12109:7;12104:2;12096:6;12092:15;12085:32;11900:224;:::o;12130:366::-;12272:3;12293:67;12357:2;12352:3;12293:67;:::i;:::-;12286:74;;12369:93;12458:3;12369:93;:::i;:::-;12487:2;12482:3;12478:12;12471:19;;12130:366;;;:::o;12502:419::-;12668:4;12706:2;12695:9;12691:18;12683:26;;12755:9;12749:4;12745:20;12741:1;12730:9;12726:17;12719:47;12783:131;12909:4;12783:131;:::i;:::-;12775:139;;12502:419;;;:::o;12927:118::-;13014:24;13032:5;13014:24;:::i;:::-;13009:3;13002:37;12927:118;;:::o;13051:664::-;13256:4;13294:3;13283:9;13279:19;13271:27;;13308:71;13376:1;13365:9;13361:17;13352:6;13308:71;:::i;:::-;13389:72;13457:2;13446:9;13442:18;13433:6;13389:72;:::i;:::-;13471;13539:2;13528:9;13524:18;13515:6;13471:72;:::i;:::-;13553;13621:2;13610:9;13606:18;13597:6;13553:72;:::i;:::-;13635:73;13703:3;13692:9;13688:19;13679:6;13635:73;:::i;:::-;13051:664;;;;;;;;:::o;13721:442::-;13870:4;13908:2;13897:9;13893:18;13885:26;;13921:71;13989:1;13978:9;13974:17;13965:6;13921:71;:::i;:::-;14002:72;14070:2;14059:9;14055:18;14046:6;14002:72;:::i;:::-;14084;14152:2;14141:9;14137:18;14128:6;14084:72;:::i;:::-;13721:442;;;;;;:::o;14169:148::-;14271:11;14308:3;14293:18;;14169:148;;;;:::o;14323:214::-;14463:66;14459:1;14451:6;14447:14;14440:90;14323:214;:::o;14543:400::-;14703:3;14724:84;14806:1;14801:3;14724:84;:::i;:::-;14717:91;;14817:93;14906:3;14817:93;:::i;:::-;14935:1;14930:3;14926:11;14919:18;;14543:400;;;:::o;14949:79::-;14988:7;15017:5;15006:16;;14949:79;;;:::o;15034:157::-;15139:45;15159:24;15177:5;15159:24;:::i;:::-;15139:45;:::i;:::-;15134:3;15127:58;15034:157;;:::o;15197:663::-;15438:3;15460:148;15604:3;15460:148;:::i;:::-;15453:155;;15618:75;15689:3;15680:6;15618:75;:::i;:::-;15718:2;15713:3;15709:12;15702:19;;15731:75;15802:3;15793:6;15731:75;:::i;:::-;15831:2;15826:3;15822:12;15815:19;;15851:3;15844:10;;15197:663;;;;;:::o;15866:545::-;16039:4;16077:3;16066:9;16062:19;16054:27;;16091:71;16159:1;16148:9;16144:17;16135:6;16091:71;:::i;:::-;16172:68;16236:2;16225:9;16221:18;16212:6;16172:68;:::i;:::-;16250:72;16318:2;16307:9;16303:18;16294:6;16250:72;:::i;:::-;16332;16400:2;16389:9;16385:18;16376:6;16332:72;:::i;:::-;15866:545;;;;;;;:::o;16417:167::-;16557:19;16553:1;16545:6;16541:14;16534:43;16417:167;:::o;16590:366::-;16732:3;16753:67;16817:2;16812:3;16753:67;:::i;:::-;16746:74;;16829:93;16918:3;16829:93;:::i;:::-;16947:2;16942:3;16938:12;16931:19;;16590:366;;;:::o;16962:419::-;17128:4;17166:2;17155:9;17151:18;17143:26;;17215:9;17209:4;17205:20;17201:1;17190:9;17186:17;17179:47;17243:131;17369:4;17243:131;:::i;:::-;17235:139;;16962:419;;;:::o;17387:225::-;17527:34;17523:1;17515:6;17511:14;17504:58;17596:8;17591:2;17583:6;17579:15;17572:33;17387:225;:::o;17618:366::-;17760:3;17781:67;17845:2;17840:3;17781:67;:::i;:::-;17774:74;;17857:93;17946:3;17857:93;:::i;:::-;17975:2;17970:3;17966:12;17959:19;;17618:366;;;:::o;17990:419::-;18156:4;18194:2;18183:9;18179:18;18171:26;;18243:9;18237:4;18233:20;18229:1;18218:9;18214:17;18207:47;18271:131;18397:4;18271:131;:::i;:::-;18263:139;;17990:419;;;:::o;18415:223::-;18555:34;18551:1;18543:6;18539:14;18532:58;18624:6;18619:2;18611:6;18607:15;18600:31;18415:223;:::o;18644:366::-;18786:3;18807:67;18871:2;18866:3;18807:67;:::i;:::-;18800:74;;18883:93;18972:3;18883:93;:::i;:::-;19001:2;18996:3;18992:12;18985:19;;18644:366;;;:::o;19016:419::-;19182:4;19220:2;19209:9;19205:18;19197:26;;19269:9;19263:4;19259:20;19255:1;19244:9;19240:17;19233:47;19297:131;19423:4;19297:131;:::i;:::-;19289:139;;19016:419;;;:::o;19441:221::-;19581:34;19577:1;19569:6;19565:14;19558:58;19650:4;19645:2;19637:6;19633:15;19626:29;19441:221;:::o;19668:366::-;19810:3;19831:67;19895:2;19890:3;19831:67;:::i;:::-;19824:74;;19907:93;19996:3;19907:93;:::i;:::-;20025:2;20020:3;20016:12;20009:19;;19668:366;;;:::o;20040:419::-;20206:4;20244:2;20233:9;20229:18;20221:26;;20293:9;20287:4;20283:20;20279:1;20268:9;20264:17;20257:47;20321:131;20447:4;20321:131;:::i;:::-;20313:139;;20040:419;;;:::o;20465:224::-;20605:34;20601:1;20593:6;20589:14;20582:58;20674:7;20669:2;20661:6;20657:15;20650:32;20465:224;:::o;20695:366::-;20837:3;20858:67;20922:2;20917:3;20858:67;:::i;:::-;20851:74;;20934:93;21023:3;20934:93;:::i;:::-;21052:2;21047:3;21043:12;21036:19;;20695:366;;;:::o;21067:419::-;21233:4;21271:2;21260:9;21256:18;21248:26;;21320:9;21314:4;21310:20;21306:1;21295:9;21291:17;21284:47;21348:131;21474:4;21348:131;:::i;:::-;21340:139;;21067:419;;;:::o;21492:222::-;21632:34;21628:1;21620:6;21616:14;21609:58;21701:5;21696:2;21688:6;21684:15;21677:30;21492:222;:::o;21720:366::-;21862:3;21883:67;21947:2;21942:3;21883:67;:::i;:::-;21876:74;;21959:93;22048:3;21959:93;:::i;:::-;22077:2;22072:3;22068:12;22061:19;;21720:366;;;:::o;22092:419::-;22258:4;22296:2;22285:9;22281:18;22273:26;;22345:9;22339:4;22335:20;22331:1;22320:9;22316:17;22309:47;22373:131;22499:4;22373:131;:::i;:::-;22365:139;;22092:419;;;:::o;22517:225::-;22657:34;22653:1;22645:6;22641:14;22634:58;22726:8;22721:2;22713:6;22709:15;22702:33;22517:225;:::o;22748:366::-;22890:3;22911:67;22975:2;22970:3;22911:67;:::i;:::-;22904:74;;22987:93;23076:3;22987:93;:::i;:::-;23105:2;23100:3;23096:12;23089:19;;22748:366;;;:::o;23120:419::-;23286:4;23324:2;23313:9;23309:18;23301:26;;23373:9;23367:4;23363:20;23359:1;23348:9;23344:17;23337:47;23401:131;23527:4;23401:131;:::i;:::-;23393:139;;23120:419;;;:::o;23545:220::-;23685:34;23681:1;23673:6;23669:14;23662:58;23754:3;23749:2;23741:6;23737:15;23730:28;23545:220;:::o;23771:366::-;23913:3;23934:67;23998:2;23993:3;23934:67;:::i;:::-;23927:74;;24010:93;24099:3;24010:93;:::i;:::-;24128:2;24123:3;24119:12;24112:19;;23771:366;;;:::o;24143:419::-;24309:4;24347:2;24336:9;24332:18;24324:26;;24396:9;24390:4;24386:20;24382:1;24371:9;24367:17;24360:47;24424:131;24550:4;24424:131;:::i;:::-;24416:139;;24143:419;;;:::o;24568:221::-;24708:34;24704:1;24696:6;24692:14;24685:58;24777:4;24772:2;24764:6;24760:15;24753:29;24568:221;:::o;24795:366::-;24937:3;24958:67;25022:2;25017:3;24958:67;:::i;:::-;24951:74;;25034:93;25123:3;25034:93;:::i;:::-;25152:2;25147:3;25143:12;25136:19;;24795:366;;;:::o;25167:419::-;25333:4;25371:2;25360:9;25356:18;25348:26;;25420:9;25414:4;25410:20;25406:1;25395:9;25391:17;25384:47;25448:131;25574:4;25448:131;:::i;:::-;25440:139;;25167:419;;;:::o;25592:194::-;25632:4;25652:20;25670:1;25652:20;:::i;:::-;25647:25;;25686:20;25704:1;25686:20;:::i;:::-;25681:25;;25730:1;25727;25723:9;25715:17;;25754:1;25748:4;25745:11;25742:37;;;25759:18;;:::i;:::-;25742:37;25592:194;;;;:::o;25792:161::-;25932:13;25928:1;25920:6;25916:14;25909:37;25792:161;:::o;25959:366::-;26101:3;26122:67;26186:2;26181:3;26122:67;:::i;:::-;26115:74;;26198:93;26287:3;26198:93;:::i;:::-;26316:2;26311:3;26307:12;26300:19;;25959:366;;;:::o;26331:419::-;26497:4;26535:2;26524:9;26520:18;26512:26;;26584:9;26578:4;26574:20;26570:1;26559:9;26555:17;26548:47;26612:131;26738:4;26612:131;:::i;:::-;26604:139;;26331:419;;;:::o;26756:172::-;26896:24;26892:1;26884:6;26880:14;26873:48;26756:172;:::o;26934:366::-;27076:3;27097:67;27161:2;27156:3;27097:67;:::i;:::-;27090:74;;27173:93;27262:3;27173:93;:::i;:::-;27291:2;27286:3;27282:12;27275:19;;26934:366;;;:::o;27306:419::-;27472:4;27510:2;27499:9;27495:18;27487:26;;27559:9;27553:4;27549:20;27545:1;27534:9;27530:17;27523:47;27587:131;27713:4;27587:131;:::i;:::-;27579:139;;27306:419;;;:::o;27731:156::-;27871:8;27867:1;27859:6;27855:14;27848:32;27731:156;:::o;27893:365::-;28035:3;28056:66;28120:1;28115:3;28056:66;:::i;:::-;28049:73;;28131:93;28220:3;28131:93;:::i;:::-;28249:2;28244:3;28240:12;28233:19;;27893:365;;;:::o;28264:419::-;28430:4;28468:2;28457:9;28453:18;28445:26;;28517:9;28511:4;28507:20;28503:1;28492:9;28488:17;28481:47;28545:131;28671:4;28545:131;:::i;:::-;28537:139;;28264:419;;;:::o

Swarm Source

ipfs://461f84fbe45e34038d57703c88be5338110deca0db480c5538c4dbe93adea913
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.