ETH Price: $3,123.59 (+1.90%)

Token

Criptoken DAO (CRIP)
 

Overview

Max Total Supply

1,000,000,000 CRIP

Holders

9 (0.00%)

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

OVERVIEW

Criptoken DAO is community-centered and focuses itself on providing access to early-stage technologies in underdeveloped urban communities across the US and Europe.

# Exchange Pair Price  24H Volume % Volume

Contract Source Code Verified (Exact Match)

Contract Name:
CRIPToken

Compiler Version
v0.8.2+commit.661d1103

Optimization Enabled:
No with 200 runs

Other Settings:
default evmVersion, MIT license

Contract Source Code (Solidity)

/**
 *Submitted for verification at Etherscan.io on 2022-01-26
*/

pragma solidity 0.8.2;

abstract contract ERC20 {

    uint256 private _totalSupply;
    mapping(address => uint256) internal _balances;
    mapping(address => mapping(address => uint256)) internal _allowances;

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

    /*
   * Internal Functions for ERC20 standard logics
   */

    function _transfer(address from, address to, uint256 amount)
        internal
        returns (bool success)
    {
        _balances[from] = _balances[from] - amount;
        _balances[to] = _balances[to] + amount;
        emit Transfer(from, to, amount);
        success = true;
    }

    function _approve(address owner, address spender, uint256 amount)
        internal
        returns (bool success)
    {
        _allowances[owner][spender] = amount;
        emit Approval(owner, spender, amount);
        success = true;
    }

    function _mint(address recipient, uint256 amount)
        internal
        returns (bool success)
    {
        _totalSupply = _totalSupply + amount;
        _balances[recipient] = _balances[recipient] + amount;
        emit Transfer(address(0), recipient, amount);
        success = true;
    }

    function _burn(address burned, uint256 amount)
        internal
        returns (bool success)
    {
        _balances[burned] = _balances[burned] - amount;
        _totalSupply = _totalSupply - amount;
        emit Transfer(burned, address(0), amount);
        success = true;
    }

    /*
   * public view functions to view common data
   */

    function totalSupply() external view returns (uint256 total) {
        total = _totalSupply;
    }
    function balanceOf(address owner) external view returns (uint256 balance) {
        balance = _balances[owner];
    }

    function allowance(address owner, address spender)
        external
        view
        returns (uint256 remaining)
    {
        remaining = _allowances[owner][spender];
    }

    /*
   * External view Function Interface to implement on final contract
   */
    function name() virtual external view returns (string memory tokenName);
    function symbol() virtual external view returns (string memory tokenSymbol);
    function decimals() virtual external view returns (uint8 tokenDecimals);

    /*
   * External Function Interface to implement on final contract
   */
    function transfer(address to, uint256 amount)
        virtual
        external
        returns (bool success);
    function transferFrom(address from, address to, uint256 amount)
        virtual
        external
        returns (bool success);
    function approve(address spender, uint256 amount)
        virtual
        external
        returns (bool success);
}

abstract contract Ownable {
    address internal _owner;

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

    constructor() {
        _owner = msg.sender;
        emit OwnershipTransferred(address(0), msg.sender);
    }

    modifier onlyOwner() {
        require(
            msg.sender == _owner,
            "Ownable : Function called by unauthorized user."
        );
        _;
    }

    function owner() external view returns (address ownerAddress) {
        ownerAddress = _owner;
    }

    function transferOwnership(address newOwner)
        public
        onlyOwner
        returns (bool success)
    {
        require(newOwner != address(0), "Ownable/transferOwnership : cannot transfer ownership to zero address");
        success = _transferOwnership(newOwner);
    }

    function renounceOwnership() external onlyOwner returns (bool success) {
        success = _transferOwnership(address(0));
    }

    function _transferOwnership(address newOwner) internal returns (bool success) {
        emit OwnershipTransferred(_owner, newOwner);
        _owner = newOwner;
        success = true;
    }
}


abstract contract ERC20Lockable is ERC20, Ownable {
    struct LockInfo {
        uint256 amount;
        uint256 due;
    }

    mapping(address => LockInfo[]) internal _locks;
    mapping(address => uint256) internal _totalLocked;

    event Lock(address indexed from, uint256 amount, uint256 due);
    event Unlock(address indexed from, uint256 amount);

    modifier checkLock(address from, uint256 amount) {
        require(_balances[from] >= _totalLocked[from] + amount, "ERC20Lockable/Cannot send more than unlocked amount");
        _;
    }

    function _lock(address from, uint256 amount, uint256 due)
    internal
    returns (bool success)
    {
        require(due > block.timestamp, "ERC20Lockable/lock : Cannot set due to past");
        require(
            _balances[from] >= amount + _totalLocked[from],
            "ERC20Lockable/lock : locked total should be smaller than balance"
        );
        _totalLocked[from] = _totalLocked[from] + amount;
        _locks[from].push(LockInfo(amount, due));
        emit Lock(from, amount, due);
        success = true;
    }

    function _unlock(address from, uint256 index) internal returns (bool success) {
        LockInfo storage lock = _locks[from][index];
        _totalLocked[from] = _totalLocked[from] - lock.amount;
        emit Unlock(from, lock.amount);
        _locks[from][index] = _locks[from][_locks[from].length - 1];
        _locks[from].pop();
        success = true;
    }

    function unlock(address from, uint256 idx) external returns(bool success){
        require(_locks[from][idx].due < block.timestamp,"ERC20Lockable/unlock: cannot unlock before due");
        return _unlock(from, idx);
    }

    function unlockAll(address from) external returns (bool success) {
        for(uint256 i = 0; i < _locks[from].length;){
            i++;
            if(_locks[from][i - 1].due < block.timestamp){
                if(_unlock(from, i - 1)){
                    i--;
                }
            }
        }
        success = true;
    }

    function releaseLock(address from)
    external
    onlyOwner
    returns (bool success)
    {
        for(uint256 i = 0; i < _locks[from].length;){
            i++;
            if(_unlock(from, i - 1)){
                i--;
            }
        }
        success = true;
    }

    function transferWithLockUp(address recipient, uint256 amount, uint256 due)
    external
    onlyOwner
    returns (bool success)
    {
        require(
            recipient != address(0),
            "ERC20Lockable/transferWithLockUp : Cannot send to zero address"
        );
        _transfer(msg.sender, recipient, amount);
        _lock(recipient, amount, due);
        success = true;
    }

    function lockInfo(address locked, uint256 index)
    external
    view
    returns (uint256 amount, uint256 due)
    {
        LockInfo memory lock = _locks[locked][index];
        amount = lock.amount;
        due = lock.due;
    }

    function totalLocked(address locked) external view returns(uint256 amount, uint256 length){
        amount = _totalLocked[locked];
        length = _locks[locked].length;
    }
}

abstract contract ERC20Burnable is ERC20 {
    event Burn(address indexed burned, uint256 amount);

    function burn(uint256 amount) 
    external
    returns (bool success)
    {
        success = _burn(msg.sender, amount);
        emit Burn(msg.sender, amount);
        success = true;
    }

    function burnFrom(address burned, uint256 amount) 
    external
    returns (bool success)
    {
        _burn(burned, amount);
        emit Burn(burned, amount);
        success = _approve(
            burned,
            msg.sender,
            _allowances[burned][msg.sender] - amount
        );
    }
}

contract CRIPToken is
    ERC20Lockable,
    ERC20Burnable
{
    string constant private _name = "Criptoken DAO";
    string constant private _symbol = "CRIP";
    uint8 constant private _decimals = 18;
    uint256 constant private _initial_supply = 1_000_000_000;

    constructor(address _owner) Ownable() {
        _mint(_owner, _initial_supply * (10**uint256(_decimals)));
        _transferOwnership(_owner);
    }

    function transfer(address to, uint256 amount)
        override
        external
        checkLock(msg.sender, amount)
        returns (bool success)
    {
        require(
            to != address(0),
            "CRIP/transfer : Should not send to zero address"
        );
        _transfer(msg.sender, to, amount);
        success = true;
    }

    function transferFrom(address from, address to, uint256 amount)
        override
        external
        checkLock(from, amount)
        returns (bool success)
    {
        require(
            to != address(0),
            "CRIP/transferFrom : Should not send to zero address"
        );
        _transfer(from, to, amount);
        _approve(
            from,
            msg.sender,
            _allowances[from][msg.sender] - amount
        );
        success = true;
    }

    function approve(address spender, uint256 amount)
        override
        external
        returns (bool success)
    {
        require(
            spender != address(0),
            "CRIP/approve : Should not approve zero address"
        );
        _approve(msg.sender, spender, amount);
        success = true;
    }

    function name() override external pure returns (string memory tokenName) {
        tokenName = _name;
    }

    function symbol() override external pure returns (string memory tokenSymbol) {
        tokenSymbol = _symbol;
    }

    function decimals() override external pure returns (uint8 tokenDecimals) {
        tokenDecimals = _decimals;
    }
}

