ETH Price: $3,000.73 (-2.33%)
Gas: 0.54 Gwei

Token

( (BCKGOV))
 

Overview

Max Total Supply

24,783.95 BCKGOV

Holders

18

Transfers

-
0

Market

Onchain Market Cap

-

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

Similar Match Source Code
This contract matches the deployed Bytecode of the Source Code for Contract 0xdac13B15...6606048A3
The constructor portion of the code might be different and could alter the actual behaviour of the contract

Contract Name:
DSTokenGov

Compiler Version
v0.8.21+commit.d9974bed

Optimization Enabled:
No with 200 runs

Other Settings:
default evmVersion
/// token.sol -- ERC20 implementation with minting and burning

// Copyright (C) 2015, 2016, 2017  DappHub, LLC

// This program is free software: you can redistribute it and/or modify
// it under the terms of the GNU General Public License as published by
// the Free Software Foundation, either version 3 of the License, or
// (at your option) any later version.

// This program is distributed in the hope that it will be useful,
// but WITHOUT ANY WARRANTY; without even the implied warranty of
// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
// GNU General Public License for more details.

// You should have received a copy of the GNU General Public License
// along with this program.  If not, see <http://www.gnu.org/licenses/>.

// SPDX-License-Identifier: GPL-3.0-or-later

//https://www.boundfinance.co.uk/
//https://boundfinance.app/
//Twitter - @BoundFinance
//Discord - https://discord.com/invite/kBDEWndd7m
//Public sale Contract for BCKGOV Tokens

pragma solidity ^0.8.13;

import "ds-stop/stop.sol";
import "./base.sol";

contract DSTokenGov is DSTokenBase(0), DSStop {

    string  public  symbol;
    uint256  public  decimals = 18; // standard token precision. override to customize
    string public name;
    uint256 immutable public maxSupply = 20000000 * 10 ** decimals;  // 20 million tokens, scaled by decimals

    constructor(string memory symbol_) public {
        symbol = symbol_;
    }

    event Mint(address indexed guy, uint wad);
    event Burn(address indexed guy, uint wad);

    function approve(address guy) public stoppable returns (bool) {
        return super.approve(guy, type(uint256).max);
    }

    function approve(address guy, uint wad) public stoppable override returns (bool) {
        return super.approve(guy, wad);
    }

    function transferFrom(address src, address dst, uint wad)
        public
        stoppable 
        override 
        returns (bool)
    {
        if (src != msg.sender && _approvals[src][msg.sender] != type(uint256).max) {
            _approvals[src][msg.sender] = _approvals[src][msg.sender] - wad;
        }

        _balances[src] = _balances[src] - wad;
        _balances[dst] = _balances[dst] + wad;

        emit Transfer(src, dst, wad);

        return true;
    }

    function push(address dst, uint wad) public {
        transferFrom(msg.sender, dst, wad);
    }
    function pull(address src, uint wad) public {
        transferFrom(src, msg.sender, wad);
    }
    function move(address src, address dst, uint wad) public {
        transferFrom(src, dst, wad);
    }

    function mint(uint wad) public {
        mint(msg.sender, wad);
    }
    function burn(uint wad) public {
        burn(msg.sender, wad);
    }
    function mint(address guy, uint wad) public auth stoppable {
        require(_supply + wad <= maxSupply, "Exceeds max supply");
        _balances[guy] = _balances[guy] + wad;
        _supply = _supply + wad;
        emit Mint(guy, wad);
    }
    function burn(address guy, uint wad) public auth stoppable {
        if (guy != msg.sender && _approvals[guy][msg.sender] != type(uint256).max) {
            _approvals[guy][msg.sender] = _approvals[guy][msg.sender] - wad;
        }

        _balances[guy] = _balances[guy] - wad;
        _supply = _supply - wad;
        emit Burn(guy, wad);
    }

    // Optional token name

    function setName(string memory name_) public auth {
        name = name_;
    }
}

/// base.sol -- basic ERC20 implementation

// Copyright (C) 2015, 2016, 2017  DappHub, LLC

// This program is free software: you can redistribute it and/or modify
// it under the terms of the GNU General Public License as published by
// the Free Software Foundation, either version 3 of the License, or
// (at your option) any later version.

// This program is distributed in the hope that it will be useful,
// but WITHOUT ANY WARRANTY; without even the implied warranty of
// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
// GNU General Public License for more details.

// You should have received a copy of the GNU General Public License
// along with this program.  If not, see <http://www.gnu.org/licenses/>.

pragma solidity ^0.8.13;

import "erc20/erc20.sol";
import "ds-math/math.sol";

contract DSTokenBase is ERC20, DSMath {
    uint256                                            _supply;
    mapping (address => uint256)                       _balances;
    mapping (address => mapping (address => uint256))  _approvals;

    constructor(uint supply) public {
        _balances[msg.sender] = supply;
        _supply = supply;
    }

    function totalSupply() public view override returns (uint) {
        return _supply;
    }
    function balanceOf(address src) public view override returns (uint) {
        return _balances[src];
    }
    function allowance(address src, address guy) public view override returns (uint) {
        return _approvals[src][guy];
    }

    function transfer(address dst, uint wad) public override returns (bool) {
        return transferFrom(msg.sender, dst, wad);
    }

    function transferFrom(address src, address dst, uint wad)
        public
        override virtual
        returns (bool)
    {
        if (src != msg.sender) {
            _approvals[src][msg.sender] = sub(_approvals[src][msg.sender], wad);
        }

        _balances[src] = sub(_balances[src], wad);
        _balances[dst] = add(_balances[dst], wad);

        emit Transfer(src, dst, wad);

        return true;
    }

    function approve(address guy, uint wad) public override virtual returns (bool) {
        _approvals[msg.sender][guy] = wad;

        emit Approval(msg.sender, guy, wad);

        return true;
    }
}

/// stop.sol -- mixin for enable/disable functionality

// Copyright (C) 2017  DappHub, LLC

// This program is free software: you can redistribute it and/or modify
// it under the terms of the GNU General Public License as published by
// the Free Software Foundation, either version 3 of the License, or
// (at your option) any later version.

// This program is distributed in the hope that it will be useful,
// but WITHOUT ANY WARRANTY; without even the implied warranty of
// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
// GNU General Public License for more details.

// You should have received a copy of the GNU General Public License
// along with this program.  If not, see <http://www.gnu.org/licenses/>.

pragma solidity ^0.8.13;

import "ds-auth/auth.sol";
import "ds-note/note.sol";

