ETH Price: $3,455.70 (+1.68%)

Token

Quantum Poverty Network (QPN)
 

Overview

Max Total Supply

25,250 QPN

Holders

186

Market

Onchain Market Cap

$0.00

Circulating Supply Market Cap

-

Other Info

Token Contract (WITH 9 Decimals)

Balance
21.208748817 QPN

Value
$0.00
0xa187a3129b9bb8741980427091b223718508536b
Loading...
Loading
Loading...
Loading
Loading...
Loading

Click here to update the token information / general information
# Exchange Pair Price  24H Volume % Volume

Contract Source Code Verified (Exact Match)

Contract Name:
QPN

Compiler Version
v0.8.19+commit.7dd6d404

Optimization Enabled:
No with 200 runs

Other Settings:
default evmVersion
File 1 of 1 : QPN.sol
// SPDX-License-Identifier: MIT
//
// https://twitter.com/QuantumPovN
// https://t.me/QuantumPN
// 

pragma solidity 0.8.19;

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

interface IERC20 {
    function totalSupply() external view returns (uint256);
    function balanceOf(address account) external view returns (uint256);
    function transfer(address recipient, uint256 amount) external returns (bool);
    function allowance(address owner, address spender) external view returns (uint256);
    function approve(address spender, uint256 amount) external returns (bool);
    function transferFrom(address sender, address recipient, uint256 amount) external returns (bool);
    event Transfer(address indexed from, address indexed to, uint256 value);
    event Approval(address indexed owner, address indexed spender, uint256 value);
}

library SafeMath {
    function add(uint256 a, uint256 b) internal pure returns (uint256) {
        uint256 c = a + b;
        require(c >= a, "SafeMath: addition overflow");
        return c;
    }

    function sub(uint256 a, uint256 b) internal pure returns (uint256) {
        return sub(a, b, "SafeMath: subtraction overflow");
    }

    function sub(uint256 a, uint256 b, string memory errorMessage) internal pure returns (uint256) {
        require(b <= a, errorMessage);
        uint256 c = a - b;
        return c;
    }

    function mul(uint256 a, uint256 b) internal pure returns (uint256) {
        if (a == 0) {
            return 0;
        }
        uint256 c = a * b;
        require(c / a == b, "SafeMath: multiplication overflow");
        return c;
    }

    function div(uint256 a, uint256 b) internal pure returns (uint256) {
        return div(a, b, "SafeMath: division by zero");
    }

    function div(uint256 a, uint256 b, string memory errorMessage) internal pure returns (uint256) {
        require(b > 0, errorMessage);
        uint256 c = a / b;
        return c;
    }

}

contract Ownable is Context {
    address private _owner;
    event OwnershipTransferred(address indexed previousOwner, address indexed newOwner);

    constructor () {
        address msgSender = _msgSender();
        _owner = msgSender;
        emit OwnershipTransferred(address(0), msgSender);
    }

    function owner() public view returns (address) {
        return _owner;
    }

    modifier onlyOwner() {
        require(_owner == _msgSender(), "Ownable: caller is not the owner");
        _;
    }

    function renounceOwnership() public virtual onlyOwner {
        emit OwnershipTransferred(_owner, address(0));
        _owner = address(0);
    }

}

interface IUniswapV2Factory {
    function createPair(address tokenA, address tokenB) external returns (address pair);
}

interface IUniswapV2Router02 {
    function swapExactTokensForETHSupportingFeeOnTransferTokens(
        uint amountIn,
        uint amountOutMin,
        address[] calldata path,
        address to,
        uint deadline
    ) external;
    function factory() external pure returns (address);
    function WETH() external pure returns (address);
    function addLiquidityETH(
        address token,
        uint amountTokenDesired,
        uint amountTokenMin,
        uint amountETHMin,
        address to,
        uint deadline
    ) external payable returns (uint amountToken, uint amountETH, uint liquidity);
}