Contract Security Audit

Contract ABI

[{"inputs":[{"internalType":"address","name":"_owner","type":"address"}],"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":"amount","type":"uint256"}],"name":"Approval","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"burned","type":"address"},{"indexed":false,"internalType":"uint256","name":"amount","type":"uint256"}],"name":"Burn","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"from","type":"address"},{"indexed":false,"internalType":"uint256","name":"amount","type":"uint256"},{"indexed":false,"internalType":"uint256","name":"due","type":"uint256"}],"name":"Lock","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"currentOwner","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":"amount","type":"uint256"}],"name":"Transfer","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"from","type":"address"},{"indexed":false,"internalType":"uint256","name":"amount","type":"uint256"}],"name":"Unlock","type":"event"},{"inputs":[{"internalType":"address","name":"owner","type":"address"},{"internalType":"address","name":"spender","type":"address"}],"name":"allowance","outputs":[{"internalType":"uint256","name":"remaining","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":"success","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"owner","type":"address"}],"name":"balanceOf","outputs":[{"internalType":"uint256","name":"balance","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"uint256","name":"amount","type":"uint256"}],"name":"burn","outputs":[{"internalType":"bool","name":"success","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"burned","type":"address"},{"internalType":"uint256","name":"amount","type":"uint256"}],"name":"burnFrom","outputs":[{"internalType":"bool","name":"success","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"decimals","outputs":[{"internalType":"uint8","name":"tokenDecimals","type":"uint8"}],"stateMutability":"pure","type":"function"},{"inputs":[{"internalType":"address","name":"locked","type":"address"},{"internalType":"uint256","name":"index","type":"uint256"}],"name":"lockInfo","outputs":[{"internalType":"uint256","name":"amount","type":"uint256"},{"internalType":"uint256","name":"due","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"name","outputs":[{"internalType":"string","name":"tokenName","type":"string"}],"stateMutability":"pure","type":"function"},{"inputs":[],"name":"owner","outputs":[{"internalType":"address","name":"ownerAddress","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"from","type":"address"}],"name":"releaseLock","outputs":[{"internalType":"bool","name":"success","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"renounceOwnership","outputs":[{"internalType":"bool","name":"success","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"symbol","outputs":[{"internalType":"string","name":"tokenSymbol","type":"string"}],"stateMutability":"pure","type":"function"},{"inputs":[{"internalType":"address","name":"locked","type":"address"}],"name":"totalLocked","outputs":[{"internalType":"uint256","name":"amount","type":"uint256"},{"internalType":"uint256","name":"length","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"totalSupply","outputs":[{"internalType":"uint256","name":"total","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"to","type":"address"},{"internalType":"uint256","name":"amount","type":"uint256"}],"name":"transfer","outputs":[{"internalType":"bool","name":"success","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"from","type":"address"},{"internalType":"address","name":"to","type":"address"},{"internalType":"uint256","name":"amount","type":"uint256"}],"name":"transferFrom","outputs":[{"internalType":"bool","name":"success","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"newOwner","type":"address"}],"name":"transferOwnership","outputs":[{"internalType":"bool","name":"success","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"recipient","type":"address"},{"internalType":"uint256","name":"amount","type":"uint256"},{"internalType":"uint256","name":"due","type":"uint256"}],"name":"transferWithLockUp","outputs":[{"internalType":"bool","name":"success","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"from","type":"address"},{"internalType":"uint256","name":"idx","type":"uint256"}],"name":"unlock","outputs":[{"internalType":"bool","name":"success","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"from","type":"address"}],"name":"unlockAll","outputs":[{"internalType":"bool","name":"success","type":"bool"}],"stateMutability":"nonpayable","type":"function"}]

60806040523480156200001157600080fd5b5060405162002e4f38038062002e4f83398181016040528101906200003791906200031b565b33600360006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055503373ffffffffffffffffffffffffffffffffffffffff16600073ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a36200010881601260ff16600a620000eb91906200042d565b633b9aca00620000fc91906200056a565b6200012260201b60201c565b506200011a816200023c60201b60201c565b50506200065f565b60008160005462000134919062000375565b60008190555081600160008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205462000187919062000375565b600160008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508273ffffffffffffffffffffffffffffffffffffffff16600073ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef846040516200022a919062000358565b60405180910390a36001905092915050565b60008173ffffffffffffffffffffffffffffffffffffffff16600360009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a381600360006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555060019050919050565b600081519050620003158162000645565b92915050565b6000602082840312156200032e57600080fd5b60006200033e8482850162000304565b91505092915050565b6200035281620005ff565b82525050565b60006020820190506200036f600083018462000347565b92915050565b60006200038282620005ff565b91506200038f83620005ff565b9250827fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff03821115620003c757620003c662000609565b5b828201905092915050565b6000808291508390505b60018511156200042457808604811115620003fc57620003fb62000609565b5b60018516156200040c5780820291505b80810290506200041c8562000638565b9450620003dc565b94509492505050565b60006200043a82620005ff565b91506200044783620005ff565b9250620004767fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff84846200047e565b905092915050565b60008262000490576001905062000563565b81620004a0576000905062000563565b8160018114620004b95760028114620004c457620004fa565b600191505062000563565b60ff841115620004d957620004d862000609565b5b8360020a915084821115620004f357620004f262000609565b5b5062000563565b5060208310610133831016604e8410600b8410161715620005345782820a9050838111156200052e576200052d62000609565b5b62000563565b620005438484846001620003d2565b925090508184048111156200055d576200055c62000609565b5b81810290505b9392505050565b60006200057782620005ff565b91506200058483620005ff565b9250817fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff0483118215151615620005c057620005bf62000609565b5b828202905092915050565b6000620005d882620005df565b9050919050565b600073ffffffffffffffffffffffffffffffffffffffff82169050919050565b6000819050919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b60008160011c9050919050565b6200065081620005cb565b81146200065c57600080fd5b50565b6127e0806200066f6000396000f3fe608060405234801561001057600080fd5b506004361061012c5760003560e01c80637eee288d116100ad578063c4f3a85311610071578063c4f3a85314610396578063d1c46916146103c6578063d8fb9337146103f6578063dd62ed3e14610427578063f2fde38b146104575761012c565b80637eee288d146102c95780638da5cb5b146102f957806395d89b4114610317578063a9059cbb14610335578063b2520a7c146103655761012c565b806338b82092116100f457806338b82092146101eb57806342966c681461021b57806370a082311461024b578063715018a61461027b57806379cc6790146102995761012c565b806306fdde0314610131578063095ea7b31461014f57806318160ddd1461017f57806323b872dd1461019d578063313ce567146101cd575b600080fd5b610139610487565b604051610146919061209e565b60405180910390f35b61016960048036038101906101649190611de1565b6104c4565b6040516101769190612083565b60405180910390f35b61018761054b565b6040516101949190612200565b60405180910390f35b6101b760048036038101906101b29190611d92565b610554565b6040516101c49190612083565b60405180910390f35b6101d5610740565b6040516101e29190612244565b60405180910390f35b61020560048036038101906102009190611e1d565b610749565b6040516102129190612083565b60405180910390f35b61023560048036038101906102309190611e6c565b61086e565b6040516102429190612083565b60405180910390f35b61026560048036038101906102609190611d2d565b6108d3565b6040516102729190612200565b60405180910390f35b61028361091c565b6040516102909190612083565b60405180910390f35b6102b360048036038101906102ae9190611de1565b6109bd565b6040516102c09190612083565b60405180910390f35b6102e360048036038101906102de9190611de1565b610ab2565b6040516102f09190612083565b60405180910390f35b610301610b90565b60405161030e9190612068565b60405180910390f35b61031f610bba565b60405161032c919061209e565b60405180910390f35b61034f600480360381019061034a9190611de1565b610bf7565b60405161035c9190612083565b60405180910390f35b61037f600480360381019061037a9190611de1565b610d4f565b60405161038d92919061221b565b60405180910390f35b6103b060048036038101906103ab9190611d2d565b610e10565b6040516103bd9190612083565b60405180910390f35b6103e060048036038101906103db9190611d2d565b610f46565b6040516103ed9190612083565b60405180910390f35b610410600480360381019061040b9190611d2d565b61106c565b60405161041e92919061221b565b60405180910390f35b610441600480360381019061043c9190611d56565b6110fb565b60405161044e9190612200565b60405180910390f35b610471600480360381019061046c9190611d2d565b611182565b60405161047e9190612083565b60405180910390f35b60606040518060400160405280600d81526020017f43726970746f6b656e2044414f00000000000000000000000000000000000000815250905090565b60008073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff161415610535576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161052c90612140565b60405180910390fd5b610540338484611294565b506001905092915050565b60008054905090565b6000838280600560008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020546105a3919061227b565b600160008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020541015610624576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161061b90612180565b60405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff168573ffffffffffffffffffffffffffffffffffffffff161415610694576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161068b906121a0565b60405180910390fd5b61069f868686611387565b50610732863386600260008b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205461072d91906122d1565b611294565b506001925050509392505050565b60006012905090565b6000600360009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff16146107db576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016107d290612160565b60405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff16141561084b576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610842906120c0565b60405180910390fd5b610856338585611387565b50610862848484611515565b50600190509392505050565b600061087a33836117a1565b90503373ffffffffffffffffffffffffffffffffffffffff167fcc16f5dbb4873280815c1ee09dbd06736cffcc184412cf7a71a0fdb75d397ca5836040516108c29190612200565b60405180910390a260019050919050565b6000600160008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020549050919050565b6000600360009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff16146109ae576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016109a590612160565b60405180910390fd5b6109b860006118b5565b905090565b60006109c983836117a1565b508273ffffffffffffffffffffffffffffffffffffffff167fcc16f5dbb4873280815c1ee09dbd06736cffcc184412cf7a71a0fdb75d397ca583604051610a109190612200565b60405180910390a2610aaa833384600260008873ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054610aa591906122d1565b611294565b905092915050565b600042600460008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000208381548110610b2c577f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b90600052602060002090600202016001015410610b7e576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610b7590612120565b60405180910390fd5b610b88838361197d565b905092915050565b6000600360009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16905090565b60606040518060400160405280600481526020017f4352495000000000000000000000000000000000000000000000000000000000815250905090565b6000338280600560008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054610c46919061227b565b600160008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020541015610cc7576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610cbe90612180565b60405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff168573ffffffffffffffffffffffffffffffffffffffff161415610d37576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610d2e906121c0565b60405180910390fd5b610d42338686611387565b5060019250505092915050565b6000806000600460008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000208481548110610dcb577f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b90600052602060002090600202016040518060400160405290816000820154815260200160018201548152505090508060000151925080602001519150509250929050565b600080600090505b600460008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002080549050811015610f3c578080610e6d906123b7565b91505042600460008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600183610ebd91906122d1565b81548110610ef4577f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b9060005260206000209060020201600101541015610f3757610f2283600183610f1d91906122d1565b61197d565b15610f36578080610f329061238d565b9150505b5b610e18565b5060019050919050565b6000600360009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614610fd8576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610fcf90612160565b60405180910390fd5b60005b600460008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002080549050811015611062578080611030906123b7565b9150506110498360018361104491906122d1565b61197d565b1561105d5780806110599061238d565b9150505b610fdb565b5060019050919050565b600080600560008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020549150600460008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020805490509050915091565b6000600260008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054905092915050565b6000600360009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614611214576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161120b90612160565b60405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff161415611284576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161127b906121e0565b60405180910390fd5b61128d826118b5565b9050919050565b600081600260008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508273ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925846040516113749190612200565b60405180910390a3600190509392505050565b600081600160008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020546113d491906122d1565b600160008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000208190555081600160008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054611462919061227b565b600160008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508273ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef846040516115029190612200565b60405180910390a3600190509392505050565b6000428211611559576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161155090612100565b60405180910390fd5b600560008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054836115a4919061227b565b600160008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020541015611625576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161161c906120e0565b60405180910390fd5b82600560008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054611670919061227b565b600560008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002081905550600460008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206040518060400160405280858152602001848152509080600181540180825580915050600190039060005260206000209060020201600090919091909150600082015181600001556020820151816001015550508373ffffffffffffffffffffffffffffffffffffffff167f49eaf4942f1237055eb4cfa5f31c9dfe50d5b4ade01e021f7de8be2fbbde557b848460405161178e92919061221b565b60405180910390a2600190509392505050565b600081600160008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020546117ee91906122d1565b600160008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508160005461183f91906122d1565b600081905550600073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef846040516118a39190612200565b60405180910390a36001905092915050565b60008173ffffffffffffffffffffffffffffffffffffffff16600360009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a381600360006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555060019050919050565b600080600460008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002083815481106119f7577f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b906000526020600020906002020190508060000154600560008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054611a5691906122d1565b600560008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508373ffffffffffffffffffffffffffffffffffffffff167f6381d9813cabeb57471b5a7e05078e64845ccdb563146a6911d536f24ce960f18260000154604051611ae39190612200565b60405180910390a2600460008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206001600460008773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002080549050611b7991906122d1565b81548110611bb0577f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b9060005260206000209060020201600460008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000208481548110611c35577f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b90600052602060002090600202016000820154816000015560018201548160010155905050600460008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020805480611ccf577f4e487b7100000000000000000000000000000000000000000000000000000000600052603160045260246000fd5b6001900381819060005260206000209060020201600080820160009055600182016000905550509055600191505092915050565b600081359050611d128161277c565b92915050565b600081359050611d2781612793565b92915050565b600060208284031215611d3f57600080fd5b6000611d4d84828501611d03565b91505092915050565b60008060408385031215611d6957600080fd5b6000611d7785828601611d03565b9250506020611d8885828601611d03565b9150509250929050565b600080600060608486031215611da757600080fd5b6000611db586828701611d03565b9350506020611dc686828701611d03565b9250506040611dd786828701611d18565b9150509250925092565b60008060408385031215611df457600080fd5b6000611e0285828601611d03565b9250506020611e1385828601611d18565b9150509250929050565b600080600060608486031215611e3257600080fd5b6000611e4086828701611d03565b9350506020611e5186828701611d18565b9250506040611e6286828701611d18565b9150509250925092565b600060208284031215611e7e57600080fd5b6000611e8c84828501611d18565b91505092915050565b611e9e81612305565b82525050565b611ead81612317565b82525050565b6000611ebe8261225f565b611ec8818561226a565b9350611ed881856020860161235a565b611ee18161242f565b840191505092915050565b6000611ef9603e8361226a565b9150611f0482612440565b604082019050919050565b6000611f1c60408361226a565b9150611f278261248f565b604082019050919050565b6000611f3f602b8361226a565b9150611f4a826124de565b604082019050919050565b6000611f62602e8361226a565b9150611f6d8261252d565b604082019050919050565b6000611f85602e8361226a565b9150611f908261257c565b604082019050919050565b6000611fa8602f8361226a565b9150611fb3826125cb565b604082019050919050565b6000611fcb60338361226a565b9150611fd68261261a565b604082019050919050565b6000611fee60338361226a565b9150611ff982612669565b604082019050919050565b6000612011602f8361226a565b915061201c826126b8565b604082019050919050565b600061203460458361226a565b915061203f82612707565b606082019050919050565b61205381612343565b82525050565b6120628161234d565b82525050565b600060208201905061207d6000830184611e95565b92915050565b60006020820190506120986000830184611ea4565b92915050565b600060208201905081810360008301526120b88184611eb3565b905092915050565b600060208201905081810360008301526120d981611eec565b9050919050565b600060208201905081810360008301526120f981611f0f565b9050919050565b6000602082019050818103600083015261211981611f32565b9050919050565b6000602082019050818103600083015261213981611f55565b9050919050565b6000602082019050818103600083015261215981611f78565b9050919050565b6000602082019050818103600083015261217981611f9b565b9050919050565b6000602082019050818103600083015261219981611fbe565b9050919050565b600060208201905081810360008301526121b981611fe1565b9050919050565b600060208201905081810360008301526121d981612004565b9050919050565b600060208201905081810360008301526121f981612027565b9050919050565b6000602082019050612215600083018461204a565b92915050565b6000604082019050612230600083018561204a565b61223d602083018461204a565b9392505050565b60006020820190506122596000830184612059565b92915050565b600081519050919050565b600082825260208201905092915050565b600061228682612343565b915061229183612343565b9250827fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff038211156122c6576122c5612400565b5b828201905092915050565b60006122dc82612343565b91506122e783612343565b9250828210156122fa576122f9612400565b5b828203905092915050565b600061231082612323565b9050919050565b60008115159050919050565b600073ffffffffffffffffffffffffffffffffffffffff82169050919050565b6000819050919050565b600060ff82169050919050565b60005b8381101561237857808201518184015260208101905061235d565b83811115612387576000848401525b50505050565b600061239882612343565b915060008214156123ac576123ab612400565b5b600182039050919050565b60006123c282612343565b91507fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff8214156123f5576123f4612400565b5b600182019050919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b6000601f19601f8301169050919050565b7f45524332304c6f636b61626c652f7472616e73666572576974684c6f636b557060008201527f203a2043616e6e6f742073656e6420746f207a65726f20616464726573730000602082015250565b7f45524332304c6f636b61626c652f6c6f636b203a206c6f636b656420746f746160008201527f6c2073686f756c6420626520736d616c6c6572207468616e2062616c616e6365602082015250565b7f45524332304c6f636b61626c652f6c6f636b203a2043616e6e6f74207365742060008201527f64756520746f2070617374000000000000000000000000000000000000000000602082015250565b7f45524332304c6f636b61626c652f756e6c6f636b3a2063616e6e6f7420756e6c60008201527f6f636b206265666f726520647565000000000000000000000000000000000000602082015250565b7f435249502f617070726f7665203a2053686f756c64206e6f7420617070726f7660008201527f65207a65726f2061646472657373000000000000000000000000000000000000602082015250565b7f4f776e61626c65203a2046756e6374696f6e2063616c6c656420627920756e6160008201527f7574686f72697a656420757365722e0000000000000000000000000000000000602082015250565b7f45524332304c6f636b61626c652f43616e6e6f742073656e64206d6f7265207460008201527f68616e20756e6c6f636b656420616d6f756e7400000000000000000000000000602082015250565b7f435249502f7472616e7366657246726f6d203a2053686f756c64206e6f74207360008201527f656e6420746f207a65726f206164647265737300000000000000000000000000602082015250565b7f435249502f7472616e73666572203a2053686f756c64206e6f742073656e642060008201527f746f207a65726f20616464726573730000000000000000000000000000000000602082015250565b7f4f776e61626c652f7472616e736665724f776e657273686970203a2063616e6e60008201527f6f74207472616e73666572206f776e65727368697020746f207a65726f20616460208201527f6472657373000000000000000000000000000000000000000000000000000000604082015250565b61278581612305565b811461279057600080fd5b50565b61279c81612343565b81146127a757600080fd5b5056fea264697066735822122055113ef7d31dd964dfa94924effb3f7f683976d1ac06118a966f0980639025ce64736f6c634300080200330000000000000000000000006917ab96584be18fb34647450b806f5e0089636f

Deployed Bytecode

0x608060405234801561001057600080fd5b506004361061012c5760003560e01c80637eee288d116100ad578063c4f3a85311610071578063c4f3a85314610396578063d1c46916146103c6578063d8fb9337146103f6578063dd62ed3e14610427578063f2fde38b146104575761012c565b80637eee288d146102c95780638da5cb5b146102f957806395d89b4114610317578063a9059cbb14610335578063b2520a7c146103655761012c565b806338b82092116100f457806338b82092146101eb57806342966c681461021b57806370a082311461024b578063715018a61461027b57806379cc6790146102995761012c565b806306fdde0314610131578063095ea7b31461014f57806318160ddd1461017f57806323b872dd1461019d578063313ce567146101cd575b600080fd5b610139610487565b604051610146919061209e565b60405180910390f35b61016960048036038101906101649190611de1565b6104c4565b6040516101769190612083565b60405180910390f35b61018761054b565b6040516101949190612200565b60405180910390f35b6101b760048036038101906101b29190611d92565b610554565b6040516101c49190612083565b60405180910390f35b6101d5610740565b6040516101e29190612244565b60405180910390f35b61020560048036038101906102009190611e1d565b610749565b6040516102129190612083565b60405180910390f35b61023560048036038101906102309190611e6c565b61086e565b6040516102429190612083565b60405180910390f35b61026560048036038101906102609190611d2d565b6108d3565b6040516102729190612200565b60405180910390f35b61028361091c565b6040516102909190612083565b60405180910390f35b6102b360048036038101906102ae9190611de1565b6109bd565b6040516102c09190612083565b60405180910390f35b6102e360048036038101906102de9190611de1565b610ab2565b6040516102f09190612083565b60405180910390f35b610301610b90565b60405161030e9190612068565b60405180910390f35b61031f610bba565b60405161032c919061209e565b60405180910390f35b61034f600480360381019061034a9190611de1565b610bf7565b60405161035c9190612083565b60405180910390f35b61037f600480360381019061037a9190611de1565b610d4f565b60405161038d92919061221b565b60405180910390f35b6103b060048036038101906103ab9190611d2d565b610e10565b6040516103bd9190612083565b60405180910390f35b6103e060048036038101906103db9190611d2d565b610f46565b6040516103ed9190612083565b60405180910390f35b610410600480360381019061040b9190611d2d565b61106c565b60405161041e92919061221b565b60405180910390f35b610441600480360381019061043c9190611d56565b6110fb565b60405161044e9190612200565b60405180910390f35b610471600480360381019061046c9190611d2d565b611182565b60405161047e9190612083565b60405180910390f35b60606040518060400160405280600d81526020017f43726970746f6b656e2044414f00000000000000000000000000000000000000815250905090565b60008073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff161415610535576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161052c90612140565b60405180910390fd5b610540338484611294565b506001905092915050565b60008054905090565b6000838280600560008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020546105a3919061227b565b600160008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020541015610624576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161061b90612180565b60405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff168573ffffffffffffffffffffffffffffffffffffffff161415610694576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161068b906121a0565b60405180910390fd5b61069f868686611387565b50610732863386600260008b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205461072d91906122d1565b611294565b506001925050509392505050565b60006012905090565b6000600360009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff16146107db576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016107d290612160565b60405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff16141561084b576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610842906120c0565b60405180910390fd5b610856338585611387565b50610862848484611515565b50600190509392505050565b600061087a33836117a1565b90503373ffffffffffffffffffffffffffffffffffffffff167fcc16f5dbb4873280815c1ee09dbd06736cffcc184412cf7a71a0fdb75d397ca5836040516108c29190612200565b60405180910390a260019050919050565b6000600160008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020549050919050565b6000600360009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff16146109ae576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016109a590612160565b60405180910390fd5b6109b860006118b5565b905090565b60006109c983836117a1565b508273ffffffffffffffffffffffffffffffffffffffff167fcc16f5dbb4873280815c1ee09dbd06736cffcc184412cf7a71a0fdb75d397ca583604051610a109190612200565b60405180910390a2610aaa833384600260008873ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054610aa591906122d1565b611294565b905092915050565b600042600460008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000208381548110610b2c577f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b90600052602060002090600202016001015410610b7e576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610b7590612120565b60405180910390fd5b610b88838361197d565b905092915050565b6000600360009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16905090565b60606040518060400160405280600481526020017f4352495000000000000000000000000000000000000000000000000000000000815250905090565b6000338280600560008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054610c46919061227b565b600160008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020541015610cc7576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610cbe90612180565b60405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff168573ffffffffffffffffffffffffffffffffffffffff161415610d37576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610d2e906121c0565b60405180910390fd5b610d42338686611387565b5060019250505092915050565b6000806000600460008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000208481548110610dcb577f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b90600052602060002090600202016040518060400160405290816000820154815260200160018201548152505090508060000151925080602001519150509250929050565b600080600090505b600460008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002080549050811015610f3c578080610e6d906123b7565b91505042600460008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600183610ebd91906122d1565b81548110610ef4577f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b9060005260206000209060020201600101541015610f3757610f2283600183610f1d91906122d1565b61197d565b15610f36578080610f329061238d565b9150505b5b610e18565b5060019050919050565b6000600360009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614610fd8576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610fcf90612160565b60405180910390fd5b60005b600460008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002080549050811015611062578080611030906123b7565b9150506110498360018361104491906122d1565b61197d565b1561105d5780806110599061238d565b9150505b610fdb565b5060019050919050565b600080600560008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020549150600460008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020805490509050915091565b6000600260008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054905092915050565b6000600360009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614611214576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161120b90612160565b60405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff161415611284576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161127b906121e0565b60405180910390fd5b61128d826118b5565b9050919050565b600081600260008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508273ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925846040516113749190612200565b60405180910390a3600190509392505050565b600081600160008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020546113d491906122d1565b600160008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000208190555081600160008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054611462919061227b565b600160008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508273ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef846040516115029190612200565b60405180910390a3600190509392505050565b6000428211611559576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161155090612100565b60405180910390fd5b600560008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054836115a4919061227b565b600160008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020541015611625576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161161c906120e0565b60405180910390fd5b82600560008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054611670919061227b565b600560008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002081905550600460008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206040518060400160405280858152602001848152509080600181540180825580915050600190039060005260206000209060020201600090919091909150600082015181600001556020820151816001015550508373ffffffffffffffffffffffffffffffffffffffff167f49eaf4942f1237055eb4cfa5f31c9dfe50d5b4ade01e021f7de8be2fbbde557b848460405161178e92919061221b565b60405180910390a2600190509392505050565b600081600160008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020546117ee91906122d1565b600160008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508160005461183f91906122d1565b600081905550600073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef846040516118a39190612200565b60405180910390a36001905092915050565b60008173ffffffffffffffffffffffffffffffffffffffff16600360009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a381600360006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555060019050919050565b600080600460008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002083815481106119f7577f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b906000526020600020906002020190508060000154600560008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054611a5691906122d1565b600560008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508373ffffffffffffffffffffffffffffffffffffffff167f6381d9813cabeb57471b5a7e05078e64845ccdb563146a6911d536f24ce960f18260000154604051611ae39190612200565b60405180910390a2600460008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206001600460008773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002080549050611b7991906122d1565b81548110611bb0577f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b9060005260206000209060020201600460008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000208481548110611c35577f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b90600052602060002090600202016000820154816000015560018201548160010155905050600460008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020805480611ccf577f4e487b7100000000000000000000000000000000000000000000000000000000600052603160045260246000fd5b6001900381819060005260206000209060020201600080820160009055600182016000905550509055600191505092915050565b600081359050611d128161277c565b92915050565b600081359050611d2781612793565b92915050565b600060208284031215611d3f57600080fd5b6000611d4d84828501611d03565b91505092915050565b60008060408385031215611d6957600080fd5b6000611d7785828601611d03565b9250506020611d8885828601611d03565b9150509250929050565b600080600060608486031215611da757600080fd5b6000611db586828701611d03565b9350506020611dc686828701611d03565b9250506040611dd786828701611d18565b9150509250925092565b60008060408385031215611df457600080fd5b6000611e0285828601611d03565b9250506020611e1385828601611d18565b9150509250929050565b600080600060608486031215611e3257600080fd5b6000611e4086828701611d03565b9350506020611e5186828701611d18565b9250506040611e6286828701611d18565b9150509250925092565b600060208284031215611e7e57600080fd5b6000611e8c84828501611d18565b91505092915050565b611e9e81612305565b82525050565b611ead81612317565b82525050565b6000611ebe8261225f565b611ec8818561226a565b9350611ed881856020860161235a565b611ee18161242f565b840191505092915050565b6000611ef9603e8361226a565b9150611f0482612440565b604082019050919050565b6000611f1c60408361226a565b9150611f278261248f565b604082019050919050565b6000611f3f602b8361226a565b9150611f4a826124de565b604082019050919050565b6000611f62602e8361226a565b9150611f6d8261252d565b604082019050919050565b6000611f85602e8361226a565b9150611f908261257c565b604082019050919050565b6000611fa8602f8361226a565b9150611fb3826125cb565b604082019050919050565b6000611fcb60338361226a565b9150611fd68261261a565b604082019050919050565b6000611fee60338361226a565b9150611ff982612669565b604082019050919050565b6000612011602f8361226a565b915061201c826126b8565b604082019050919050565b600061203460458361226a565b915061203f82612707565b606082019050919050565b61205381612343565b82525050565b6120628161234d565b82525050565b600060208201905061207d6000830184611e95565b92915050565b60006020820190506120986000830184611ea4565b92915050565b600060208201905081810360008301526120b88184611eb3565b905092915050565b600060208201905081810360008301526120d981611eec565b9050919050565b600060208201905081810360008301526120f981611f0f565b9050919050565b6000602082019050818103600083015261211981611f32565b9050919050565b6000602082019050818103600083015261213981611f55565b9050919050565b6000602082019050818103600083015261215981611f78565b9050919050565b6000602082019050818103600083015261217981611f9b565b9050919050565b6000602082019050818103600083015261219981611fbe565b9050919050565b600060208201905081810360008301526121b981611fe1565b9050919050565b600060208201905081810360008301526121d981612004565b9050919050565b600060208201905081810360008301526121f981612027565b9050919050565b6000602082019050612215600083018461204a565b92915050565b6000604082019050612230600083018561204a565b61223d602083018461204a565b9392505050565b60006020820190506122596000830184612059565b92915050565b600081519050919050565b600082825260208201905092915050565b600061228682612343565b915061229183612343565b9250827fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff038211156122c6576122c5612400565b5b828201905092915050565b60006122dc82612343565b91506122e783612343565b9250828210156122fa576122f9612400565b5b828203905092915050565b600061231082612323565b9050919050565b60008115159050919050565b600073ffffffffffffffffffffffffffffffffffffffff82169050919050565b6000819050919050565b600060ff82169050919050565b60005b8381101561237857808201518184015260208101905061235d565b83811115612387576000848401525b50505050565b600061239882612343565b915060008214156123ac576123ab612400565b5b600182039050919050565b60006123c282612343565b91507fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff8214156123f5576123f4612400565b5b600182019050919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b6000601f19601f8301169050919050565b7f45524332304c6f636b61626c652f7472616e73666572576974684c6f636b557060008201527f203a2043616e6e6f742073656e6420746f207a65726f20616464726573730000602082015250565b7f45524332304c6f636b61626c652f6c6f636b203a206c6f636b656420746f746160008201527f6c2073686f756c6420626520736d616c6c6572207468616e2062616c616e6365602082015250565b7f45524332304c6f636b61626c652f6c6f636b203a2043616e6e6f74207365742060008201527f64756520746f2070617374000000000000000000000000000000000000000000602082015250565b7f45524332304c6f636b61626c652f756e6c6f636b3a2063616e6e6f7420756e6c60008201527f6f636b206265666f726520647565000000000000000000000000000000000000602082015250565b7f435249502f617070726f7665203a2053686f756c64206e6f7420617070726f7660008201527f65207a65726f2061646472657373000000000000000000000000000000000000602082015250565b7f4f776e61626c65203a2046756e6374696f6e2063616c6c656420627920756e6160008201527f7574686f72697a656420757365722e0000000000000000000000000000000000602082015250565b7f45524332304c6f636b61626c652f43616e6e6f742073656e64206d6f7265207460008201527f68616e20756e6c6f636b656420616d6f756e7400000000000000000000000000602082015250565b7f435249502f7472616e7366657246726f6d203a2053686f756c64206e6f74207360008201527f656e6420746f207a65726f206164647265737300000000000000000000000000602082015250565b7f435249502f7472616e73666572203a2053686f756c64206e6f742073656e642060008201527f746f207a65726f20616464726573730000000000000000000000000000000000602082015250565b7f4f776e61626c652f7472616e736665724f776e657273686970203a2063616e6e60008201527f6f74207472616e73666572206f776e65727368697020746f207a65726f20616460208201527f6472657373000000000000000000000000000000000000000000000000000000604082015250565b61278581612305565b811461279057600080fd5b50565b61279c81612343565b81146127a757600080fd5b5056fea264697066735822122055113ef7d31dd964dfa94924effb3f7f683976d1ac06118a966f0980639025ce64736f6c63430008020033

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

0000000000000000000000006917ab96584be18fb34647450b806f5e0089636f

-----Decoded View---------------
Arg [0] : _owner (address): 0x6917ab96584Be18FB34647450B806f5E0089636f

-----Encoded View---------------
1 Constructor Arguments found :
Arg [0] : 0000000000000000000000006917ab96584be18fb34647450b806f5e0089636f


Deployed Bytecode Sourcemap

8030:2011:0:-:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;9679:109;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;9339:332;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;1725:100;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;8835:496;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;9921:117;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;6546:408;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;7503:197;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;1831:119;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;3819:130;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;7708:315;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;5662:225;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;3412:102;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;9796:117;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;8468:359;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;6962:240;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;;:::i;:::-;;;;;;;;5895:345;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;6248:290;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;7210:179;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;;:::i;:::-;;;;;;;;1958:183;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;3522:289;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;9679:109;9727:23;9775:5;;;;;;;;;;;;;;;;;9763:17;;9679:109;:::o;9339:332::-;9443:12;9514:1;9495:21;;:7;:21;;;;9473:117;;;;;;;;;;;;:::i;:::-;;;;;;;;;9601:37;9610:10;9622:7;9631:6;9601:8;:37::i;:::-;;9659:4;9649:14;;9339:332;;;;:::o;1725:100::-;1771:13;1805:12;;1797:20;;1725:100;:::o;8835:496::-;8986:12;8954:4;8960:6;4641;4620:12;:18;4633:4;4620:18;;;;;;;;;;;;;;;;:27;;;;:::i;:::-;4601:9;:15;4611:4;4601:15;;;;;;;;;;;;;;;;:46;;4593:110;;;;;;;;;;;;:::i;:::-;;;;;;;;;9052:1:::1;9038:16;;:2;:16;;;;9016:117;;;;;;;;;;;;:::i;:::-;;;;;;;;;9144:27;9154:4;9160:2;9164:6;9144:9;:27::i;:::-;;9182:116;9205:4;9224:10;9281:6;9249:11;:17;9261:4;9249:17;;;;;;;;;;;;;;;:29;9267:10;9249:29;;;;;;;;;;;;;;;;:38;;;;:::i;:::-;9182:8;:116::i;:::-;;9319:4;9309:14;;8835:496:::0;;;;;;;:::o;9921:117::-;9973:19;8235:2;10005:25;;9921:117;:::o;6546:408::-;6665:12;3303:6;;;;;;;;;;;3289:20;;:10;:20;;;3267:117;;;;;;;;;;;;:::i;:::-;;;;;;;;;6738:1:::1;6717:23;;:9;:23;;;;6695:135;;;;;;;;;;;;:::i;:::-;;;;;;;;;6841:40;6851:10;6863:9;6874:6;6841:9;:40::i;:::-;;6892:29;6898:9;6909:6;6917:3;6892:5;:29::i;:::-;;6942:4;6932:14;;6546:408:::0;;;;;:::o;7503:197::-;7562:12;7602:25;7608:10;7620:6;7602:5;:25::i;:::-;7592:35;;7648:10;7643:24;;;7660:6;7643:24;;;;;;:::i;:::-;;;;;;;;7688:4;7678:14;;7503:197;;;:::o;1831:119::-;1888:15;1926:9;:16;1936:5;1926:16;;;;;;;;;;;;;;;;1916:26;;1831:119;;;:::o;3819:130::-;3876:12;3303:6;;;;;;;;;;;3289:20;;:10;:20;;;3267:117;;;;;;;;;;;;:::i;:::-;;;;;;;;;3911:30:::1;3938:1;3911:18;:30::i;:::-;3901:40;;3819:130:::0;:::o;7708:315::-;7787:12;7817:21;7823:6;7831;7817:5;:21::i;:::-;;7859:6;7854:20;;;7867:6;7854:20;;;;;;:::i;:::-;;;;;;;;7895:120;7918:6;7939:10;7998:6;7964:11;:19;7976:6;7964:19;;;;;;;;;;;;;;;:31;7984:10;7964:31;;;;;;;;;;;;;;;;:40;;;;:::i;:::-;7895:8;:120::i;:::-;7885:130;;7708:315;;;;:::o;5662:225::-;5722:12;5778:15;5754:6;:12;5761:4;5754:12;;;;;;;;;;;;;;;5767:3;5754:17;;;;;;;;;;;;;;;;;;;;;;;;;;:21;;;:39;5746:97;;;;;;;;;;;;:::i;:::-;;;;;;;;;5861:18;5869:4;5875:3;5861:7;:18::i;:::-;5854:25;;5662:225;;;;:::o;3412:102::-;3452:20;3500:6;;;;;;;;;;;3485:21;;3412:102;:::o;9796:117::-;9846:25;9898:7;;;;;;;;;;;;;;;;;9884:21;;9796:117;:::o;8468:359::-;8607:12;8569:10;8581:6;4641;4620:12;:18;4633:4;4620:18;;;;;;;;;;;;;;;;:27;;;;:::i;:::-;4601:9;:15;4611:4;4601:15;;;;;;;;;;;;;;;;:46;;4593:110;;;;;;;;;;;;:::i;:::-;;;;;;;;;8673:1:::1;8659:16;;:2;:16;;;;8637:113;;;;;;;;;;;;:::i;:::-;;;;;;;;;8761:33;8771:10;8783:2;8787:6;8761:9;:33::i;:::-;;8815:4;8805:14;;8468:359:::0;;;;;;:::o;6962:240::-;7049:14;7065:11;7094:20;7117:6;:14;7124:6;7117:14;;;;;;;;;;;;;;;7132:5;7117:21;;;;;;;;;;;;;;;;;;;;;;;;;;7094:44;;;;;;;;;;;;;;;;;;;;;;;;;;;7158:4;:11;;;7149:20;;7186:4;:8;;;7180:14;;6962:240;;;;;;:::o;5895:345::-;5946:12;5975:9;5987:1;5975:13;;5971:237;5994:6;:12;6001:4;5994:12;;;;;;;;;;;;;;;:19;;;;5990:1;:23;5971:237;;;6030:3;;;;;:::i;:::-;;;;6077:15;6051:6;:12;6058:4;6051:12;;;;;;;;;;;;;;;6068:1;6064;:5;;;;:::i;:::-;6051:19;;;;;;;;;;;;;;;;;;;;;;;;;;:23;;;:41;6048:149;;;6115:20;6123:4;6133:1;6129;:5;;;;:::i;:::-;6115:7;:20::i;:::-;6112:70;;;6159:3;;;;;:::i;:::-;;;;6112:70;6048:149;5971:237;;;;6228:4;6218:14;;5895:345;;;:::o;6248:290::-;6326:12;3303:6;;;;;;;;;;;3289:20;;:10;:20;;;3267:117;;;;;;;;;;;;:::i;:::-;;;;;;;;;6360:9:::1;6356:150;6379:6;:12;6386:4;6379:12;;;;;;;;;;;;;;;:19;;;;6375:1;:23;6356:150;;;6415:3;;;;;:::i;:::-;;;;6436:20;6444:4;6454:1;6450;:5;;;;:::i;:::-;6436:7;:20::i;:::-;6433:62;;;6476:3;;;;;:::i;:::-;;;;6433:62;6356:150;;;;6526:4;6516:14;;6248:290:::0;;;:::o;7210:179::-;7269:14;7285;7320:12;:20;7333:6;7320:20;;;;;;;;;;;;;;;;7311:29;;7360:6;:14;7367:6;7360:14;;;;;;;;;;;;;;;:21;;;;7351:30;;7210:179;;;:::o;1958:183::-;2059:17;2106:11;:18;2118:5;2106:18;;;;;;;;;;;;;;;:27;2125:7;2106:27;;;;;;;;;;;;;;;;2094:39;;1958:183;;;;:::o;3522:289::-;3620:12;3303:6;;;;;;;;;;;3289:20;;:10;:20;;;3267:117;;;;;;;;;;;;:::i;:::-;;;;;;;;;3678:1:::1;3658:22;;:8;:22;;;;3650:104;;;;;;;;;;;;:::i;:::-;;;;;;;;;3775:28;3794:8;3775:18;:28::i;:::-;3765:38;;3522:289:::0;;;:::o;793:249::-;895:12;955:6;925:11;:18;937:5;925:18;;;;;;;;;;;;;;;:27;944:7;925:27;;;;;;;;;;;;;;;:36;;;;993:7;977:32;;986:5;977:32;;;1002:6;977:32;;;;;;:::i;:::-;;;;;;;;1030:4;1020:14;;793:249;;;;;:::o;492:293::-;589:12;655:6;637:9;:15;647:4;637:15;;;;;;;;;;;;;;;;:24;;;;:::i;:::-;619:9;:15;629:4;619:15;;;;;;;;;;;;;;;:42;;;;704:6;688:9;:13;698:2;688:13;;;;;;;;;;;;;;;;:22;;;;:::i;:::-;672:9;:13;682:2;672:13;;;;;;;;;;;;;;;:38;;;;741:2;726:26;;735:4;726:26;;;745:6;726:26;;;;;;:::i;:::-;;;;;;;;773:4;763:14;;492:293;;;;;:::o;4731:546::-;4817:12;4861:15;4855:3;:21;4847:77;;;;;;;;;;;;:::i;:::-;;;;;;;;;4985:12;:18;4998:4;4985:18;;;;;;;;;;;;;;;;4976:6;:27;;;;:::i;:::-;4957:9;:15;4967:4;4957:15;;;;;;;;;;;;;;;;:46;;4935:160;;;;;;;;;;;;:::i;:::-;;;;;;;;;5148:6;5127:12;:18;5140:4;5127:18;;;;;;;;;;;;;;;;:27;;;;:::i;:::-;5106:12;:18;5119:4;5106:18;;;;;;;;;;;;;;;:48;;;;5165:6;:12;5172:4;5165:12;;;;;;;;;;;;;;;5183:21;;;;;;;;5192:6;5183:21;;;;5200:3;5183:21;;;5165:40;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;5226:4;5221:23;;;5232:6;5240:3;5221:23;;;;;;;:::i;:::-;;;;;;;;5265:4;5255:14;;4731:546;;;;;:::o;1361:291::-;1444:12;1514:6;1494:9;:17;1504:6;1494:17;;;;;;;;;;;;;;;;:26;;;;:::i;:::-;1474:9;:17;1484:6;1474:17;;;;;;;;;;;;;;;:46;;;;1561:6;1546:12;;:21;;;;:::i;:::-;1531:12;:36;;;;1608:1;1583:36;;1592:6;1583:36;;;1612:6;1583:36;;;;;;:::i;:::-;;;;;;;;1640:4;1630:14;;1361:291;;;;:::o;3957:193::-;4021:12;4080:8;4051:38;;4072:6;;;;;;;;;;;4051:38;;;;;;;;;;;;4109:8;4100:6;;:17;;;;;;;;;;;;;;;;;;4138:4;4128:14;;3957:193;;;:::o;5285:369::-;5349:12;5374:21;5398:6;:12;5405:4;5398:12;;;;;;;;;;;;;;;5411:5;5398:19;;;;;;;;;;;;;;;;;;;;;;;;;;5374:43;;5470:4;:11;;;5449:12;:18;5462:4;5449:18;;;;;;;;;;;;;;;;:32;;;;:::i;:::-;5428:12;:18;5441:4;5428:18;;;;;;;;;;;;;;;:53;;;;5504:4;5497:25;;;5510:4;:11;;;5497:25;;;;;;:::i;:::-;;;;;;;;5555:6;:12;5562:4;5555:12;;;;;;;;;;;;;;;5590:1;5568:6;:12;5575:4;5568:12;;;;;;;;;;;;;;;:19;;;;:23;;;;:::i;:::-;5555:37;;;;;;;;;;;;;;;;;;;;;;;;;;5533:6;:12;5540:4;5533:12;;;;;;;;;;;;;;;5546:5;5533:19;;;;;;;;;;;;;;;;;;;;;;;;;;:59;;;;;;;;;;;;;;;;;;;5603:6;:12;5610:4;5603:12;;;;;;;;;;;;;;;:18;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;5642:4;5632:14;;5285:369;;;;;:::o;7:139:1:-;;91:6;78:20;69:29;;107:33;134:5;107:33;:::i;:::-;59:87;;;;:::o;152:139::-;;236:6;223:20;214:29;;252:33;279:5;252:33;:::i;:::-;204:87;;;;:::o;297:262::-;;405:2;393:9;384:7;380:23;376:32;373:2;;;421:1;418;411:12;373:2;464:1;489:53;534:7;525:6;514:9;510:22;489:53;:::i;:::-;479:63;;435:117;363:196;;;;:::o;565:407::-;;;690:2;678:9;669:7;665:23;661:32;658:2;;;706:1;703;696:12;658:2;749:1;774:53;819:7;810:6;799:9;795:22;774:53;:::i;:::-;764:63;;720:117;876:2;902:53;947:7;938:6;927:9;923:22;902:53;:::i;:::-;892:63;;847:118;648:324;;;;;:::o;978:552::-;;;;1120:2;1108:9;1099:7;1095:23;1091:32;1088:2;;;1136:1;1133;1126:12;1088:2;1179:1;1204:53;1249:7;1240:6;1229:9;1225:22;1204:53;:::i;:::-;1194:63;;1150:117;1306:2;1332:53;1377:7;1368:6;1357:9;1353:22;1332:53;:::i;:::-;1322:63;;1277:118;1434:2;1460:53;1505:7;1496:6;1485:9;1481:22;1460:53;:::i;:::-;1450:63;;1405:118;1078:452;;;;;:::o;1536:407::-;;;1661:2;1649:9;1640:7;1636:23;1632:32;1629:2;;;1677:1;1674;1667:12;1629:2;1720:1;1745:53;1790:7;1781:6;1770:9;1766:22;1745:53;:::i;:::-;1735:63;;1691:117;1847:2;1873:53;1918:7;1909:6;1898:9;1894:22;1873:53;:::i;:::-;1863:63;;1818:118;1619:324;;;;;:::o;1949:552::-;;;;2091:2;2079:9;2070:7;2066:23;2062:32;2059:2;;;2107:1;2104;2097:12;2059:2;2150:1;2175:53;2220:7;2211:6;2200:9;2196:22;2175:53;:::i;:::-;2165:63;;2121:117;2277:2;2303:53;2348:7;2339:6;2328:9;2324:22;2303:53;:::i;:::-;2293:63;;2248:118;2405:2;2431:53;2476:7;2467:6;2456:9;2452:22;2431:53;:::i;:::-;2421:63;;2376:118;2049:452;;;;;:::o;2507:262::-;;2615:2;2603:9;2594:7;2590:23;2586:32;2583:2;;;2631:1;2628;2621:12;2583:2;2674:1;2699:53;2744:7;2735:6;2724:9;2720:22;2699:53;:::i;:::-;2689:63;;2645:117;2573:196;;;;:::o;2775:118::-;2862:24;2880:5;2862:24;:::i;:::-;2857:3;2850:37;2840:53;;:::o;2899:109::-;2980:21;2995:5;2980:21;:::i;:::-;2975:3;2968:34;2958:50;;:::o;3014:364::-;;3130:39;3163:5;3130:39;:::i;:::-;3185:71;3249:6;3244:3;3185:71;:::i;:::-;3178:78;;3265:52;3310:6;3305:3;3298:4;3291:5;3287:16;3265:52;:::i;:::-;3342:29;3364:6;3342:29;:::i;:::-;3337:3;3333:39;3326:46;;3106:272;;;;;:::o;3384:366::-;;3547:67;3611:2;3606:3;3547:67;:::i;:::-;3540:74;;3623:93;3712:3;3623:93;:::i;:::-;3741:2;3736:3;3732:12;3725:19;;3530:220;;;:::o;3756:366::-;;3919:67;3983:2;3978:3;3919:67;:::i;:::-;3912:74;;3995:93;4084:3;3995:93;:::i;:::-;4113:2;4108:3;4104:12;4097:19;;3902:220;;;:::o;4128:366::-;;4291:67;4355:2;4350:3;4291:67;:::i;:::-;4284:74;;4367:93;4456:3;4367:93;:::i;:::-;4485:2;4480:3;4476:12;4469:19;;4274:220;;;:::o;4500:366::-;;4663:67;4727:2;4722:3;4663:67;:::i;:::-;4656:74;;4739:93;4828:3;4739:93;:::i;:::-;4857:2;4852:3;4848:12;4841:19;;4646:220;;;:::o;4872:366::-;;5035:67;5099:2;5094:3;5035:67;:::i;:::-;5028:74;;5111:93;5200:3;5111:93;:::i;:::-;5229:2;5224:3;5220:12;5213:19;;5018:220;;;:::o;5244:366::-;;5407:67;5471:2;5466:3;5407:67;:::i;:::-;5400:74;;5483:93;5572:3;5483:93;:::i;:::-;5601:2;5596:3;5592:12;5585:19;;5390:220;;;:::o;5616:366::-;;5779:67;5843:2;5838:3;5779:67;:::i;:::-;5772:74;;5855:93;5944:3;5855:93;:::i;:::-;5973:2;5968:3;5964:12;5957:19;;5762:220;;;:::o;5988:366::-;;6151:67;6215:2;6210:3;6151:67;:::i;:::-;6144:74;;6227:93;6316:3;6227:93;:::i;:::-;6345:2;6340:3;6336:12;6329:19;;6134:220;;;:::o;6360:366::-;;6523:67;6587:2;6582:3;6523:67;:::i;:::-;6516:74;;6599:93;6688:3;6599:93;:::i;:::-;6717:2;6712:3;6708:12;6701:19;;6506:220;;;:::o;6732:366::-;;6895:67;6959:2;6954:3;6895:67;:::i;:::-;6888:74;;6971:93;7060:3;6971:93;:::i;:::-;7089:2;7084:3;7080:12;7073:19;;6878:220;;;:::o;7104:118::-;7191:24;7209:5;7191:24;:::i;:::-;7186:3;7179:37;7169:53;;:::o;7228:112::-;7311:22;7327:5;7311:22;:::i;:::-;7306:3;7299:35;7289:51;;:::o;7346:222::-;;7477:2;7466:9;7462:18;7454:26;;7490:71;7558:1;7547:9;7543:17;7534:6;7490:71;:::i;:::-;7444:124;;;;:::o;7574:210::-;;7699:2;7688:9;7684:18;7676:26;;7712:65;7774:1;7763:9;7759:17;7750:6;7712:65;:::i;:::-;7666:118;;;;:::o;7790:313::-;;7941:2;7930:9;7926:18;7918:26;;7990:9;7984:4;7980:20;7976:1;7965:9;7961:17;7954:47;8018:78;8091:4;8082:6;8018:78;:::i;:::-;8010:86;;7908:195;;;;:::o;8109:419::-;;8313:2;8302:9;8298:18;8290:26;;8362:9;8356:4;8352:20;8348:1;8337:9;8333:17;8326:47;8390:131;8516:4;8390:131;:::i;:::-;8382:139;;8280:248;;;:::o;8534:419::-;;8738:2;8727:9;8723:18;8715:26;;8787:9;8781:4;8777:20;8773:1;8762:9;8758:17;8751:47;8815:131;8941:4;8815:131;:::i;:::-;8807:139;;8705:248;;;:::o;8959:419::-;;9163:2;9152:9;9148:18;9140:26;;9212:9;9206:4;9202:20;9198:1;9187:9;9183:17;9176:47;9240:131;9366:4;9240:131;:::i;:::-;9232:139;;9130:248;;;:::o;9384:419::-;;9588:2;9577:9;9573:18;9565:26;;9637:9;9631:4;9627:20;9623:1;9612:9;9608:17;9601:47;9665:131;9791:4;9665:131;:::i;:::-;9657:139;;9555:248;;;:::o;9809:419::-;;10013:2;10002:9;9998:18;9990:26;;10062:9;10056:4;10052:20;10048:1;10037:9;10033:17;10026:47;10090:131;10216:4;10090:131;:::i;:::-;10082:139;;9980:248;;;:::o;10234:419::-;;10438:2;10427:9;10423:18;10415:26;;10487:9;10481:4;10477:20;10473:1;10462:9;10458:17;10451:47;10515:131;10641:4;10515:131;:::i;:::-;10507:139;;10405:248;;;:::o;10659:419::-;;10863:2;10852:9;10848:18;10840:26;;10912:9;10906:4;10902:20;10898:1;10887:9;10883:17;10876:47;10940:131;11066:4;10940:131;:::i;:::-;10932:139;;10830:248;;;:::o;11084:419::-;;11288:2;11277:9;11273:18;11265:26;;11337:9;11331:4;11327:20;11323:1;11312:9;11308:17;11301:47;11365:131;11491:4;11365:131;:::i;:::-;11357:139;;11255:248;;;:::o;11509:419::-;;11713:2;11702:9;11698:18;11690:26;;11762:9;11756:4;11752:20;11748:1;11737:9;11733:17;11726:47;11790:131;11916:4;11790:131;:::i;:::-;11782:139;;11680:248;;;:::o;11934:419::-;;12138:2;12127:9;12123:18;12115:26;;12187:9;12181:4;12177:20;12173:1;12162:9;12158:17;12151:47;12215:131;12341:4;12215:131;:::i;:::-;12207:139;;12105:248;;;:::o;12359:222::-;;12490:2;12479:9;12475:18;12467:26;;12503:71;12571:1;12560:9;12556:17;12547:6;12503:71;:::i;:::-;12457:124;;;;:::o;12587:332::-;;12746:2;12735:9;12731:18;12723:26;;12759:71;12827:1;12816:9;12812:17;12803:6;12759:71;:::i;:::-;12840:72;12908:2;12897:9;12893:18;12884:6;12840:72;:::i;:::-;12713:206;;;;;:::o;12925:214::-;;13052:2;13041:9;13037:18;13029:26;;13065:67;13129:1;13118:9;13114:17;13105:6;13065:67;:::i;:::-;13019:120;;;;:::o;13145:99::-;;13231:5;13225:12;13215:22;;13204:40;;;:::o;13250:169::-;;13368:6;13363:3;13356:19;13408:4;13403:3;13399:14;13384:29;;13346:73;;;;:::o;13425:305::-;;13484:20;13502:1;13484:20;:::i;:::-;13479:25;;13518:20;13536:1;13518:20;:::i;:::-;13513:25;;13672:1;13604:66;13600:74;13597:1;13594:81;13591:2;;;13678:18;;:::i;:::-;13591:2;13722:1;13719;13715:9;13708:16;;13469:261;;;;:::o;13736:191::-;;13796:20;13814:1;13796:20;:::i;:::-;13791:25;;13830:20;13848:1;13830:20;:::i;:::-;13825:25;;13869:1;13866;13863:8;13860:2;;;13874:18;;:::i;:::-;13860:2;13919:1;13916;13912:9;13904:17;;13781:146;;;;:::o;13933:96::-;;13999:24;14017:5;13999:24;:::i;:::-;13988:35;;13978:51;;;:::o;14035:90::-;;14112:5;14105:13;14098:21;14087:32;;14077:48;;;:::o;14131:126::-;;14208:42;14201:5;14197:54;14186:65;;14176:81;;;:::o;14263:77::-;;14329:5;14318:16;;14308:32;;;:::o;14346:86::-;;14421:4;14414:5;14410:16;14399:27;;14389:43;;;:::o;14438:307::-;14506:1;14516:113;14530:6;14527:1;14524:13;14516:113;;;14615:1;14610:3;14606:11;14600:18;14596:1;14591:3;14587:11;14580:39;14552:2;14549:1;14545:10;14540:15;;14516:113;;;14647:6;14644:1;14641:13;14638:2;;;14727:1;14718:6;14713:3;14709:16;14702:27;14638:2;14487:258;;;;:::o;14751:171::-;;14813:24;14831:5;14813:24;:::i;:::-;14804:33;;14859:4;14852:5;14849:15;14846:2;;;14867:18;;:::i;:::-;14846:2;14914:1;14907:5;14903:13;14896:20;;14794:128;;;:::o;14928:233::-;;14990:24;15008:5;14990:24;:::i;:::-;14981:33;;15036:66;15029:5;15026:77;15023:2;;;15106:18;;:::i;:::-;15023:2;15153:1;15146:5;15142:13;15135:20;;14971:190;;;:::o;15167:180::-;15215:77;15212:1;15205:88;15312:4;15309:1;15302:15;15336:4;15333:1;15326:15;15353:102;;15445:2;15441:7;15436:2;15429:5;15425:14;15421:28;15411:38;;15401:54;;;:::o;15461:249::-;15601:34;15597:1;15589:6;15585:14;15578:58;15670:32;15665:2;15657:6;15653:15;15646:57;15567:143;:::o;15716:251::-;15856:34;15852:1;15844:6;15840:14;15833:58;15925:34;15920:2;15912:6;15908:15;15901:59;15822:145;:::o;15973:230::-;16113:34;16109:1;16101:6;16097:14;16090:58;16182:13;16177:2;16169:6;16165:15;16158:38;16079:124;:::o;16209:233::-;16349:34;16345:1;16337:6;16333:14;16326:58;16418:16;16413:2;16405:6;16401:15;16394:41;16315:127;:::o;16448:233::-;16588:34;16584:1;16576:6;16572:14;16565:58;16657:16;16652:2;16644:6;16640:15;16633:41;16554:127;:::o;16687:234::-;16827:34;16823:1;16815:6;16811:14;16804:58;16896:17;16891:2;16883:6;16879:15;16872:42;16793:128;:::o;16927:238::-;17067:34;17063:1;17055:6;17051:14;17044:58;17136:21;17131:2;17123:6;17119:15;17112:46;17033:132;:::o;17171:238::-;17311:34;17307:1;17299:6;17295:14;17288:58;17380:21;17375:2;17367:6;17363:15;17356:46;17277:132;:::o;17415:234::-;17555:34;17551:1;17543:6;17539:14;17532:58;17624:17;17619:2;17611:6;17607:15;17600:42;17521:128;:::o;17655:293::-;17795:34;17791:1;17783:6;17779:14;17772:58;17864:34;17859:2;17851:6;17847:15;17840:59;17933:7;17928:2;17920:6;17916:15;17909:32;17761:187;:::o;17954:122::-;18027:24;18045:5;18027:24;:::i;:::-;18020:5;18017:35;18007:2;;18066:1;18063;18056:12;18007:2;17997:79;:::o;18082:122::-;18155:24;18173:5;18155:24;:::i;:::-;18148:5;18145:35;18135:2;;18194:1;18191;18184:12;18135:2;18125:79;:::o

Swarm Source

ipfs://55113ef7d31dd964dfa94924effb3f7f683976d1ac06118a966f0980639025ce
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.