contract DSStop is DSNote, DSAuth {

    bool public stopped;

    modifier stoppable {
        require(!stopped);
        _;
    }
    function stop() public auth payable note {
        stopped = true;
    }
    function start() public auth payable note {
        stopped = false;
    }

}

/// math.sol -- mixin for inline numerical wizardry

// This program is free software: you can redistribute it and/or modify
// it under the terms of the GNU General Public License as published by
// the Free Software Foundation, either version 3 of the License, or
// (at your option) any later version.

// This program is distributed in the hope that it will be useful,
// but WITHOUT ANY WARRANTY; without even the implied warranty of
// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
// GNU General Public License for more details.

// You should have received a copy of the GNU General Public License
// along with this program.  If not, see <http://www.gnu.org/licenses/>.

pragma solidity >0.8.13;

contract DSMath {
    function add(uint x, uint y) internal pure returns (uint z) {
        require((z = x + y) >= x, "ds-math-add-overflow");
    }
    function sub(uint x, uint y) internal pure returns (uint z) {
        require((z = x - y) <= x, "ds-math-sub-underflow");
    }
    function mul(uint x, uint y) internal pure returns (uint z) {
        require(y == 0 || (z = x * y) / y == x, "ds-math-mul-overflow");
    }

    function min(uint x, uint y) internal pure returns (uint z) {
        return x <= y ? x : y;
    }
    function max(uint x, uint y) internal pure returns (uint z) {
        return x >= y ? x : y;
    }
    function imin(int x, int y) internal pure returns (int z) {
        return x <= y ? x : y;
    }
    function imax(int x, int y) internal pure returns (int z) {
        return x >= y ? x : y;
    }

    uint constant WAD = 10 ** 18;
    uint constant RAY = 10 ** 27;

    //rounds to zero if x*y < WAD / 2
    function wmul(uint x, uint y) internal pure returns (uint z) {
        z = add(mul(x, y), WAD / 2) / WAD;
    }
    //rounds to zero if x*y < WAD / 2
    function rmul(uint x, uint y) internal pure returns (uint z) {
        z = add(mul(x, y), RAY / 2) / RAY;
    }
    //rounds to zero if x*y < WAD / 2
    function wdiv(uint x, uint y) internal pure returns (uint z) {
        z = add(mul(x, WAD), y / 2) / y;
    }
    //rounds to zero if x*y < RAY / 2
    function rdiv(uint x, uint y) internal pure returns (uint z) {
        z = add(mul(x, RAY), y / 2) / y;
    }

    // This famous algorithm is called "exponentiation by squaring"
    // and calculates x^n with x as fixed-point and n as regular unsigned.
    //
    // It's O(log n), instead of O(n) for naive repeated multiplication.
    //
    // These facts are why it works:
    //
    //  If n is even, then x^n = (x^2)^(n/2).
    //  If n is odd,  then x^n = x * x^(n-1),
    //   and applying the equation for even x gives
    //    x^n = x * (x^2)^((n-1) / 2).
    //
    //  Also, EVM division is flooring and
    //    floor[(n-1) / 2] = floor[n / 2].
    //
    function rpow(uint x, uint n) internal pure returns (uint z) {
        z = n % 2 != 0 ? x : RAY;

        for (n /= 2; n != 0; n /= 2) {
            x = rmul(x, x);

            if (n % 2 != 0) {
                z = rmul(z, x);
            }
        }
    }
}

/// erc20.sol -- API for the ERC20 token standard

// See <https://github.com/ethereum/EIPs/issues/20>.

// This file likely does not meet the threshold of originality
// required for copyright to apply.  As a result, this is free and
// unencumbered software belonging to the public domain.

pragma solidity ^0.8.18;

 contract ERC20Events {
    event Approval(address indexed src, address indexed guy, uint wad);
    event Transfer(address indexed src, address indexed dst, uint wad);
}

abstract contract ERC20 is ERC20Events {
    function totalSupply() public view virtual returns (uint);
    function balanceOf(address guy) public view virtual returns (uint);
    function allowance(address src, address guy) public virtual view returns (uint);

    function approve(address guy, uint wad) public virtual returns (bool);
    function transfer(address dst, uint wad) public virtual returns (bool);
    function transferFrom(
        address src, address dst, uint wad
    ) public virtual returns (bool);
}

File 6 of 7 : note.sol
/// note.sol -- the `note' modifier, for logging calls as events

// This program is free software: you can redistribute it and/or modify
// it under the terms of the GNU General Public License as published by
// the Free Software Foundation, either version 3 of the License, or
// (at your option) any later version.

// This program is distributed in the hope that it will be useful,
// but WITHOUT ANY WARRANTY; without even the implied warranty of
// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
// GNU General Public License for more details.

// You should have received a copy of the GNU General Public License
// along with this program.  If not, see <http://www.gnu.org/licenses/>.

pragma solidity ^0.8.13;

contract DSNote {
    event LogNote(
        bytes4   indexed  sig,
        address  indexed  guy,
        bytes32  indexed  foo,
        bytes32  indexed  bar,
        uint              wad,
        bytes             fax
    ) anonymous;

    modifier note {
        bytes32 foo;
        bytes32 bar;

        assembly {
            foo := calldataload(4)
            bar := calldataload(36)
        }

        emit LogNote(msg.sig, msg.sender, foo, bar, msg.value, msg.data);

        _;
    }
}

// SPDX-License-Identifier: GNU-3
// This program is free software: you can redistribute it and/or modify
// it under the terms of the GNU General Public License as published by
// the Free Software Foundation, either version 3 of the License, or
// (at your option) any later version.

// This program is distributed in the hope that it will be useful,
// but WITHOUT ANY WARRANTY; without even the implied warranty of
// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
// GNU General Public License for more details.

// You should have received a copy of the GNU General Public License
// along with this program.  If not, see <http://www.gnu.org/licenses/>.

pragma solidity ^0.8.13;

interface DSAuthority {
    function canCall(
        address src, address dst, bytes4 sig
    ) external view returns (bool);
}

contract DSAuthEvents {
    event LogSetAuthority (address indexed authority);
    event LogSetOwner     (address indexed owner);
}