contract QPN is Context, IERC20, Ownable {
    using SafeMath for uint256;
    mapping (address => uint256) private _balances;
    mapping (address => mapping (address => uint256)) private _allowances;
    mapping (address => bool) private _isExcludedFromFee;
    address payable private _taxWallet;
    uint256 firstBlock;

    uint256 private _initialBuyTax=20;
    uint256 private _initialSellTax=40;
    uint256 private _finalBuyTax=0;
    uint256 private _finalSellTax=0;
    uint256 private _reduceBuyTaxAt=30;
    uint256 private _reduceSellTaxAt=30;
    uint256 private _preventSwapBefore=20;
    uint256 private _buyCount=0;

    uint8 private constant _decimals = 9;
    uint256 private constant _tTotal = 25_250 * 10**_decimals;
    string private constant _name = unicode"Quantum Poverty Network";
    string private constant _symbol = unicode"QPN";
    uint256 public _maxTxAmount =   505 * 10**_decimals;
    uint256 public _maxWalletSize = 505 * 10**_decimals;
    uint256 public _taxSwapThreshold= 0 * 10**_decimals;
    uint256 public _maxTaxSwap= 250 * 10**_decimals;

    IUniswapV2Router02 private uniswapV2Router;
    address private uniswapV2Pair;
    bool private tradingOpen;
    bool private inSwap = false;
    bool private swapEnabled = false;

    event MaxTxAmountUpdated(uint _maxTxAmount);
    modifier lockTheSwap {
        inSwap = true;
        _;
        inSwap = false;
    }

    constructor () {

        _taxWallet = payable(_msgSender());
        _balances[_msgSender()] = _tTotal;
        _isExcludedFromFee[owner()] = true;
        _isExcludedFromFee[address(this)] = true;
        _isExcludedFromFee[_taxWallet] = true;
        
        emit Transfer(address(0), _msgSender(), _tTotal);
    }

    function name() public pure returns (string memory) {
        return _name;
    }

    function symbol() public pure returns (string memory) {
        return _symbol;
    }

    function decimals() public pure returns (uint8) {
        return _decimals;
    }

    function totalSupply() public pure override returns (uint256) {
        return _tTotal;
    }

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

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

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

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

    function transferFrom(address sender, address recipient, uint256 amount) public override returns (bool) {
        _transfer(sender, recipient, amount);
        _approve(sender, _msgSender(), _allowances[sender][_msgSender()].sub(amount, "ERC20: transfer amount exceeds allowance"));
        return true;
    }

    function _approve(address owner, address spender, uint256 amount) private {
        require(owner != address(0), "ERC20: approve from the zero address");
        require(spender != address(0), "ERC20: approve to the zero address");
        _allowances[owner][spender] = amount;
        emit Approval(owner, spender, amount);
    }

    function _transfer(address from, address to, uint256 amount) private {
        require(from != address(0), "ERC20: transfer from the zero address");
        require(to != address(0), "ERC20: transfer to the zero address");
        require(amount > 0, "Transfer amount must be greater than zero");
        uint256 taxAmount=0;
        if (from != owner() && to != owner()) {
            taxAmount = amount.mul((_buyCount>_reduceBuyTaxAt)?_finalBuyTax:_initialBuyTax).div(100);

            if (from == uniswapV2Pair && to != address(uniswapV2Router) && ! _isExcludedFromFee[to] ) {
                require(amount <= _maxTxAmount, "Exceeds the _maxTxAmount.");
                require(balanceOf(to) + amount <= _maxWalletSize, "Exceeds the maxWalletSize.");

                if (firstBlock + 3  > block.number) {
                    require(!isContract(to));
                }
                _buyCount++;
            }

            if (to != uniswapV2Pair && ! _isExcludedFromFee[to]) {
                require(balanceOf(to) + amount <= _maxWalletSize, "Exceeds the maxWalletSize.");
            }

            if(to == uniswapV2Pair && from!= address(this) ){
                taxAmount = amount.mul((_buyCount>_reduceSellTaxAt)?_finalSellTax:_initialSellTax).div(100);
            }

            uint256 contractTokenBalance = balanceOf(address(this));
            if (!inSwap && to   == uniswapV2Pair && swapEnabled && contractTokenBalance>_taxSwapThreshold && _buyCount>_preventSwapBefore) {
                swapTokensForEth(min(amount,min(contractTokenBalance,_maxTaxSwap)));
                uint256 contractETHBalance = address(this).balance;
                if(contractETHBalance > 0) {
                    sendETHToFee(address(this).balance);
                }
            }
        }

        if(taxAmount>0){
          _balances[address(this)]=_balances[address(this)].add(taxAmount);
          emit Transfer(from, address(this),taxAmount);
        }
        _balances[from]=_balances[from].sub(amount);
        _balances[to]=_balances[to].add(amount.sub(taxAmount));
        emit Transfer(from, to, amount.sub(taxAmount));
    }


    function min(uint256 a, uint256 b) private pure returns (uint256){
      return (a>b)?b:a;
    }

    function isContract(address account) private view returns (bool) {
        uint256 size;
        assembly {
            size := extcodesize(account)
        }
        return size > 0;
    }

    function swapTokensForEth(uint256 tokenAmount) private lockTheSwap {
        address[] memory path = new address[](2);
        path[0] = address(this);
        path[1] = uniswapV2Router.WETH();
        _approve(address(this), address(uniswapV2Router), tokenAmount);
        uniswapV2Router.swapExactTokensForETHSupportingFeeOnTransferTokens(
            tokenAmount,
            0,
            path,
            address(this),
            block.timestamp
        );
    }

    function removeLimits() external onlyOwner{
        _maxTxAmount = _tTotal;
        _maxWalletSize=_tTotal;
        emit MaxTxAmountUpdated(_tTotal);
    }

    function sendETHToFee(uint256 amount) private {
        _taxWallet.transfer(amount);
    }

    function openTrading() external onlyOwner() {
        require(!tradingOpen,"trading is already open");
        uniswapV2Router = IUniswapV2Router02(0x7a250d5630B4cF539739dF2C5dAcb4c659F2488D);
        _approve(address(this), address(uniswapV2Router), _tTotal);
        uniswapV2Pair = IUniswapV2Factory(uniswapV2Router.factory()).createPair(address(this), uniswapV2Router.WETH());
        uniswapV2Router.addLiquidityETH{value: address(this).balance}(address(this),balanceOf(address(this)),0,0,owner(),block.timestamp);
        IERC20(uniswapV2Pair).approve(address(uniswapV2Router), type(uint).max);
        swapEnabled = true;
        tradingOpen = true;
        firstBlock = block.number;
    }

    receive() external payable {}
}

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

Contract Security Audit

Contract ABI

[{"inputs":[],"stateMutability":"nonpayable","type":"constructor"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"owner","type":"address"},{"indexed":true,"internalType":"address","name":"spender","type":"address"},{"indexed":false,"internalType":"uint256","name":"value","type":"uint256"}],"name":"Approval","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"uint256","name":"_maxTxAmount","type":"uint256"}],"name":"MaxTxAmountUpdated","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"previousOwner","type":"address"},{"indexed":true,"internalType":"address","name":"newOwner","type":"address"}],"name":"OwnershipTransferred","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"from","type":"address"},{"indexed":true,"internalType":"address","name":"to","type":"address"},{"indexed":false,"internalType":"uint256","name":"value","type":"uint256"}],"name":"Transfer","type":"event"},{"inputs":[],"name":"_maxTaxSwap","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"_maxTxAmount","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"_maxWalletSize","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"_taxSwapThreshold","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"owner","type":"address"},{"internalType":"address","name":"spender","type":"address"}],"name":"allowance","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"spender","type":"address"},{"internalType":"uint256","name":"amount","type":"uint256"}],"name":"approve","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"account","type":"address"}],"name":"balanceOf","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"decimals","outputs":[{"internalType":"uint8","name":"","type":"uint8"}],"stateMutability":"pure","type":"function"},{"inputs":[],"name":"name","outputs":[{"internalType":"string","name":"","type":"string"}],"stateMutability":"pure","type":"function"},{"inputs":[],"name":"openTrading","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"owner","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"removeLimits","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"renounceOwnership","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"symbol","outputs":[{"internalType":"string","name":"","type":"string"}],"stateMutability":"pure","type":"function"},{"inputs":[],"name":"totalSupply","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"pure","type":"function"},{"inputs":[{"internalType":"address","name":"recipient","type":"address"},{"internalType":"uint256","name":"amount","type":"uint256"}],"name":"transfer","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"sender","type":"address"},{"internalType":"address","name":"recipient","type":"address"},{"internalType":"uint256","name":"amount","type":"uint256"}],"name":"transferFrom","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"stateMutability":"payable","type":"receive"}]

60806040526014600655602860075560006008556000600955601e600a55601e600b556014600c556000600d556009600a6200003c919062000606565b6101f96200004b919062000657565b600e556009600a6200005e919062000606565b6101f96200006d919062000657565b600f556009600a62000080919062000606565b60006200008e919062000657565b6010556009600a620000a1919062000606565b60fa620000af919062000657565b6011556000601360156101000a81548160ff0219169083151502179055506000601360166101000a81548160ff021916908315150217905550348015620000f557600080fd5b506000620001086200043b60201b60201c565b9050806000806101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055508073ffffffffffffffffffffffffffffffffffffffff16600073ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a350620001b66200043b60201b60201c565b600460006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055506009600a62000206919062000606565b6162a262000215919062000657565b60016000620002296200043b60201b60201c565b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055506001600360006200027d6200044360201b60201c565b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff0219169083151502179055506001600360003073ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff021916908315150217905550600160036000600460009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff021916908315150217905550620003b06200043b60201b60201c565b73ffffffffffffffffffffffffffffffffffffffff16600073ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef6009600a6200040f919062000606565b6162a26200041e919062000657565b6040516200042d9190620006b3565b60405180910390a3620006d0565b600033905090565b60008060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16905090565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b60008160011c9050919050565b6000808291508390505b6001851115620004fa57808604811115620004d257620004d16200046c565b5b6001851615620004e25780820291505b8081029050620004f2856200049b565b9450620004b2565b94509492505050565b600082620005155760019050620005e8565b81620005255760009050620005e8565b81600181146200053e576002811462000549576200057f565b6001915050620005e8565b60ff8411156200055e576200055d6200046c565b5b8360020a9150848211156200057857620005776200046c565b5b50620005e8565b5060208310610133831016604e8410600b8410161715620005b95782820a905083811115620005b357620005b26200046c565b5b620005e8565b620005c88484846001620004a8565b92509050818404811115620005e257620005e16200046c565b5b81810290505b9392505050565b6000819050919050565b600060ff82169050919050565b60006200061382620005ef565b91506200062083620005f9565b92506200064f7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff848462000503565b905092915050565b60006200066482620005ef565b91506200067183620005ef565b92508282026200068181620005ef565b915082820484148315176200069b576200069a6200046c565b5b5092915050565b620006ad81620005ef565b82525050565b6000602082019050620006ca6000830184620006a2565b92915050565b612e3e80620006e06000396000f3fe6080604052600436106101025760003560e01c8063751039fc1161009557806395d89b411161006457806395d89b4114610320578063a9059cbb1461034b578063bf474bed14610388578063c9567bf9146103b3578063dd62ed3e146103ca57610109565b8063751039fc146102885780637d1db4a51461029f5780638da5cb5b146102ca5780638f9a55c0146102f557610109565b806323b872dd116100d157806323b872dd146101cc578063313ce5671461020957806370a0823114610234578063715018a61461027157610109565b806306fdde031461010e578063095ea7b3146101395780630faee56f1461017657806318160ddd146101a157610109565b3661010957005b600080fd5b34801561011a57600080fd5b50610123610407565b6040516101309190611f6c565b60405180910390f35b34801561014557600080fd5b50610160600480360381019061015b9190612027565b610444565b60405161016d9190612082565b60405180910390f35b34801561018257600080fd5b5061018b610462565b60405161019891906120ac565b60405180910390f35b3480156101ad57600080fd5b506101b6610468565b6040516101c391906120ac565b60405180910390f35b3480156101d857600080fd5b506101f360048036038101906101ee91906120c7565b61048a565b6040516102009190612082565b60405180910390f35b34801561021557600080fd5b5061021e610563565b60405161022b9190612136565b60405180910390f35b34801561024057600080fd5b5061025b60048036038101906102569190612151565b61056c565b60405161026891906120ac565b60405180910390f35b34801561027d57600080fd5b506102866105b5565b005b34801561029457600080fd5b5061029d610708565b005b3480156102ab57600080fd5b506102b4610832565b6040516102c191906120ac565b60405180910390f35b3480156102d657600080fd5b506102df610838565b6040516102ec919061218d565b60405180910390f35b34801561030157600080fd5b5061030a610861565b60405161031791906120ac565b60405180910390f35b34801561032c57600080fd5b50610335610867565b6040516103429190611f6c565b60405180910390f35b34801561035757600080fd5b50610372600480360381019061036d9190612027565b6108a4565b60405161037f9190612082565b60405180910390f35b34801561039457600080fd5b5061039d6108c2565b6040516103aa91906120ac565b60405180910390f35b3480156103bf57600080fd5b506103c86108c8565b005b3480156103d657600080fd5b506103f160048036038101906103ec91906121a8565b610e05565b6040516103fe91906120ac565b60405180910390f35b60606040518060400160405280601781526020017f5175616e74756d20506f7665727479204e6574776f726b000000000000000000815250905090565b6000610458610451610e8c565b8484610e94565b6001905092915050565b60115481565b60006009600a610478919061234a565b6162a26104859190612395565b905090565b600061049784848461105d565b610558846104a3610e8c565b61055385604051806060016040528060288152602001612de160289139600260008b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206000610509610e8c565b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020546119989092919063ffffffff16565b610e94565b600190509392505050565b60006009905090565b6000600160008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020549050919050565b6105bd610e8c565b73ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff161461064a576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161064190612423565b60405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a360008060006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550565b610710610e8c565b73ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff161461079d576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161079490612423565b60405180910390fd5b6009600a6107ab919061234a565b6162a26107b89190612395565b600e819055506009600a6107cc919061234a565b6162a26107d99190612395565b600f819055507f947f344d56e1e8c70dc492fb94c4ddddd490c016aab685f5e7e47b2e85cb44cf6009600a61080e919061234a565b6162a261081b9190612395565b60405161082891906120ac565b60405180910390a1565b600e5481565b60008060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16905090565b600f5481565b60606040518060400160405280600381526020017f51504e0000000000000000000000000000000000000000000000000000000000815250905090565b60006108b86108b1610e8c565b848461105d565b6001905092915050565b60105481565b6108d0610e8c565b73ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff161461095d576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161095490612423565b60405180910390fd5b601360149054906101000a900460ff16156109ad576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016109a49061248f565b60405180910390fd5b737a250d5630b4cf539739df2c5dacb4c659f2488d601260006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550610a4930601260009054906101000a900473ffffffffffffffffffffffffffffffffffffffff166009600a610a37919061234a565b6162a2610a449190612395565b610e94565b601260009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663c45a01556040518163ffffffff1660e01b8152600401602060405180830381865afa158015610ab6573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610ada91906124c4565b73ffffffffffffffffffffffffffffffffffffffff1663c9c6539630601260009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663ad5c46486040518163ffffffff1660e01b8152600401602060405180830381865afa158015610b63573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610b8791906124c4565b6040518363ffffffff1660e01b8152600401610ba49291906124f1565b6020604051808303816000875af1158015610bc3573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610be791906124c4565b601360006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550601260009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663f305d7194730610c703061056c565b600080610c7b610838565b426040518863ffffffff1660e01b8152600401610c9d9695949392919061255f565b60606040518083038185885af1158015610cbb573d6000803e3d6000fd5b50505050506040513d601f19601f82011682018060405250810190610ce091906125d5565b505050601360009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663095ea7b3601260009054906101000a900473ffffffffffffffffffffffffffffffffffffffff167fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff6040518363ffffffff1660e01b8152600401610d82929190612628565b6020604051808303816000875af1158015610da1573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610dc5919061267d565b506001601360166101000a81548160ff0219169083151502179055506001601360146101000a81548160ff02191690831515021790555043600581905550565b6000600260008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054905092915050565b600033905090565b600073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1603610f03576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610efa9061271c565b60405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff1603610f72576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610f69906127ae565b60405180910390fd5b80600260008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508173ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b9258360405161105091906120ac565b60405180910390a3505050565b600073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff16036110cc576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016110c390612840565b60405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff160361113b576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611132906128d2565b60405180910390fd5b6000811161117e576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161117590612964565b60405180910390fd5b6000611188610838565b73ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff16141580156111f657506111c6610838565b73ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1614155b156116db576112376064611229600a54600d54116112165760065461121a565b6008545b856119fc90919063ffffffff16565b611a7690919063ffffffff16565b9050601360009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff161480156112e45750601260009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1614155b801561133a5750600360008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff16155b1561141f57600e54821115611384576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161137b906129d0565b60405180910390fd5b600f54826113918561056c565b61139b91906129f0565b11156113dc576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016113d390612a70565b60405180910390fd5b4360036005546113ec91906129f0565b1115611406576113fb83611ac0565b1561140557600080fd5b5b600d600081548092919061141990612a90565b91905055505b601360009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff16141580156114c75750600360008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff16155b1561152557600f54826114d98561056c565b6114e391906129f0565b1115611524576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161151b90612a70565b60405180910390fd5b5b601360009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff161480156115ae57503073ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff1614155b156115f2576115ef60646115e1600b54600d54116115ce576007546115d2565b6009545b856119fc90919063ffffffff16565b611a7690919063ffffffff16565b90505b60006115fd3061056c565b9050601360159054906101000a900460ff161580156116695750601360009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff16145b80156116815750601360169054906101000a900460ff165b801561168e575060105481115b801561169d5750600c54600d54115b156116d9576116bf6116ba846116b584601154611ad3565b611ad3565b611aec565b600047905060008111156116d7576116d647611d65565b5b505b505b60008111156117df5761173681600160003073ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054611dd190919063ffffffff16565b600160003073ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055503073ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef836040516117d691906120ac565b60405180910390a35b61183182600160008773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054611e2f90919063ffffffff16565b600160008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055506118d861188a8284611e2f90919063ffffffff16565b600160008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054611dd190919063ffffffff16565b600160008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508273ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef61197d8486611e2f90919063ffffffff16565b60405161198a91906120ac565b60405180910390a350505050565b60008383111582906119e0576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016119d79190611f6c565b60405180910390fd5b50600083856119ef9190612ad8565b9050809150509392505050565b6000808303611a0e5760009050611a70565b60008284611a1c9190612395565b9050828482611a2b9190612b3b565b14611a6b576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611a6290612bde565b60405180910390fd5b809150505b92915050565b6000611ab883836040518060400160405280601a81526020017f536166654d6174683a206469766973696f6e206279207a65726f000000000000815250611e79565b905092915050565b600080823b905060008111915050919050565b6000818311611ae25782611ae4565b815b905092915050565b6001601360156101000a81548160ff0219169083151502179055506000600267ffffffffffffffff811115611b2457611b23612bfe565b5b604051908082528060200260200182016040528015611b525781602001602082028036833780820191505090505b5090503081600081518110611b6a57611b69612c2d565b5b602002602001019073ffffffffffffffffffffffffffffffffffffffff16908173ffffffffffffffffffffffffffffffffffffffff1681525050601260009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663ad5c46486040518163ffffffff1660e01b8152600401602060405180830381865afa158015611c11573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611c3591906124c4565b81600181518110611c4957611c48612c2d565b5b602002602001019073ffffffffffffffffffffffffffffffffffffffff16908173ffffffffffffffffffffffffffffffffffffffff1681525050611cb030601260009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1684610e94565b601260009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663791ac9478360008430426040518663ffffffff1660e01b8152600401611d14959493929190612d1a565b600060405180830381600087803b158015611d2e57600080fd5b505af1158015611d42573d6000803e3d6000fd5b50505050506000601360156101000a81548160ff02191690831515021790555050565b600460009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166108fc829081150290604051600060405180830381858888f19350505050158015611dcd573d6000803e3d6000fd5b5050565b6000808284611de091906129f0565b905083811015611e25576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611e1c90612dc0565b60405180910390fd5b8091505092915050565b6000611e7183836040518060400160405280601e81526020017f536166654d6174683a207375627472616374696f6e206f766572666c6f770000815250611998565b905092915050565b60008083118290611ec0576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611eb79190611f6c565b60405180910390fd5b5060008385611ecf9190612b3b565b9050809150509392505050565b600081519050919050565b600082825260208201905092915050565b60005b83811015611f16578082015181840152602081019050611efb565b60008484015250505050565b6000601f19601f8301169050919050565b6000611f3e82611edc565b611f488185611ee7565b9350611f58818560208601611ef8565b611f6181611f22565b840191505092915050565b60006020820190508181036000830152611f868184611f33565b905092915050565b600080fd5b600073ffffffffffffffffffffffffffffffffffffffff82169050919050565b6000611fbe82611f93565b9050919050565b611fce81611fb3565b8114611fd957600080fd5b50565b600081359050611feb81611fc5565b92915050565b6000819050919050565b61200481611ff1565b811461200f57600080fd5b50565b60008135905061202181611ffb565b92915050565b6000806040838503121561203e5761203d611f8e565b5b600061204c85828601611fdc565b925050602061205d85828601612012565b9150509250929050565b60008115159050919050565b61207c81612067565b82525050565b60006020820190506120976000830184612073565b92915050565b6120a681611ff1565b82525050565b60006020820190506120c1600083018461209d565b92915050565b6000806000606084860312156120e0576120df611f8e565b5b60006120ee86828701611fdc565b93505060206120ff86828701611fdc565b925050604061211086828701612012565b9150509250925092565b600060ff82169050919050565b6121308161211a565b82525050565b600060208201905061214b6000830184612127565b92915050565b60006020828403121561216757612166611f8e565b5b600061217584828501611fdc565b91505092915050565b61218781611fb3565b82525050565b60006020820190506121a2600083018461217e565b92915050565b600080604083850312156121bf576121be611f8e565b5b60006121cd85828601611fdc565b92505060206121de85828601611fdc565b9150509250929050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b60008160011c9050919050565b6000808291508390505b600185111561226e5780860481111561224a576122496121e8565b5b60018516156122595780820291505b808102905061226785612217565b945061222e565b94509492505050565b6000826122875760019050612343565b816122955760009050612343565b81600181146122ab57600281146122b5576122e4565b6001915050612343565b60ff8411156122c7576122c66121e8565b5b8360020a9150848211156122de576122dd6121e8565b5b50612343565b5060208310610133831016604e8410600b84101617156123195782820a905083811115612314576123136121e8565b5b612343565b6123268484846001612224565b9250905081840481111561233d5761233c6121e8565b5b81810290505b9392505050565b600061235582611ff1565b91506123608361211a565b925061238d7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff8484612277565b905092915050565b60006123a082611ff1565b91506123ab83611ff1565b92508282026123b981611ff1565b915082820484148315176123d0576123cf6121e8565b5b5092915050565b7f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572600082015250565b600061240d602083611ee7565b9150612418826123d7565b602082019050919050565b6000602082019050818103600083015261243c81612400565b9050919050565b7f74726164696e6720697320616c7265616479206f70656e000000000000000000600082015250565b6000612479601783611ee7565b915061248482612443565b602082019050919050565b600060208201905081810360008301526124a88161246c565b9050919050565b6000815190506124be81611fc5565b92915050565b6000602082840312156124da576124d9611f8e565b5b60006124e8848285016124af565b91505092915050565b6000604082019050612506600083018561217e565b612513602083018461217e565b9392505050565b6000819050919050565b6000819050919050565b600061254961254461253f8461251a565b612524565b611ff1565b9050919050565b6125598161252e565b82525050565b600060c082019050612574600083018961217e565b612581602083018861209d565b61258e6040830187612550565b61259b6060830186612550565b6125a8608083018561217e565b6125b560a083018461209d565b979650505050505050565b6000815190506125cf81611ffb565b92915050565b6000806000606084860312156125ee576125ed611f8e565b5b60006125fc868287016125c0565b935050602061260d868287016125c0565b925050604061261e868287016125c0565b9150509250925092565b600060408201905061263d600083018561217e565b61264a602083018461209d565b9392505050565b61265a81612067565b811461266557600080fd5b50565b60008151905061267781612651565b92915050565b60006020828403121561269357612692611f8e565b5b60006126a184828501612668565b91505092915050565b7f45524332303a20617070726f76652066726f6d20746865207a65726f2061646460008201527f7265737300000000000000000000000000000000000000000000000000000000602082015250565b6000612706602483611ee7565b9150612711826126aa565b604082019050919050565b60006020820190508181036000830152612735816126f9565b9050919050565b7f45524332303a20617070726f766520746f20746865207a65726f20616464726560008201527f7373000000000000000000000000000000000000000000000000000000000000602082015250565b6000612798602283611ee7565b91506127a38261273c565b604082019050919050565b600060208201905081810360008301526127c78161278b565b9050919050565b7f45524332303a207472616e736665722066726f6d20746865207a65726f20616460008201527f6472657373000000000000000000000000000000000000000000000000000000602082015250565b600061282a602583611ee7565b9150612835826127ce565b604082019050919050565b600060208201905081810360008301526128598161281d565b9050919050565b7f45524332303a207472616e7366657220746f20746865207a65726f206164647260008201527f6573730000000000000000000000000000000000000000000000000000000000602082015250565b60006128bc602383611ee7565b91506128c782612860565b604082019050919050565b600060208201905081810360008301526128eb816128af565b9050919050565b7f5472616e7366657220616d6f756e74206d75737420626520677265617465722060008201527f7468616e207a65726f0000000000000000000000000000000000000000000000602082015250565b600061294e602983611ee7565b9150612959826128f2565b604082019050919050565b6000602082019050818103600083015261297d81612941565b9050919050565b7f4578636565647320746865205f6d61785478416d6f756e742e00000000000000600082015250565b60006129ba601983611ee7565b91506129c582612984565b602082019050919050565b600060208201905081810360008301526129e9816129ad565b9050919050565b60006129fb82611ff1565b9150612a0683611ff1565b9250828201905080821115612a1e57612a1d6121e8565b5b92915050565b7f4578636565647320746865206d617857616c6c657453697a652e000000000000600082015250565b6000612a5a601a83611ee7565b9150612a6582612a24565b602082019050919050565b60006020820190508181036000830152612a8981612a4d565b9050919050565b6000612a9b82611ff1565b91507fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff8203612acd57612acc6121e8565b5b600182019050919050565b6000612ae382611ff1565b9150612aee83611ff1565b9250828203905081811115612b0657612b056121e8565b5b92915050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601260045260246000fd5b6000612b4682611ff1565b9150612b5183611ff1565b925082612b6157612b60612b0c565b5b828204905092915050565b7f536166654d6174683a206d756c7469706c69636174696f6e206f766572666c6f60008201527f7700000000000000000000000000000000000000000000000000000000000000602082015250565b6000612bc8602183611ee7565b9150612bd382612b6c565b604082019050919050565b60006020820190508181036000830152612bf781612bbb565b9050919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b600081519050919050565b600082825260208201905092915050565b6000819050602082019050919050565b612c9181611fb3565b82525050565b6000612ca38383612c88565b60208301905092915050565b6000602082019050919050565b6000612cc782612c5c565b612cd18185612c67565b9350612cdc83612c78565b8060005b83811015612d0d578151612cf48882612c97565b9750612cff83612caf565b925050600181019050612ce0565b5085935050505092915050565b600060a082019050612d2f600083018861209d565b612d3c6020830187612550565b8181036040830152612d4e8186612cbc565b9050612d5d606083018561217e565b612d6a608083018461209d565b9695505050505050565b7f536166654d6174683a206164646974696f6e206f766572666c6f770000000000600082015250565b6000612daa601b83611ee7565b9150612db582612d74565b602082019050919050565b60006020820190508181036000830152612dd981612d9d565b905091905056fe45524332303a207472616e7366657220616d6f756e74206578636565647320616c6c6f77616e6365a26469706673582212200f55a2eafae6bc97d9654ecfbcdab1ba0cbb85a5e78f0a35dfeda62e274c0c5764736f6c63430008130033