contract DSAuth is DSAuthEvents {
    DSAuthority  public  authority;
    address      public  owner;

    constructor() public {
        owner = msg.sender;
        emit LogSetOwner(msg.sender);
    }

    function setOwner(address owner_)
        public
        auth
    {
        owner = owner_;
        emit LogSetOwner(owner);
    }

    function setAuthority(DSAuthority authority_)
        public
        auth
    {
        authority = authority_;
        emit LogSetAuthority(address(authority));
    }

    modifier auth {
        require(isAuthorized(msg.sender, msg.sig), "ds-auth-unauthorized");
        _;
    }

    function isAuthorized(address src, bytes4 sig) internal view returns (bool) {
        if (src == address(this)) {
            return true;
        } else if (src == owner) {
            return true;
        } else if (authority == DSAuthority(address(0))) {
            return false;
        } else {
            return authority.canCall(src, address(this), sig);
        }
    }
}

Settings
{
  "optimizer": {
    "enabled": false,
    "runs": 200
  },
  "outputSelection": {
    "*": {
      "*": [
        "evm.bytecode",
        "evm.deployedBytecode",
        "devdoc",
        "userdoc",
        "metadata",
        "abi"
      ]
    }
  }
}

Contract Security Audit

Contract ABI

API
[{"inputs":[{"internalType":"string","name":"symbol_","type":"string"}],"stateMutability":"nonpayable","type":"constructor"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"src","type":"address"},{"indexed":true,"internalType":"address","name":"guy","type":"address"},{"indexed":false,"internalType":"uint256","name":"wad","type":"uint256"}],"name":"Approval","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"guy","type":"address"},{"indexed":false,"internalType":"uint256","name":"wad","type":"uint256"}],"name":"Burn","type":"event"},{"anonymous":true,"inputs":[{"indexed":true,"internalType":"bytes4","name":"sig","type":"bytes4"},{"indexed":true,"internalType":"address","name":"guy","type":"address"},{"indexed":true,"internalType":"bytes32","name":"foo","type":"bytes32"},{"indexed":true,"internalType":"bytes32","name":"bar","type":"bytes32"},{"indexed":false,"internalType":"uint256","name":"wad","type":"uint256"},{"indexed":false,"internalType":"bytes","name":"fax","type":"bytes"}],"name":"LogNote","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"authority","type":"address"}],"name":"LogSetAuthority","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"owner","type":"address"}],"name":"LogSetOwner","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"guy","type":"address"},{"indexed":false,"internalType":"uint256","name":"wad","type":"uint256"}],"name":"Mint","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"src","type":"address"},{"indexed":true,"internalType":"address","name":"dst","type":"address"},{"indexed":false,"internalType":"uint256","name":"wad","type":"uint256"}],"name":"Transfer","type":"event"},{"inputs":[{"internalType":"address","name":"src","type":"address"},{"internalType":"address","name":"guy","type":"address"}],"name":"allowance","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"guy","type":"address"},{"internalType":"uint256","name":"wad","type":"uint256"}],"name":"approve","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"guy","type":"address"}],"name":"approve","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"authority","outputs":[{"internalType":"contract DSAuthority","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"src","type":"address"}],"name":"balanceOf","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"uint256","name":"wad","type":"uint256"}],"name":"burn","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"guy","type":"address"},{"internalType":"uint256","name":"wad","type":"uint256"}],"name":"burn","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"decimals","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"maxSupply","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"guy","type":"address"},{"internalType":"uint256","name":"wad","type":"uint256"}],"name":"mint","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"uint256","name":"wad","type":"uint256"}],"name":"mint","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"src","type":"address"},{"internalType":"address","name":"dst","type":"address"},{"internalType":"uint256","name":"wad","type":"uint256"}],"name":"move","outputs":[],"stateMutability":"nonpayable","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":[{"internalType":"address","name":"src","type":"address"},{"internalType":"uint256","name":"wad","type":"uint256"}],"name":"pull","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"dst","type":"address"},{"internalType":"uint256","name":"wad","type":"uint256"}],"name":"push","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"contract DSAuthority","name":"authority_","type":"address"}],"name":"setAuthority","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"string","name":"name_","type":"string"}],"name":"setName","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"owner_","type":"address"}],"name":"setOwner","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"start","outputs":[],"stateMutability":"payable","type":"function"},{"inputs":[],"name":"stop","outputs":[],"stateMutability":"payable","type":"function"},{"inputs":[],"name":"stopped","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"symbol","outputs":[{"internalType":"string","name":"","type":"string"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"totalSupply","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"dst","type":"address"},{"internalType":"uint256","name":"wad","type":"uint256"}],"name":"transfer","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"src","type":"address"},{"internalType":"address","name":"dst","type":"address"},{"internalType":"uint256","name":"wad","type":"uint256"}],"name":"transferFrom","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"}]

0x60a06040526012600655600654600a6200001a9190620002cf565b6301312d006200002b91906200031f565b6080908152503480156200003d575f80fd5b5060405162002c4538038062002c458339818101604052810190620000639190620004ee565b5f8060015f3373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f2081905550805f81905550503360045f6101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055503373ffffffffffffffffffffffffffffffffffffffff167fce241d7ca1f669fee44b6fc00b8eba2df3bb514eed0f6f668f8f89096e81ed9460405160405180910390a280600590816200014191906200076b565b50506200084f565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52601160045260245ffd5b5f8160011c9050919050565b5f808291508390505b6001851115620001d357808604811115620001ab57620001aa62000149565b5b6001851615620001bb5780820291505b8081029050620001cb8562000176565b94506200018b565b94509492505050565b5f82620001ed5760019050620002bf565b81620001fc575f9050620002bf565b8160018114620002155760028114620002205762000256565b6001915050620002bf565b60ff84111562000235576200023462000149565b5b8360020a9150848211156200024f576200024e62000149565b5b50620002bf565b5060208310610133831016604e8410600b8410161715620002905782820a9050838111156200028a576200028962000149565b5b620002bf565b6200029f848484600162000182565b92509050818404811115620002b957620002b862000149565b5b81810290505b9392505050565b5f819050919050565b5f620002db82620002c6565b9150620002e883620002c6565b9250620003177fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff8484620001dc565b905092915050565b5f6200032b82620002c6565b91506200033883620002c6565b92508282026200034881620002c6565b9150828204841483151762000362576200036162000149565b5b5092915050565b5f604051905090565b5f80fd5b5f80fd5b5f80fd5b5f80fd5b5f601f19601f8301169050919050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52604160045260245ffd5b620003ca8262000382565b810181811067ffffffffffffffff82111715620003ec57620003eb62000392565b5b80604052505050565b5f6200040062000369565b90506200040e8282620003bf565b919050565b5f67ffffffffffffffff82111562000430576200042f62000392565b5b6200043b8262000382565b9050602081019050919050565b5f5b83811015620004675780820151818401526020810190506200044a565b5f8484015250505050565b5f62000488620004828462000413565b620003f5565b905082815260208101848484011115620004a757620004a66200037e565b5b620004b484828562000448565b509392505050565b5f82601f830112620004d357620004d26200037a565b5b8151620004e584826020860162000472565b91505092915050565b5f6020828403121562000506576200050562000372565b5b5f82015167ffffffffffffffff81111562000526576200052562000376565b5b6200053484828501620004bc565b91505092915050565b5f81519050919050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52602260045260245ffd5b5f60028204905060018216806200058c57607f821691505b602082108103620005a257620005a162000547565b5b50919050565b5f819050815f5260205f209050919050565b5f6020601f8301049050919050565b5f82821b905092915050565b5f60088302620006067fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff82620005c9565b620006128683620005c9565b95508019841693508086168417925050509392505050565b5f819050919050565b5f620006536200064d6200064784620002c6565b6200062a565b620002c6565b9050919050565b5f819050919050565b6200066e8362000633565b620006866200067d826200065a565b848454620005d5565b825550505050565b5f90565b6200069c6200068e565b620006a981848462000663565b505050565b5b81811015620006d057620006c45f8262000692565b600181019050620006af565b5050565b601f8211156200071f57620006e981620005a8565b620006f484620005ba565b8101602085101562000704578190505b6200071c6200071385620005ba565b830182620006ae565b50505b505050565b5f82821c905092915050565b5f620007415f198460080262000724565b1980831691505092915050565b5f6200075b838362000730565b9150826002028217905092915050565b62000776826200053d565b67ffffffffffffffff81111562000792576200079162000392565b5b6200079e825462000574565b620007ab828285620006d4565b5f60209050601f831160018114620007e1575f8415620007cc578287015190505b620007d885826200074e565b86555062000847565b601f198416620007f186620005a8565b5f5b828110156200081a57848901518255600182019150602085019450602081019050620007f3565b868310156200083a578489015162000836601f89168262000730565b8355505b6001600288020188555050505b505050505050565b6080516123d66200086f5f395f8181610cc5015261158b01526123d65ff3fe608060405260043610610180575f3560e01c806395d89b41116100d0578063be9a655511610089578063d5abeb0111610063578063d5abeb0114610516578063daea85c514610540578063dd62ed3e1461057c578063f2d5d56b146105b857610180565b8063be9a6555146104ba578063bf7e214f146104c4578063c47f0027146104ee57610180565b806395d89b41146103b45780639dc29fac146103de578063a0712d6814610406578063a9059cbb1461042e578063b753a98c1461046a578063bb35783b1461049257610180565b8063313ce5671161013d57806370a082311161011757806370a08231146102fc57806375f12b21146103385780637a9e5e4b146103625780638da5cb5b1461038a57610180565b8063313ce5671461028257806340c10f19146102ac57806342966c68146102d457610180565b806306fdde031461018457806307da68f5146101ae578063095ea7b3146101b857806313af4035146101f457806318160ddd1461021c57806323b872dd14610246575b5f80fd5b34801561018f575f80fd5b506101986105e0565b6040516101a5919061199d565b60405180910390f35b6101b661066c565b005b3480156101c3575f80fd5b506101de60048036038101906101d99190611a5b565b610779565b6040516101eb9190611ab3565b60405180910390f35b3480156101ff575f80fd5b5061021a60048036038101906102159190611acc565b6107a5565b005b348015610227575f80fd5b506102306108b8565b60405161023d9190611b06565b60405180910390f35b348015610251575f80fd5b5061026c60048036038101906102679190611b1f565b6108c0565b6040516102799190611ab3565b60405180910390f35b34801561028d575f80fd5b50610296610c38565b6040516102a39190611b06565b60405180910390f35b3480156102b7575f80fd5b506102d260048036038101906102cd9190611a5b565b610c3e565b005b3480156102df575f80fd5b506102fa60048036038101906102f59190611b6f565b610e20565b005b348015610307575f80fd5b50610322600480360381019061031d9190611acc565b610e2d565b60405161032f9190611b06565b60405180910390f35b348015610343575f80fd5b5061034c610e73565b6040516103599190611ab3565b60405180910390f35b34801561036d575f80fd5b5061038860048036038101906103839190611bd5565b610e86565b005b348015610395575f80fd5b5061039e610f99565b6040516103ab9190611c0f565b60405180910390f35b3480156103bf575f80fd5b506103c8610fbe565b6040516103d5919061199d565b60405180910390f35b3480156103e9575f80fd5b5061040460048036038101906103ff9190611a5b565b61104a565b005b348015610411575f80fd5b5061042c60048036038101906104279190611b6f565b611397565b005b348015610439575f80fd5b50610454600480360381019061044f9190611a5b565b6113a4565b6040516104619190611ab3565b60405180910390f35b348015610475575f80fd5b50610490600480360381019061048b9190611a5b565b6113b8565b005b34801561049d575f80fd5b506104b860048036038101906104b39190611b1f565b6113c8565b005b6104c26113d9565b005b3480156104cf575f80fd5b506104d86114e5565b6040516104e59190611c83565b60405180910390f35b3480156104f9575f80fd5b50610514600480360381019061050f9190611dc8565b61150a565b005b348015610521575f80fd5b5061052a611589565b6040516105379190611b06565b60405180910390f35b34801561054b575f80fd5b5061056660048036038101906105619190611acc565b6115ad565b6040516105739190611ab3565b60405180910390f35b348015610587575f80fd5b506105a2600480360381019061059d9190611e0f565b6115f8565b6040516105af9190611b06565b60405180910390f35b3480156105c3575f80fd5b506105de60048036038101906105d99190611a5b565b61167a565b005b600780546105ed90611e7a565b80601f016020809104026020016040519081016040528092919081815260200182805461061990611e7a565b80156106645780601f1061063b57610100808354040283529160200191610664565b820191905f5260205f20905b81548152906001019060200180831161064757829003601f168201915b505050505081565b610699335f357fffffffff000000000000000000000000000000000000000000000000000000001661168a565b6106d8576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016106cf90611ef4565b60405180910390fd5b5f806004359150602435905080823373ffffffffffffffffffffffffffffffffffffffff165f357fffffffff00000000000000000000000000000000000000000000000000000000167bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916345f3660405161075293929190611f4e565b60405180910390a46001600460146101000a81548160ff0219169083151502179055505050565b5f600460149054906101000a900460ff1615610793575f80fd5b61079d8383611826565b905092915050565b6107d2335f357fffffffff000000000000000000000000000000000000000000000000000000001661168a565b610811576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161080890611ef4565b60405180910390fd5b8060045f6101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555060045f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff167fce241d7ca1f669fee44b6fc00b8eba2df3bb514eed0f6f668f8f89096e81ed9460405160405180910390a250565b5f8054905090565b5f600460149054906101000a900460ff16156108da575f80fd5b3373ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff16141580156109ae57507fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff60025f8673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f3373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205414155b15610ab4578160025f8673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f3373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f2054610a379190611fab565b60025f8673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f3373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f20819055505b8160015f8673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f2054610afd9190611fab565b60015f8673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f20819055508160015f8573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f2054610b879190611fde565b60015f8573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f20819055508273ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef84604051610c259190611b06565b60405180910390a3600190509392505050565b60065481565b610c6b335f357fffffffff000000000000000000000000000000000000000000000000000000001661168a565b610caa576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610ca190611ef4565b60405180910390fd5b600460149054906101000a900460ff1615610cc3575f80fd5b7f0000000000000000000000000000000000000000000000000000000000000000815f54610cf19190611fde565b1115610d32576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610d299061205b565b60405180910390fd5b8060015f8473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f2054610d7b9190611fde565b60015f8473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f2081905550805f54610dc99190611fde565b5f819055508173ffffffffffffffffffffffffffffffffffffffff167f0f6798a560793a54c3bcfe86a93cde1e73087d944c0ea20544137d412139688582604051610e149190611b06565b60405180910390a25050565b610e2a338261104a565b50565b5f60015f8373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f20549050919050565b600460149054906101000a900460ff1681565b610eb3335f357fffffffff000000000000000000000000000000000000000000000000000000001661168a565b610ef2576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610ee990611ef4565b60405180910390fd5b8060035f6101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555060035f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff167f1abebea81bfa2637f28358c371278fb15ede7ea8dd28d2e03b112ff6d936ada460405160405180910390a250565b60045f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b60058054610fcb90611e7a565b80601f0160208091040260200160405190810160405280929190818152602001828054610ff790611e7a565b80156110425780601f1061101957610100808354040283529160200191611042565b820191905f5260205f20905b81548152906001019060200180831161102557829003601f168201915b505050505081565b611077335f357fffffffff000000000000000000000000000000000000000000000000000000001661168a565b6110b6576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016110ad90611ef4565b60405180910390fd5b600460149054906101000a900460ff16156110cf575f80fd5b3373ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff16141580156111a357507fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff60025f8473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f3373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205414155b156112a9578060025f8473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f3373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205461122c9190611fab565b60025f8473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f3373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f20819055505b8060015f8473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f20546112f29190611fab565b60015f8473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f2081905550805f546113409190611fab565b5f819055508173ffffffffffffffffffffffffffffffffffffffff167fcc16f5dbb4873280815c1ee09dbd06736cffcc184412cf7a71a0fdb75d397ca58260405161138b9190611b06565b60405180910390a25050565b6113a13382610c3e565b50565b5f6113b03384846108c0565b905092915050565b6113c33383836108c0565b505050565b6113d38383836108c0565b50505050565b611406335f357fffffffff000000000000000000000000000000000000000000000000000000001661168a565b611445576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161143c90611ef4565b60405180910390fd5b5f806004359150602435905080823373ffffffffffffffffffffffffffffffffffffffff165f357fffffffff00000000000000000000000000000000000000000000000000000000167bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916345f366040516114bf93929190611f4e565b60405180910390a45f600460146101000a81548160ff0219169083151502179055505050565b60035f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b611537335f357fffffffff000000000000000000000000000000000000000000000000000000001661168a565b611576576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161156d90611ef4565b60405180910390fd5b8060079081611585919061220d565b5050565b7f000000000000000000000000000000000000000000000000000000000000000081565b5f600460149054906101000a900460ff16156115c7575f80fd5b6115f1827fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff611826565b9050919050565b5f60025f8473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f8373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f2054905092915050565b6116858233836108c0565b505050565b5f3073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff16036116c75760019050611820565b60045f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff16036117245760019050611820565b5f73ffffffffffffffffffffffffffffffffffffffff1660035f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1603611780575f9050611820565b60035f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663b70096138430856040518463ffffffff1660e01b81526004016117de93929190612316565b602060405180830381865afa1580156117f9573d5f803e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061181d9190612375565b90505b92915050565b5f8160025f3373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f8573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f20819055508273ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925846040516119019190611b06565b60405180910390a36001905092915050565b5f81519050919050565b5f82825260208201905092915050565b5f5b8381101561194a57808201518184015260208101905061192f565b5f8484015250505050565b5f601f19601f8301169050919050565b5f61196f82611913565b611979818561191d565b935061198981856020860161192d565b61199281611955565b840191505092915050565b5f6020820190508181035f8301526119b58184611965565b905092915050565b5f604051905090565b5f80fd5b5f80fd5b5f73ffffffffffffffffffffffffffffffffffffffff82169050919050565b5f6119f7826119ce565b9050919050565b611a07816119ed565b8114611a11575f80fd5b50565b5f81359050611a22816119fe565b92915050565b5f819050919050565b611a3a81611a28565b8114611a44575f80fd5b50565b5f81359050611a5581611a31565b92915050565b5f8060408385031215611a7157611a706119c6565b5b5f611a7e85828601611a14565b9250506020611a8f85828601611a47565b9150509250929050565b5f8115159050919050565b611aad81611a99565b82525050565b5f602082019050611ac65f830184611aa4565b92915050565b5f60208284031215611ae157611ae06119c6565b5b5f611aee84828501611a14565b91505092915050565b611b0081611a28565b82525050565b5f602082019050611b195f830184611af7565b92915050565b5f805f60608486031215611b3657611b356119c6565b5b5f611b4386828701611a14565b9350506020611b5486828701611a14565b9250506040611b6586828701611a47565b9150509250925092565b5f60208284031215611b8457611b836119c6565b5b5f611b9184828501611a47565b91505092915050565b5f611ba4826119ed565b9050919050565b611bb481611b9a565b8114611bbe575f80fd5b50565b5f81359050611bcf81611bab565b92915050565b5f60208284031215611bea57611be96119c6565b5b5f611bf784828501611bc1565b91505092915050565b611c09816119ed565b82525050565b5f602082019050611c225f830184611c00565b92915050565b5f819050919050565b5f611c4b611c46611c41846119ce565b611c28565b6119ce565b9050919050565b5f611c5c82611c31565b9050919050565b5f611c6d82611c52565b9050919050565b611c7d81611c63565b82525050565b5f602082019050611c965f830184611c74565b92915050565b5f80fd5b5f80fd5b7f4e487b71000000000000000000000000000000000000000000000000000000005f52604160045260245ffd5b611cda82611955565b810181811067ffffffffffffffff82111715611cf957611cf8611ca4565b5b80604052505050565b5f611d0b6119bd565b9050611d178282611cd1565b919050565b5f67ffffffffffffffff821115611d3657611d35611ca4565b5b611d3f82611955565b9050602081019050919050565b828183375f83830152505050565b5f611d6c611d6784611d1c565b611d02565b905082815260208101848484011115611d8857611d87611ca0565b5b611d93848285611d4c565b509392505050565b5f82601f830112611daf57611dae611c9c565b5b8135611dbf848260208601611d5a565b91505092915050565b5f60208284031215611ddd57611ddc6119c6565b5b5f82013567ffffffffffffffff811115611dfa57611df96119ca565b5b611e0684828501611d9b565b91505092915050565b5f8060408385031215611e2557611e246119c6565b5b5f611e3285828601611a14565b9250506020611e4385828601611a14565b9150509250929050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52602260045260245ffd5b5f6002820490506001821680611e9157607f821691505b602082108103611ea457611ea3611e4d565b5b50919050565b7f64732d617574682d756e617574686f72697a65640000000000000000000000005f82015250565b5f611ede60148361191d565b9150611ee982611eaa565b602082019050919050565b5f6020820190508181035f830152611f0b81611ed2565b9050919050565b5f82825260208201905092915050565b5f611f2d8385611f12565b9350611f3a838584611d4c565b611f4383611955565b840190509392505050565b5f604082019050611f615f830186611af7565b8181036020830152611f74818486611f22565b9050949350505050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52601160045260245ffd5b5f611fb582611a28565b9150611fc083611a28565b9250828203905081811115611fd857611fd7611f7e565b5b92915050565b5f611fe882611a28565b9150611ff383611a28565b925082820190508082111561200b5761200a611f7e565b5b92915050565b7f45786365656473206d617820737570706c7900000000000000000000000000005f82015250565b5f61204560128361191d565b915061205082612011565b602082019050919050565b5f6020820190508181035f83015261207281612039565b9050919050565b5f819050815f5260205f209050919050565b5f6020601f8301049050919050565b5f82821b905092915050565b5f600883026120d57fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff8261209a565b6120df868361209a565b95508019841693508086168417925050509392505050565b5f61211161210c61210784611a28565b611c28565b611a28565b9050919050565b5f819050919050565b61212a836120f7565b61213e61213682612118565b8484546120a6565b825550505050565b5f90565b612152612146565b61215d818484612121565b505050565b5b81811015612180576121755f8261214a565b600181019050612163565b5050565b601f8211156121c55761219681612079565b61219f8461208b565b810160208510156121ae578190505b6121c26121ba8561208b565b830182612162565b50505b505050565b5f82821c905092915050565b5f6121e55f19846008026121ca565b1980831691505092915050565b5f6121fd83836121d6565b9150826002028217905092915050565b61221682611913565b67ffffffffffffffff81111561222f5761222e611ca4565b5b6122398254611e7a565b612244828285612184565b5f60209050601f831160018114612275575f8415612263578287015190505b61226d85826121f2565b8655506122d4565b601f19841661228386612079565b5f5b828110156122aa57848901518255600182019150602085019450602081019050612285565b868310156122c757848901516122c3601f8916826121d6565b8355505b6001600288020188555050505b505050505050565b5f7fffffffff0000000000000000000000000000000000000000000000000000000082169050919050565b612310816122dc565b82525050565b5f6060820190506123295f830186611c00565b6123366020830185611c00565b6123436040830184612307565b949350505050565b61235481611a99565b811461235e575f80fd5b50565b5f8151905061236f8161234b565b92915050565b5f6020828403121561238a576123896119c6565b5b5f61239784828501612361565b9150509291505056fea264697066735822122006e83dab36cfd57d3ae571b5e41bae9a2638cc6a698d74bfa9971a6ef9ddda1764736f6c634300081500330000000000000000000000000000000000000000000000000000000000000020000000000000000000000000000000000000000000000000000000000000000642434b474f560000000000000000000000000000000000000000000000000000