Deployed Bytecode

0x6080604052600436106101025760003560e01c8063751039fc1161009557806395d89b411161006457806395d89b4114610320578063a9059cbb1461034b578063bf474bed14610388578063c9567bf9146103b3578063dd62ed3e146103ca57610109565b8063751039fc146102885780637d1db4a51461029f5780638da5cb5b146102ca5780638f9a55c0146102f557610109565b806323b872dd116100d157806323b872dd146101cc578063313ce5671461020957806370a0823114610234578063715018a61461027157610109565b806306fdde031461010e578063095ea7b3146101395780630faee56f1461017657806318160ddd146101a157610109565b3661010957005b600080fd5b34801561011a57600080fd5b50610123610407565b6040516101309190611f6c565b60405180910390f35b34801561014557600080fd5b50610160600480360381019061015b9190612027565b610444565b60405161016d9190612082565b60405180910390f35b34801561018257600080fd5b5061018b610462565b60405161019891906120ac565b60405180910390f35b3480156101ad57600080fd5b506101b6610468565b6040516101c391906120ac565b60405180910390f35b3480156101d857600080fd5b506101f360048036038101906101ee91906120c7565b61048a565b6040516102009190612082565b60405180910390f35b34801561021557600080fd5b5061021e610563565b60405161022b9190612136565b60405180910390f35b34801561024057600080fd5b5061025b60048036038101906102569190612151565b61056c565b60405161026891906120ac565b60405180910390f35b34801561027d57600080fd5b506102866105b5565b005b34801561029457600080fd5b5061029d610708565b005b3480156102ab57600080fd5b506102b4610832565b6040516102c191906120ac565b60405180910390f35b3480156102d657600080fd5b506102df610838565b6040516102ec919061218d565b60405180910390f35b34801561030157600080fd5b5061030a610861565b60405161031791906120ac565b60405180910390f35b34801561032c57600080fd5b50610335610867565b6040516103429190611f6c565b60405180910390f35b34801561035757600080fd5b50610372600480360381019061036d9190612027565b6108a4565b60405161037f9190612082565b60405180910390f35b34801561039457600080fd5b5061039d6108c2565b6040516103aa91906120ac565b60405180910390f35b3480156103bf57600080fd5b506103c86108c8565b005b3480156103d657600080fd5b506103f160048036038101906103ec91906121a8565b610e05565b6040516103fe91906120ac565b60405180910390f35b60606040518060400160405280601781526020017f5175616e74756d20506f7665727479204e6574776f726b000000000000000000815250905090565b6000610458610451610e8c565b8484610e94565b6001905092915050565b60115481565b60006009600a610478919061234a565b6162a26104859190612395565b905090565b600061049784848461105d565b610558846104a3610e8c565b61055385604051806060016040528060288152602001612de160289139600260008b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206000610509610e8c565b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020546119989092919063ffffffff16565b610e94565b600190509392505050565b60006009905090565b6000600160008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020549050919050565b6105bd610e8c565b73ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff161461064a576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161064190612423565b60405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a360008060006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550565b610710610e8c565b73ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff161461079d576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161079490612423565b60405180910390fd5b6009600a6107ab919061234a565b6162a26107b89190612395565b600e819055506009600a6107cc919061234a565b6162a26107d99190612395565b600f819055507f947f344d56e1e8c70dc492fb94c4ddddd490c016aab685f5e7e47b2e85cb44cf6009600a61080e919061234a565b6162a261081b9190612395565b60405161082891906120ac565b60405180910390a1565b600e5481565b60008060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16905090565b600f5481565b60606040518060400160405280600381526020017f51504e0000000000000000000000000000000000000000000000000000000000815250905090565b60006108b86108b1610e8c565b848461105d565b6001905092915050565b60105481565b6108d0610e8c565b73ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff161461095d576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161095490612423565b60405180910390fd5b601360149054906101000a900460ff16156109ad576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016109a49061248f565b60405180910390fd5b737a250d5630b4cf539739df2c5dacb4c659f2488d601260006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550610a4930601260009054906101000a900473ffffffffffffffffffffffffffffffffffffffff166009600a610a37919061234a565b6162a2610a449190612395565b610e94565b601260009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663c45a01556040518163ffffffff1660e01b8152600401602060405180830381865afa158015610ab6573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610ada91906124c4565b73ffffffffffffffffffffffffffffffffffffffff1663c9c6539630601260009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663ad5c46486040518163ffffffff1660e01b8152600401602060405180830381865afa158015610b63573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610b8791906124c4565b6040518363ffffffff1660e01b8152600401610ba49291906124f1565b6020604051808303816000875af1158015610bc3573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610be791906124c4565b601360006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550601260009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663f305d7194730610c703061056c565b600080610c7b610838565b426040518863ffffffff1660e01b8152600401610c9d9695949392919061255f565b60606040518083038185885af1158015610cbb573d6000803e3d6000fd5b50505050506040513d601f19601f82011682018060405250810190610ce091906125d5565b505050601360009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663095ea7b3601260009054906101000a900473ffffffffffffffffffffffffffffffffffffffff167fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff6040518363ffffffff1660e01b8152600401610d82929190612628565b6020604051808303816000875af1158015610da1573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610dc5919061267d565b506001601360166101000a81548160ff0219169083151502179055506001601360146101000a81548160ff02191690831515021790555043600581905550565b6000600260008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054905092915050565b600033905090565b600073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1603610f03576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610efa9061271c565b60405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff1603610f72576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610f69906127ae565b60405180910390fd5b80600260008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508173ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b9258360405161105091906120ac565b60405180910390a3505050565b600073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff16036110cc576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016110c390612840565b60405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff160361113b576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611132906128d2565b60405180910390fd5b6000811161117e576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161117590612964565b60405180910390fd5b6000611188610838565b73ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff16141580156111f657506111c6610838565b73ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1614155b156116db576112376064611229600a54600d54116112165760065461121a565b6008545b856119fc90919063ffffffff16565b611a7690919063ffffffff16565b9050601360009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff161480156112e45750601260009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1614155b801561133a5750600360008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff16155b1561141f57600e54821115611384576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161137b906129d0565b60405180910390fd5b600f54826113918561056c565b61139b91906129f0565b11156113dc576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016113d390612a70565b60405180910390fd5b4360036005546113ec91906129f0565b1115611406576113fb83611ac0565b1561140557600080fd5b5b600d600081548092919061141990612a90565b91905055505b601360009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff16141580156114c75750600360008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff16155b1561152557600f54826114d98561056c565b6114e391906129f0565b1115611524576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161151b90612a70565b60405180910390fd5b5b601360009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff161480156115ae57503073ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff1614155b156115f2576115ef60646115e1600b54600d54116115ce576007546115d2565b6009545b856119fc90919063ffffffff16565b611a7690919063ffffffff16565b90505b60006115fd3061056c565b9050601360159054906101000a900460ff161580156116695750601360009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff16145b80156116815750601360169054906101000a900460ff165b801561168e575060105481115b801561169d5750600c54600d54115b156116d9576116bf6116ba846116b584601154611ad3565b611ad3565b611aec565b600047905060008111156116d7576116d647611d65565b5b505b505b60008111156117df5761173681600160003073ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054611dd190919063ffffffff16565b600160003073ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055503073ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef836040516117d691906120ac565b60405180910390a35b61183182600160008773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054611e2f90919063ffffffff16565b600160008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055506118d861188a8284611e2f90919063ffffffff16565b600160008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054611dd190919063ffffffff16565b600160008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508273ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef61197d8486611e2f90919063ffffffff16565b60405161198a91906120ac565b60405180910390a350505050565b60008383111582906119e0576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016119d79190611f6c565b60405180910390fd5b50600083856119ef9190612ad8565b9050809150509392505050565b6000808303611a0e5760009050611a70565b60008284611a1c9190612395565b9050828482611a2b9190612b3b565b14611a6b576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611a6290612bde565b60405180910390fd5b809150505b92915050565b6000611ab883836040518060400160405280601a81526020017f536166654d6174683a206469766973696f6e206279207a65726f000000000000815250611e79565b905092915050565b600080823b905060008111915050919050565b6000818311611ae25782611ae4565b815b905092915050565b6001601360156101000a81548160ff0219169083151502179055506000600267ffffffffffffffff811115611b2457611b23612bfe565b5b604051908082528060200260200182016040528015611b525781602001602082028036833780820191505090505b5090503081600081518110611b6a57611b69612c2d565b5b602002602001019073ffffffffffffffffffffffffffffffffffffffff16908173ffffffffffffffffffffffffffffffffffffffff1681525050601260009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663ad5c46486040518163ffffffff1660e01b8152600401602060405180830381865afa158015611c11573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611c3591906124c4565b81600181518110611c4957611c48612c2d565b5b602002602001019073ffffffffffffffffffffffffffffffffffffffff16908173ffffffffffffffffffffffffffffffffffffffff1681525050611cb030601260009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1684610e94565b601260009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663791ac9478360008430426040518663ffffffff1660e01b8152600401611d14959493929190612d1a565b600060405180830381600087803b158015611d2e57600080fd5b505af1158015611d42573d6000803e3d6000fd5b50505050506000601360156101000a81548160ff02191690831515021790555050565b600460009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166108fc829081150290604051600060405180830381858888f19350505050158015611dcd573d6000803e3d6000fd5b5050565b6000808284611de091906129f0565b905083811015611e25576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611e1c90612dc0565b60405180910390fd5b8091505092915050565b6000611e7183836040518060400160405280601e81526020017f536166654d6174683a207375627472616374696f6e206f766572666c6f770000815250611998565b905092915050565b60008083118290611ec0576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611eb79190611f6c565b60405180910390fd5b5060008385611ecf9190612b3b565b9050809150509392505050565b600081519050919050565b600082825260208201905092915050565b60005b83811015611f16578082015181840152602081019050611efb565b60008484015250505050565b6000601f19601f8301169050919050565b6000611f3e82611edc565b611f488185611ee7565b9350611f58818560208601611ef8565b611f6181611f22565b840191505092915050565b60006020820190508181036000830152611f868184611f33565b905092915050565b600080fd5b600073ffffffffffffffffffffffffffffffffffffffff82169050919050565b6000611fbe82611f93565b9050919050565b611fce81611fb3565b8114611fd957600080fd5b50565b600081359050611feb81611fc5565b92915050565b6000819050919050565b61200481611ff1565b811461200f57600080fd5b50565b60008135905061202181611ffb565b92915050565b6000806040838503121561203e5761203d611f8e565b5b600061204c85828601611fdc565b925050602061205d85828601612012565b9150509250929050565b60008115159050919050565b61207c81612067565b82525050565b60006020820190506120976000830184612073565b92915050565b6120a681611ff1565b82525050565b60006020820190506120c1600083018461209d565b92915050565b6000806000606084860312156120e0576120df611f8e565b5b60006120ee86828701611fdc565b93505060206120ff86828701611fdc565b925050604061211086828701612012565b9150509250925092565b600060ff82169050919050565b6121308161211a565b82525050565b600060208201905061214b6000830184612127565b92915050565b60006020828403121561216757612166611f8e565b5b600061217584828501611fdc565b91505092915050565b61218781611fb3565b82525050565b60006020820190506121a2600083018461217e565b92915050565b600080604083850312156121bf576121be611f8e565b5b60006121cd85828601611fdc565b92505060206121de85828601611fdc565b9150509250929050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b60008160011c9050919050565b6000808291508390505b600185111561226e5780860481111561224a576122496121e8565b5b60018516156122595780820291505b808102905061226785612217565b945061222e565b94509492505050565b6000826122875760019050612343565b816122955760009050612343565b81600181146122ab57600281146122b5576122e4565b6001915050612343565b60ff8411156122c7576122c66121e8565b5b8360020a9150848211156122de576122dd6121e8565b5b50612343565b5060208310610133831016604e8410600b84101617156123195782820a905083811115612314576123136121e8565b5b612343565b6123268484846001612224565b9250905081840481111561233d5761233c6121e8565b5b81810290505b9392505050565b600061235582611ff1565b91506123608361211a565b925061238d7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff8484612277565b905092915050565b60006123a082611ff1565b91506123ab83611ff1565b92508282026123b981611ff1565b915082820484148315176123d0576123cf6121e8565b5b5092915050565b7f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572600082015250565b600061240d602083611ee7565b9150612418826123d7565b602082019050919050565b6000602082019050818103600083015261243c81612400565b9050919050565b7f74726164696e6720697320616c7265616479206f70656e000000000000000000600082015250565b6000612479601783611ee7565b915061248482612443565b602082019050919050565b600060208201905081810360008301526124a88161246c565b9050919050565b6000815190506124be81611fc5565b92915050565b6000602082840312156124da576124d9611f8e565b5b60006124e8848285016124af565b91505092915050565b6000604082019050612506600083018561217e565b612513602083018461217e565b9392505050565b6000819050919050565b6000819050919050565b600061254961254461253f8461251a565b612524565b611ff1565b9050919050565b6125598161252e565b82525050565b600060c082019050612574600083018961217e565b612581602083018861209d565b61258e6040830187612550565b61259b6060830186612550565b6125a8608083018561217e565b6125b560a083018461209d565b979650505050505050565b6000815190506125cf81611ffb565b92915050565b6000806000606084860312156125ee576125ed611f8e565b5b60006125fc868287016125c0565b935050602061260d868287016125c0565b925050604061261e868287016125c0565b9150509250925092565b600060408201905061263d600083018561217e565b61264a602083018461209d565b9392505050565b61265a81612067565b811461266557600080fd5b50565b60008151905061267781612651565b92915050565b60006020828403121561269357612692611f8e565b5b60006126a184828501612668565b91505092915050565b7f45524332303a20617070726f76652066726f6d20746865207a65726f2061646460008201527f7265737300000000000000000000000000000000000000000000000000000000602082015250565b6000612706602483611ee7565b9150612711826126aa565b604082019050919050565b60006020820190508181036000830152612735816126f9565b9050919050565b7f45524332303a20617070726f766520746f20746865207a65726f20616464726560008201527f7373000000000000000000000000000000000000000000000000000000000000602082015250565b6000612798602283611ee7565b91506127a38261273c565b604082019050919050565b600060208201905081810360008301526127c78161278b565b9050919050565b7f45524332303a207472616e736665722066726f6d20746865207a65726f20616460008201527f6472657373000000000000000000000000000000000000000000000000000000602082015250565b600061282a602583611ee7565b9150612835826127ce565b604082019050919050565b600060208201905081810360008301526128598161281d565b9050919050565b7f45524332303a207472616e7366657220746f20746865207a65726f206164647260008201527f6573730000000000000000000000000000000000000000000000000000000000602082015250565b60006128bc602383611ee7565b91506128c782612860565b604082019050919050565b600060208201905081810360008301526128eb816128af565b9050919050565b7f5472616e7366657220616d6f756e74206d75737420626520677265617465722060008201527f7468616e207a65726f0000000000000000000000000000000000000000000000602082015250565b600061294e602983611ee7565b9150612959826128f2565b604082019050919050565b6000602082019050818103600083015261297d81612941565b9050919050565b7f4578636565647320746865205f6d61785478416d6f756e742e00000000000000600082015250565b60006129ba601983611ee7565b91506129c582612984565b602082019050919050565b600060208201905081810360008301526129e9816129ad565b9050919050565b60006129fb82611ff1565b9150612a0683611ff1565b9250828201905080821115612a1e57612a1d6121e8565b5b92915050565b7f4578636565647320746865206d617857616c6c657453697a652e000000000000600082015250565b6000612a5a601a83611ee7565b9150612a6582612a24565b602082019050919050565b60006020820190508181036000830152612a8981612a4d565b9050919050565b6000612a9b82611ff1565b91507fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff8203612acd57612acc6121e8565b5b600182019050919050565b6000612ae382611ff1565b9150612aee83611ff1565b9250828203905081811115612b0657612b056121e8565b5b92915050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601260045260246000fd5b6000612b4682611ff1565b9150612b5183611ff1565b925082612b6157612b60612b0c565b5b828204905092915050565b7f536166654d6174683a206d756c7469706c69636174696f6e206f766572666c6f60008201527f7700000000000000000000000000000000000000000000000000000000000000602082015250565b6000612bc8602183611ee7565b9150612bd382612b6c565b604082019050919050565b60006020820190508181036000830152612bf781612bbb565b9050919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b600081519050919050565b600082825260208201905092915050565b6000819050602082019050919050565b612c9181611fb3565b82525050565b6000612ca38383612c88565b60208301905092915050565b6000602082019050919050565b6000612cc782612c5c565b612cd18185612c67565b9350612cdc83612c78565b8060005b83811015612d0d578151612cf48882612c97565b9750612cff83612caf565b925050600181019050612ce0565b5085935050505092915050565b600060a082019050612d2f600083018861209d565b612d3c6020830187612550565b8181036040830152612d4e8186612cbc565b9050612d5d606083018561217e565b612d6a608083018461209d565b9695505050505050565b7f536166654d6174683a206164646974696f6e206f766572666c6f770000000000600082015250565b6000612daa601b83611ee7565b9150612db582612d74565b602082019050919050565b60006020820190508181036000830152612dd981612d9d565b905091905056fe45524332303a207472616e7366657220616d6f756e74206578636565647320616c6c6f77616e6365a26469706673582212200f55a2eafae6bc97d9654ecfbcdab1ba0cbb85a5e78f0a35dfeda62e274c0c5764736f6c63430008130033

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.