Deployed Bytecode

0x608060405260043610610180575f3560e01c806395d89b41116100d0578063be9a655511610089578063d5abeb0111610063578063d5abeb0114610516578063daea85c514610540578063dd62ed3e1461057c578063f2d5d56b146105b857610180565b8063be9a6555146104ba578063bf7e214f146104c4578063c47f0027146104ee57610180565b806395d89b41146103b45780639dc29fac146103de578063a0712d6814610406578063a9059cbb1461042e578063b753a98c1461046a578063bb35783b1461049257610180565b8063313ce5671161013d57806370a082311161011757806370a08231146102fc57806375f12b21146103385780637a9e5e4b146103625780638da5cb5b1461038a57610180565b8063313ce5671461028257806340c10f19146102ac57806342966c68146102d457610180565b806306fdde031461018457806307da68f5146101ae578063095ea7b3146101b857806313af4035146101f457806318160ddd1461021c57806323b872dd14610246575b5f80fd5b34801561018f575f80fd5b506101986105e0565b6040516101a5919061199d565b60405180910390f35b6101b661066c565b005b3480156101c3575f80fd5b506101de60048036038101906101d99190611a5b565b610779565b6040516101eb9190611ab3565b60405180910390f35b3480156101ff575f80fd5b5061021a60048036038101906102159190611acc565b6107a5565b005b348015610227575f80fd5b506102306108b8565b60405161023d9190611b06565b60405180910390f35b348015610251575f80fd5b5061026c60048036038101906102679190611b1f565b6108c0565b6040516102799190611ab3565b60405180910390f35b34801561028d575f80fd5b50610296610c38565b6040516102a39190611b06565b60405180910390f35b3480156102b7575f80fd5b506102d260048036038101906102cd9190611a5b565b610c3e565b005b3480156102df575f80fd5b506102fa60048036038101906102f59190611b6f565b610e20565b005b348015610307575f80fd5b50610322600480360381019061031d9190611acc565b610e2d565b60405161032f9190611b06565b60405180910390f35b348015610343575f80fd5b5061034c610e73565b6040516103599190611ab3565b60405180910390f35b34801561036d575f80fd5b5061038860048036038101906103839190611bd5565b610e86565b005b348015610395575f80fd5b5061039e610f99565b6040516103ab9190611c0f565b60405180910390f35b3480156103bf575f80fd5b506103c8610fbe565b6040516103d5919061199d565b60405180910390f35b3480156103e9575f80fd5b5061040460048036038101906103ff9190611a5b565b61104a565b005b348015610411575f80fd5b5061042c60048036038101906104279190611b6f565b611397565b005b348015610439575f80fd5b50610454600480360381019061044f9190611a5b565b6113a4565b6040516104619190611ab3565b60405180910390f35b348015610475575f80fd5b50610490600480360381019061048b9190611a5b565b6113b8565b005b34801561049d575f80fd5b506104b860048036038101906104b39190611b1f565b6113c8565b005b6104c26113d9565b005b3480156104cf575f80fd5b506104d86114e5565b6040516104e59190611c83565b60405180910390f35b3480156104f9575f80fd5b50610514600480360381019061050f9190611dc8565b61150a565b005b348015610521575f80fd5b5061052a611589565b6040516105379190611b06565b60405180910390f35b34801561054b575f80fd5b5061056660048036038101906105619190611acc565b6115ad565b6040516105739190611ab3565b60405180910390f35b348015610587575f80fd5b506105a2600480360381019061059d9190611e0f565b6115f8565b6040516105af9190611b06565b60405180910390f35b3480156105c3575f80fd5b506105de60048036038101906105d99190611a5b565b61167a565b005b600780546105ed90611e7a565b80601f016020809104026020016040519081016040528092919081815260200182805461061990611e7a565b80156106645780601f1061063b57610100808354040283529160200191610664565b820191905f5260205f20905b81548152906001019060200180831161064757829003601f168201915b505050505081565b610699335f357fffffffff000000000000000000000000000000000000000000000000000000001661168a565b6106d8576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016106cf90611ef4565b60405180910390fd5b5f806004359150602435905080823373ffffffffffffffffffffffffffffffffffffffff165f357fffffffff00000000000000000000000000000000000000000000000000000000167bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916345f3660405161075293929190611f4e565b60405180910390a46001600460146101000a81548160ff0219169083151502179055505050565b5f600460149054906101000a900460ff1615610793575f80fd5b61079d8383611826565b905092915050565b6107d2335f357fffffffff000000000000000000000000000000000000000000000000000000001661168a565b610811576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161080890611ef4565b60405180910390fd5b8060045f6101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555060045f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff167fce241d7ca1f669fee44b6fc00b8eba2df3bb514eed0f6f668f8f89096e81ed9460405160405180910390a250565b5f8054905090565b5f600460149054906101000a900460ff16156108da575f80fd5b3373ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff16141580156109ae57507fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff60025f8673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f3373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205414155b15610ab4578160025f8673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f3373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f2054610a379190611fab565b60025f8673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f3373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f20819055505b8160015f8673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f2054610afd9190611fab565b60015f8673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f20819055508160015f8573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f2054610b879190611fde565b60015f8573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f20819055508273ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef84604051610c259190611b06565b60405180910390a3600190509392505050565b60065481565b610c6b335f357fffffffff000000000000000000000000000000000000000000000000000000001661168a565b610caa576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610ca190611ef4565b60405180910390fd5b600460149054906101000a900460ff1615610cc3575f80fd5b7f000000000000000000000000000000000000000000108b2a2c28029094000000815f54610cf19190611fde565b1115610d32576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610d299061205b565b60405180910390fd5b8060015f8473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f2054610d7b9190611fde565b60015f8473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f2081905550805f54610dc99190611fde565b5f819055508173ffffffffffffffffffffffffffffffffffffffff167f0f6798a560793a54c3bcfe86a93cde1e73087d944c0ea20544137d412139688582604051610e149190611b06565b60405180910390a25050565b610e2a338261104a565b50565b5f60015f8373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f20549050919050565b600460149054906101000a900460ff1681565b610eb3335f357fffffffff000000000000000000000000000000000000000000000000000000001661168a565b610ef2576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610ee990611ef4565b60405180910390fd5b8060035f6101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555060035f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff167f1abebea81bfa2637f28358c371278fb15ede7ea8dd28d2e03b112ff6d936ada460405160405180910390a250565b60045f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b60058054610fcb90611e7a565b80601f0160208091040260200160405190810160405280929190818152602001828054610ff790611e7a565b80156110425780601f1061101957610100808354040283529160200191611042565b820191905f5260205f20905b81548152906001019060200180831161102557829003601f168201915b505050505081565b611077335f357fffffffff000000000000000000000000000000000000000000000000000000001661168a565b6110b6576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016110ad90611ef4565b60405180910390fd5b600460149054906101000a900460ff16156110cf575f80fd5b3373ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff16141580156111a357507fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff60025f8473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f3373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205414155b156112a9578060025f8473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f3373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205461122c9190611fab565b60025f8473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f3373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f20819055505b8060015f8473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f20546112f29190611fab565b60015f8473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f2081905550805f546113409190611fab565b5f819055508173ffffffffffffffffffffffffffffffffffffffff167fcc16f5dbb4873280815c1ee09dbd06736cffcc184412cf7a71a0fdb75d397ca58260405161138b9190611b06565b60405180910390a25050565b6113a13382610c3e565b50565b5f6113b03384846108c0565b905092915050565b6113c33383836108c0565b505050565b6113d38383836108c0565b50505050565b611406335f357fffffffff000000000000000000000000000000000000000000000000000000001661168a565b611445576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161143c90611ef4565b60405180910390fd5b5f806004359150602435905080823373ffffffffffffffffffffffffffffffffffffffff165f357fffffffff00000000000000000000000000000000000000000000000000000000167bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916345f366040516114bf93929190611f4e565b60405180910390a45f600460146101000a81548160ff0219169083151502179055505050565b60035f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b611537335f357fffffffff000000000000000000000000000000000000000000000000000000001661168a565b611576576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161156d90611ef4565b60405180910390fd5b8060079081611585919061220d565b5050565b7f000000000000000000000000000000000000000000108b2a2c2802909400000081565b5f600460149054906101000a900460ff16156115c7575f80fd5b6115f1827fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff611826565b9050919050565b5f60025f8473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f8373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f2054905092915050565b6116858233836108c0565b505050565b5f3073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff16036116c75760019050611820565b60045f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff16036117245760019050611820565b5f73ffffffffffffffffffffffffffffffffffffffff1660035f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1603611780575f9050611820565b60035f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663b70096138430856040518463ffffffff1660e01b81526004016117de93929190612316565b602060405180830381865afa1580156117f9573d5f803e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061181d9190612375565b90505b92915050565b5f8160025f3373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f8573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f20819055508273ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925846040516119019190611b06565b60405180910390a36001905092915050565b5f81519050919050565b5f82825260208201905092915050565b5f5b8381101561194a57808201518184015260208101905061192f565b5f8484015250505050565b5f601f19601f8301169050919050565b5f61196f82611913565b611979818561191d565b935061198981856020860161192d565b61199281611955565b840191505092915050565b5f6020820190508181035f8301526119b58184611965565b905092915050565b5f604051905090565b5f80fd5b5f80fd5b5f73ffffffffffffffffffffffffffffffffffffffff82169050919050565b5f6119f7826119ce565b9050919050565b611a07816119ed565b8114611a11575f80fd5b50565b5f81359050611a22816119fe565b92915050565b5f819050919050565b611a3a81611a28565b8114611a44575f80fd5b50565b5f81359050611a5581611a31565b92915050565b5f8060408385031215611a7157611a706119c6565b5b5f611a7e85828601611a14565b9250506020611a8f85828601611a47565b9150509250929050565b5f8115159050919050565b611aad81611a99565b82525050565b5f602082019050611ac65f830184611aa4565b92915050565b5f60208284031215611ae157611ae06119c6565b5b5f611aee84828501611a14565b91505092915050565b611b0081611a28565b82525050565b5f602082019050611b195f830184611af7565b92915050565b5f805f60608486031215611b3657611b356119c6565b5b5f611b4386828701611a14565b9350506020611b5486828701611a14565b9250506040611b6586828701611a47565b9150509250925092565b5f60208284031215611b8457611b836119c6565b5b5f611b9184828501611a47565b91505092915050565b5f611ba4826119ed565b9050919050565b611bb481611b9a565b8114611bbe575f80fd5b50565b5f81359050611bcf81611bab565b92915050565b5f60208284031215611bea57611be96119c6565b5b5f611bf784828501611bc1565b91505092915050565b611c09816119ed565b82525050565b5f602082019050611c225f830184611c00565b92915050565b5f819050919050565b5f611c4b611c46611c41846119ce565b611c28565b6119ce565b9050919050565b5f611c5c82611c31565b9050919050565b5f611c6d82611c52565b9050919050565b611c7d81611c63565b82525050565b5f602082019050611c965f830184611c74565b92915050565b5f80fd5b5f80fd5b7f4e487b71000000000000000000000000000000000000000000000000000000005f52604160045260245ffd5b611cda82611955565b810181811067ffffffffffffffff82111715611cf957611cf8611ca4565b5b80604052505050565b5f611d0b6119bd565b9050611d178282611cd1565b919050565b5f67ffffffffffffffff821115611d3657611d35611ca4565b5b611d3f82611955565b9050602081019050919050565b828183375f83830152505050565b5f611d6c611d6784611d1c565b611d02565b905082815260208101848484011115611d8857611d87611ca0565b5b611d93848285611d4c565b509392505050565b5f82601f830112611daf57611dae611c9c565b5b8135611dbf848260208601611d5a565b91505092915050565b5f60208284031215611ddd57611ddc6119c6565b5b5f82013567ffffffffffffffff811115611dfa57611df96119ca565b5b611e0684828501611d9b565b91505092915050565b5f8060408385031215611e2557611e246119c6565b5b5f611e3285828601611a14565b9250506020611e4385828601611a14565b9150509250929050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52602260045260245ffd5b5f6002820490506001821680611e9157607f821691505b602082108103611ea457611ea3611e4d565b5b50919050565b7f64732d617574682d756e617574686f72697a65640000000000000000000000005f82015250565b5f611ede60148361191d565b9150611ee982611eaa565b602082019050919050565b5f6020820190508181035f830152611f0b81611ed2565b9050919050565b5f82825260208201905092915050565b5f611f2d8385611f12565b9350611f3a838584611d4c565b611f4383611955565b840190509392505050565b5f604082019050611f615f830186611af7565b8181036020830152611f74818486611f22565b9050949350505050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52601160045260245ffd5b5f611fb582611a28565b9150611fc083611a28565b9250828203905081811115611fd857611fd7611f7e565b5b92915050565b5f611fe882611a28565b9150611ff383611a28565b925082820190508082111561200b5761200a611f7e565b5b92915050565b7f45786365656473206d617820737570706c7900000000000000000000000000005f82015250565b5f61204560128361191d565b915061205082612011565b602082019050919050565b5f6020820190508181035f83015261207281612039565b9050919050565b5f819050815f5260205f209050919050565b5f6020601f8301049050919050565b5f82821b905092915050565b5f600883026120d57fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff8261209a565b6120df868361209a565b95508019841693508086168417925050509392505050565b5f61211161210c61210784611a28565b611c28565b611a28565b9050919050565b5f819050919050565b61212a836120f7565b61213e61213682612118565b8484546120a6565b825550505050565b5f90565b612152612146565b61215d818484612121565b505050565b5b81811015612180576121755f8261214a565b600181019050612163565b5050565b601f8211156121c55761219681612079565b61219f8461208b565b810160208510156121ae578190505b6121c26121ba8561208b565b830182612162565b50505b505050565b5f82821c905092915050565b5f6121e55f19846008026121ca565b1980831691505092915050565b5f6121fd83836121d6565b9150826002028217905092915050565b61221682611913565b67ffffffffffffffff81111561222f5761222e611ca4565b5b6122398254611e7a565b612244828285612184565b5f60209050601f831160018114612275575f8415612263578287015190505b61226d85826121f2565b8655506122d4565b601f19841661228386612079565b5f5b828110156122aa57848901518255600182019150602085019450602081019050612285565b868310156122c757848901516122c3601f8916826121d6565b8355505b6001600288020188555050505b505050505050565b5f7fffffffff0000000000000000000000000000000000000000000000000000000082169050919050565b612310816122dc565b82525050565b5f6060820190506123295f830186611c00565b6123366020830185611c00565b6123436040830184612307565b949350505050565b61235481611a99565b811461235e575f80fd5b50565b5f8151905061236f8161234b565b92915050565b5f6020828403121561238a576123896119c6565b5b5f61239784828501612361565b9150509291505056fea264697066735822122006e83dab36cfd57d3ae571b5e41bae9a2638cc6a698d74bfa9971a6ef9ddda1764736f6c63430008150033

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.