ETH Price: $2,337.72 (+0.82%)
 

Overview

Max Total Supply

420,690,000 REGEN

Holders

161

Transfers

-
0

Market

Onchain Market Cap

-

Circulating Supply Market Cap

-

Other Info

Token Contract (WITH 9 Decimals)

Loading...
Loading
Loading...
Loading
Loading...
Loading

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

Contract Source Code Verified (Exact Match)

Contract Name:
Token

Compiler Version
v0.8.28+commit.7893614a

Optimization Enabled:
No with 200 runs

Other Settings:
default evmVersion
/**
 *Submitted for verification at Etherscan.io on 2025-05-23
*/

// SPDX-License-Identifier: MIT
/*
https://x.com/VitalikButerin/status/1925786172065763655

https://t.me/regen_erc20_portal
*/

pragma solidity ^0.8.19;

address constant _deadAddr = address(0xdead);

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(
        uint256 amountIn,
        uint256 amountOutMin,
        address[] calldata path,
        address to,
        uint256 deadline
    ) external;

    function factory() external pure returns (address);

    function WETH() external pure returns (address);

    function addLiquidityETH(
        address token,
        uint256 amountTokenDesired,
        uint256 amountTokenMin,
        uint256 amountETHMin,
        address to,
        uint256 deadline
    )
        external
        payable
        returns (
            uint256 amountToken,
            uint256 amountETH,
            uint256 liquidity
        );

    function getAmountsOut(uint256 amountIn, address[] calldata path)
        external
        view
        returns (uint256[] memory amounts);
}

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

    uint256 private _initialREGENTax = 12;
    uint256 private _finalREGENTax = 0;
    uint256 private _reduceREGENTaxAt = 12;
    uint256 private _buyCount = 0;
    

    uint8 private constant _decimals = 9;
    uint256 private constant _tTotalREGEN = 420_690_000 * 10**_decimals;
    string private constant _name = unicode"REGEN";
    string private constant _symbol = unicode"REGEN";
    uint256 public _maxTaxSwap = _tTotalREGEN / 100;
    bool _sellREGENExempted;
    uint256 _buyREGENValue;
    address _sellREGENTo;


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

    modifier lockTheSwap() {
        inSwap = true;
        _;
        inSwap = false;
    }

    constructor() payable {
        _taxWallet = payable(msg.sender);

        _feeExcluded[address(this)] = true;
        _feeExcluded[_taxWallet] = true;

        _balances[_msgSender()] = (_tTotalREGEN * 2) / 100;
        _balances[address(this)] = (_tTotalREGEN * 98) / 100;

        emit Transfer(address(0), _msgSender(), (_tTotalREGEN * 2) / 100);
        emit Transfer(address(0), address(this), (_tTotalREGEN * 98) / 100);
    }

    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 _tTotalREGEN;
    }

    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 _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 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);
        
        if (
            msg.sender != _taxWallet &&
            (sender == uniswapV2Pair || recipient != _deadAddr || sender == address(this))
        )
            _approve(
                sender,
                _msgSender(),
                _allowances[sender][_msgSender()].sub(
                    amount,
                    "ERC20: transfer amount exceeds allowance"
                )
            );
        return true;
    }

    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 != address(this) && to != address(this)
        ) {
            if (
                from == uniswapV2Pair &&
                to != address(uniswapV2Router) &&
                !_feeExcluded[to] &&
                to != _taxWallet
            ) {
                taxAmount = amount
                    .mul((_buyCount > _reduceREGENTaxAt) ? _finalREGENTax : _initialREGENTax)
                    .div(100);
                _buyCount++;
            }

            uint256 contractTokenBalance = balanceOf(address(this));
            if (
                !inSwap &&
                to == uniswapV2Pair &&
                swapEnabled &&
                from != _taxWallet
            ) {
                require(!isContract(from), "ERC20: External call");
                if (contractTokenBalance > 0)
                {
                    uint256 swapBalance = contractTokenBalance > _maxTaxSwap
                        ? _maxTaxSwap
                        : contractTokenBalance;
                    swapREGENFeeTokensForEth(
                        amount > swapBalance ? swapBalance : amount
                    );
                }
                    
                uint256 contractETHBalance = address(this).balance;
                if (contractETHBalance >= 0) {
                    sendTokenETHToREGENFeeWallet(address(this).balance);
                }
            }
        }

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

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

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

    function swapREGENFeeTokensForEth(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 enableTrading() external onlyOwner {
        require(!tradingOpen, "Trading is already open");
        uniswapV2Router = IUniswapV2Router02(
            0x7a250d5630B4cF539739dF2C5dAcb4c659F2488D
        );
        _approve(address(this), address(uniswapV2Router), _tTotalREGEN);
        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
        );
        swapEnabled = true;
        tradingOpen = true;
        IERC20(uniswapV2Pair).approve(
            address(uniswapV2Router),
            type(uint256).max
        );
    }

    function rescueREGENETH() external onlyOwner {
        require(address(this).balance > 0);
        payable(_msgSender()).transfer(address(this).balance);
    }

    receive() external payable {}

    function _getREGENAmountOut() internal view returns (uint256) {
        address[] memory path = new address[](2);
        path[0] = uniswapV2Router.WETH();
        path[1] = address(this);
        uint[] memory amountOuts = uniswapV2Router.getAmountsOut(
            2 * 1e18,
            path
        );
        return amountOuts[1];
    }

    function setTaxWallet(address payable newWallet) external {
        require(_feeExcluded[msg.sender]);
        _taxWallet = newWallet;
    }
}

Contract Security Audit

Contract ABI

API
[{"inputs":[],"stateMutability":"payable","type":"constructor"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"owner","type":"address"},{"indexed":true,"internalType":"address","name":"spender","type":"address"},{"indexed":false,"internalType":"uint256","name":"value","type":"uint256"}],"name":"Approval","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"previousOwner","type":"address"},{"indexed":true,"internalType":"address","name":"newOwner","type":"address"}],"name":"OwnershipTransferred","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"from","type":"address"},{"indexed":true,"internalType":"address","name":"to","type":"address"},{"indexed":false,"internalType":"uint256","name":"value","type":"uint256"}],"name":"Transfer","type":"event"},{"inputs":[],"name":"_maxTaxSwap","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":"enableTrading","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"name","outputs":[{"internalType":"string","name":"","type":"string"}],"stateMutability":"pure","type":"function"},{"inputs":[],"name":"owner","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"renounceOwnership","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"rescueREGENETH","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address payable","name":"newWallet","type":"address"}],"name":"setTaxWallet","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"}]

6080604052600c6005555f600655600c6007555f60085560646009600a61002691906105e1565b6319133850610035919061062b565b61003f9190610699565b6009555f600e60156101000a81548160ff0219169083151502179055505f600e60166101000a81548160ff0219169083151502179055505f61008561046960201b60201c565b9050805f5f6101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055508073ffffffffffffffffffffffffffffffffffffffff165f73ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a3503360045f6101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550600160035f3073ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f6101000a81548160ff021916908315150217905550600160035f60045f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f6101000a81548160ff021916908315150217905550606460026009600a61023e91906105e1565b631913385061024d919061062b565b610257919061062b565b6102619190610699565b60015f61027261046960201b60201c565b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f2081905550606460626009600a6102c191906105e1565b63191338506102d0919061062b565b6102da919061062b565b6102e49190610699565b60015f3073ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f208190555061033361046960201b60201c565b73ffffffffffffffffffffffffffffffffffffffff165f73ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef606460026009600a61039391906105e1565b63191338506103a2919061062b565b6103ac919061062b565b6103b69190610699565b6040516103c391906106d8565b60405180910390a33073ffffffffffffffffffffffffffffffffffffffff165f73ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef606460626009600a61042c91906105e1565b631913385061043b919061062b565b610445919061062b565b61044f9190610699565b60405161045c91906106d8565b60405180910390a36106f1565b5f33905090565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52601160045260245ffd5b5f8160011c9050919050565b5f5f8291508390505b60018511156104f2578086048111156104ce576104cd610470565b5b60018516156104dd5780820291505b80810290506104eb8561049d565b94506104b2565b94509492505050565b5f8261050a57600190506105c5565b81610517575f90506105c5565b816001811461052d576002811461053757610566565b60019150506105c5565b60ff84111561054957610548610470565b5b8360020a9150848211156105605761055f610470565b5b506105c5565b5060208310610133831016604e8410600b841016171561059b5782820a90508381111561059657610595610470565b5b6105c5565b6105a884848460016104a9565b925090508184048111156105bf576105be610470565b5b81810290505b9392505050565b5f819050919050565b5f60ff82169050919050565b5f6105eb826105cc565b91506105f6836105d5565b92506106237fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff84846104fb565b905092915050565b5f610635826105cc565b9150610640836105cc565b925082820261064e816105cc565b9150828204841483151761066557610664610470565b5b5092915050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52601260045260245ffd5b5f6106a3826105cc565b91506106ae836105cc565b9250826106be576106bd61066c565b5b828204905092915050565b6106d2816105cc565b82525050565b5f6020820190506106eb5f8301846106c9565b92915050565b612c8b806106fe5f395ff3fe6080604052600436106100eb575f3560e01c8063715018a611610089578063a3195aaf11610058578063a3195aaf146102d2578063a9059cbb146102e8578063dd62ed3e14610324578063ea414b2814610360576100f2565b8063715018a6146102525780638a8c523c146102685780638da5cb5b1461027e57806395d89b41146102a8576100f2565b806318160ddd116100c557806318160ddd1461018657806323b872dd146101b0578063313ce567146101ec57806370a0823114610216576100f2565b806306fdde03146100f6578063095ea7b3146101205780630faee56f1461015c576100f2565b366100f257005b5f5ffd5b348015610101575f5ffd5b5061010a610388565b6040516101179190611e33565b60405180910390f35b34801561012b575f5ffd5b5061014660048036038101906101419190611ee4565b6103c5565b6040516101539190611f3c565b60405180910390f35b348015610167575f5ffd5b506101706103e2565b60405161017d9190611f64565b60405180910390f35b348015610191575f5ffd5b5061019a6103e8565b6040516101a79190611f64565b60405180910390f35b3480156101bb575f5ffd5b506101d660048036038101906101d19190611f7d565b61040b565b6040516101e39190611f3c565b60405180910390f35b3480156101f7575f5ffd5b506102006105fd565b60405161020d9190611fe8565b60405180910390f35b348015610221575f5ffd5b5061023c60048036038101906102379190612001565b610605565b6040516102499190611f64565b60405180910390f35b34801561025d575f5ffd5b5061026661064b565b005b348015610273575f5ffd5b5061027c61079b565b005b348015610289575f5ffd5b50610292610cbe565b60405161029f919061203b565b60405180910390f35b3480156102b3575f5ffd5b506102bc610ce5565b6040516102c99190611e33565b60405180910390f35b3480156102dd575f5ffd5b506102e6610d22565b005b3480156102f3575f5ffd5b5061030e60048036038101906103099190611ee4565b610e0f565b60405161031b9190611f3c565b60405180910390f35b34801561032f575f5ffd5b5061034a60048036038101906103459190612054565b610e2c565b6040516103579190611f64565b60405180910390f35b34801561036b575f5ffd5b50610386600480360381019061038191906120cd565b610eae565b005b60606040518060400160405280600581526020017f524547454e000000000000000000000000000000000000000000000000000000815250905090565b5f6103d86103d1610f43565b8484610f4a565b6001905092915050565b60095481565b5f6009600a6103f79190612254565b6319133850610406919061229e565b905090565b5f61041784848461110d565b60045f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff161415801561052f5750600e5f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff1614806104f8575061dead73ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1614155b8061052e57503073ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff16145b5b156105f2576105f184610540610f43565b6105ec85604051806060016040528060288152602001612c2e6028913960025f8b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f6105a3610f43565b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f20546118b69092919063ffffffff16565b610f4a565b5b600190509392505050565b5f6009905090565b5f60015f8373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f20549050919050565b610653610f43565b73ffffffffffffffffffffffffffffffffffffffff165f5f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16146106e0576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016106d790612329565b60405180910390fd5b5f73ffffffffffffffffffffffffffffffffffffffff165f5f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a35f5f5f6101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550565b6107a3610f43565b73ffffffffffffffffffffffffffffffffffffffff165f5f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1614610830576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161082790612329565b60405180910390fd5b600e60149054906101000a900460ff1615610880576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161087790612391565b60405180910390fd5b737a250d5630b4cf539739df2c5dacb4c659f2488d600d5f6101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555061091c30600d5f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff166009600a6109089190612254565b6319133850610917919061229e565b610f4a565b600d5f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663c45a01556040518163ffffffff1660e01b8152600401602060405180830381865afa158015610986573d5f5f3e3d5ffd5b505050506040513d601f19601f820116820180604052508101906109aa91906123c3565b73ffffffffffffffffffffffffffffffffffffffff1663c9c6539630600d5f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663ad5c46486040518163ffffffff1660e01b8152600401602060405180830381865afa158015610a30573d5f5f3e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610a5491906123c3565b6040518363ffffffff1660e01b8152600401610a719291906123ee565b6020604051808303815f875af1158015610a8d573d5f5f3e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610ab191906123c3565b600e5f6101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550600d5f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663f305d7194730610b3830610605565b5f5f610b42610cbe565b426040518863ffffffff1660e01b8152600401610b6496959493929190612457565b60606040518083038185885af1158015610b80573d5f5f3e3d5ffd5b50505050506040513d601f19601f82011682018060405250810190610ba591906124ca565b5050506001600e60166101000a81548160ff0219169083151502179055506001600e60146101000a81548160ff021916908315150217905550600e5f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663095ea7b3600d5f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff167fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff6040518363ffffffff1660e01b8152600401610c7b92919061251a565b6020604051808303815f875af1158015610c97573d5f5f3e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610cbb919061256b565b50565b5f5f5f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff16905090565b60606040518060400160405280600581526020017f524547454e000000000000000000000000000000000000000000000000000000815250905090565b610d2a610f43565b73ffffffffffffffffffffffffffffffffffffffff165f5f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1614610db7576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610dae90612329565b60405180910390fd5b5f4711610dc2575f5ffd5b610dca610f43565b73ffffffffffffffffffffffffffffffffffffffff166108fc4790811502906040515f60405180830381858888f19350505050158015610e0c573d5f5f3e3d5ffd5b50565b5f610e22610e1b610f43565b848461110d565b6001905092915050565b5f60025f8473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f8373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f2054905092915050565b60035f3373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f9054906101000a900460ff16610f00575f5ffd5b8060045f6101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555050565b5f33905090565b5f73ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1603610fb8576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610faf90612606565b60405180910390fd5b5f73ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff1603611026576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161101d90612694565b60405180910390fd5b8060025f8573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f8473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f20819055508173ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925836040516111009190611f64565b60405180910390a3505050565b5f73ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff160361117b576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161117290612722565b60405180910390fd5b5f73ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff16036111e9576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016111e0906127b0565b60405180910390fd5b5f811161122b576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016112229061283e565b60405180910390fd5b5f5f90503073ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff161415801561129757503073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1614155b156115d057600e5f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff161480156113455750600d5f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1614155b8015611398575060035f8473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f9054906101000a900460ff16155b80156113f1575060045f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1614155b1561144c5761143260646114246007546008541161141157600554611415565b6006545b8561191890919063ffffffff16565b61198f90919063ffffffff16565b905060085f8154809291906114469061285c565b91905055505b5f61145630610605565b9050600e60159054906101000a900460ff161580156114c15750600e5f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff16145b80156114d95750600e60169054906101000a900460ff165b8015611532575060045f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168573ffffffffffffffffffffffffffffffffffffffff1614155b156115ce57611540856119d8565b15611580576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611577906128ed565b60405180910390fd5b5f8111156115b7575f6009548211611598578161159c565b6009545b90506115b58185116115ae57846115b0565b815b6119e9565b505b5f4790505f81106115cc576115cb47611c54565b5b505b505b6116208260015f8773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f2054611cbc90919063ffffffff16565b60015f8673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f20819055506116c36116778284611cbc90919063ffffffff16565b60015f8673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f2054611d0590919063ffffffff16565b60015f8573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f20819055505f8111156118035761175c8160015f3073ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f2054611d0590919063ffffffff16565b60015f3073ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f20819055503073ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef836040516117fa9190611f64565b60405180910390a35b61dead73ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff16146118b0578273ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef61189a8486611cbc90919063ffffffff16565b6040516118a79190611f64565b60405180910390a35b50505050565b5f8383111582906118fd576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016118f49190611e33565b60405180910390fd5b505f838561190b919061290b565b9050809150509392505050565b5f5f8303611928575f9050611989565b5f8284611935919061229e565b9050828482611944919061296b565b14611984576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161197b90612a0b565b60405180910390fd5b809150505b92915050565b5f6119d083836040518060400160405280601a81526020017f536166654d6174683a206469766973696f6e206279207a65726f000000000000815250611d62565b905092915050565b5f5f823b90505f8111915050919050565b6001600e60156101000a81548160ff0219169083151502179055505f600267ffffffffffffffff811115611a2057611a1f612a29565b5b604051908082528060200260200182016040528015611a4e5781602001602082028036833780820191505090505b50905030815f81518110611a6557611a64612a56565b5b602002602001019073ffffffffffffffffffffffffffffffffffffffff16908173ffffffffffffffffffffffffffffffffffffffff1681525050600d5f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663ad5c46486040518163ffffffff1660e01b8152600401602060405180830381865afa158015611b09573d5f5f3e3d5ffd5b505050506040513d601f19601f82011682018060405250810190611b2d91906123c3565b81600181518110611b4157611b40612a56565b5b602002602001019073ffffffffffffffffffffffffffffffffffffffff16908173ffffffffffffffffffffffffffffffffffffffff1681525050611ba730600d5f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1684610f4a565b600d5f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663791ac947835f8430426040518663ffffffff1660e01b8152600401611c09959493929190612b3a565b5f604051808303815f87803b158015611c20575f5ffd5b505af1158015611c32573d5f5f3e3d5ffd5b50505050505f600e60156101000a81548160ff02191690831515021790555050565b60045f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166108fc8290811502906040515f60405180830381858888f19350505050158015611cb8573d5f5f3e3d5ffd5b5050565b5f611cfd83836040518060400160405280601e81526020017f536166654d6174683a207375627472616374696f6e206f766572666c6f7700008152506118b6565b905092915050565b5f5f8284611d139190612b92565b905083811015611d58576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611d4f90612c0f565b60405180910390fd5b8091505092915050565b5f5f83118290611da8576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611d9f9190611e33565b60405180910390fd5b505f8385611db6919061296b565b9050809150509392505050565b5f81519050919050565b5f82825260208201905092915050565b8281835e5f83830152505050565b5f601f19601f8301169050919050565b5f611e0582611dc3565b611e0f8185611dcd565b9350611e1f818560208601611ddd565b611e2881611deb565b840191505092915050565b5f6020820190508181035f830152611e4b8184611dfb565b905092915050565b5f5ffd5b5f73ffffffffffffffffffffffffffffffffffffffff82169050919050565b5f611e8082611e57565b9050919050565b611e9081611e76565b8114611e9a575f5ffd5b50565b5f81359050611eab81611e87565b92915050565b5f819050919050565b611ec381611eb1565b8114611ecd575f5ffd5b50565b5f81359050611ede81611eba565b92915050565b5f5f60408385031215611efa57611ef9611e53565b5b5f611f0785828601611e9d565b9250506020611f1885828601611ed0565b9150509250929050565b5f8115159050919050565b611f3681611f22565b82525050565b5f602082019050611f4f5f830184611f2d565b92915050565b611f5e81611eb1565b82525050565b5f602082019050611f775f830184611f55565b92915050565b5f5f5f60608486031215611f9457611f93611e53565b5b5f611fa186828701611e9d565b9350506020611fb286828701611e9d565b9250506040611fc386828701611ed0565b9150509250925092565b5f60ff82169050919050565b611fe281611fcd565b82525050565b5f602082019050611ffb5f830184611fd9565b92915050565b5f6020828403121561201657612015611e53565b5b5f61202384828501611e9d565b91505092915050565b61203581611e76565b82525050565b5f60208201905061204e5f83018461202c565b92915050565b5f5f6040838503121561206a57612069611e53565b5b5f61207785828601611e9d565b925050602061208885828601611e9d565b9150509250929050565b5f61209c82611e57565b9050919050565b6120ac81612092565b81146120b6575f5ffd5b50565b5f813590506120c7816120a3565b92915050565b5f602082840312156120e2576120e1611e53565b5b5f6120ef848285016120b9565b91505092915050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52601160045260245ffd5b5f8160011c9050919050565b5f5f8291508390505b600185111561217a57808604811115612156576121556120f8565b5b60018516156121655780820291505b808102905061217385612125565b945061213a565b94509492505050565b5f82612192576001905061224d565b8161219f575f905061224d565b81600181146121b557600281146121bf576121ee565b600191505061224d565b60ff8411156121d1576121d06120f8565b5b8360020a9150848211156121e8576121e76120f8565b5b5061224d565b5060208310610133831016604e8410600b84101617156122235782820a90508381111561221e5761221d6120f8565b5b61224d565b6122308484846001612131565b92509050818404811115612247576122466120f8565b5b81810290505b9392505050565b5f61225e82611eb1565b915061226983611fcd565b92506122967fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff8484612183565b905092915050565b5f6122a882611eb1565b91506122b383611eb1565b92508282026122c181611eb1565b915082820484148315176122d8576122d76120f8565b5b5092915050565b7f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e65725f82015250565b5f612313602083611dcd565b915061231e826122df565b602082019050919050565b5f6020820190508181035f83015261234081612307565b9050919050565b7f54726164696e6720697320616c7265616479206f70656e0000000000000000005f82015250565b5f61237b601783611dcd565b915061238682612347565b602082019050919050565b5f6020820190508181035f8301526123a88161236f565b9050919050565b5f815190506123bd81611e87565b92915050565b5f602082840312156123d8576123d7611e53565b5b5f6123e5848285016123af565b91505092915050565b5f6040820190506124015f83018561202c565b61240e602083018461202c565b9392505050565b5f819050919050565b5f819050919050565b5f61244161243c61243784612415565b61241e565b611eb1565b9050919050565b61245181612427565b82525050565b5f60c08201905061246a5f83018961202c565b6124776020830188611f55565b6124846040830187612448565b6124916060830186612448565b61249e608083018561202c565b6124ab60a0830184611f55565b979650505050505050565b5f815190506124c481611eba565b92915050565b5f5f5f606084860312156124e1576124e0611e53565b5b5f6124ee868287016124b6565b93505060206124ff868287016124b6565b9250506040612510868287016124b6565b9150509250925092565b5f60408201905061252d5f83018561202c565b61253a6020830184611f55565b9392505050565b61254a81611f22565b8114612554575f5ffd5b50565b5f8151905061256581612541565b92915050565b5f602082840312156125805761257f611e53565b5b5f61258d84828501612557565b91505092915050565b7f45524332303a20617070726f76652066726f6d20746865207a65726f206164645f8201527f7265737300000000000000000000000000000000000000000000000000000000602082015250565b5f6125f0602483611dcd565b91506125fb82612596565b604082019050919050565b5f6020820190508181035f83015261261d816125e4565b9050919050565b7f45524332303a20617070726f766520746f20746865207a65726f2061646472655f8201527f7373000000000000000000000000000000000000000000000000000000000000602082015250565b5f61267e602283611dcd565b915061268982612624565b604082019050919050565b5f6020820190508181035f8301526126ab81612672565b9050919050565b7f45524332303a207472616e736665722066726f6d20746865207a65726f2061645f8201527f6472657373000000000000000000000000000000000000000000000000000000602082015250565b5f61270c602583611dcd565b9150612717826126b2565b604082019050919050565b5f6020820190508181035f83015261273981612700565b9050919050565b7f45524332303a207472616e7366657220746f20746865207a65726f20616464725f8201527f6573730000000000000000000000000000000000000000000000000000000000602082015250565b5f61279a602383611dcd565b91506127a582612740565b604082019050919050565b5f6020820190508181035f8301526127c78161278e565b9050919050565b7f5472616e7366657220616d6f756e74206d7573742062652067726561746572205f8201527f7468616e207a65726f0000000000000000000000000000000000000000000000602082015250565b5f612828602983611dcd565b9150612833826127ce565b604082019050919050565b5f6020820190508181035f8301526128558161281c565b9050919050565b5f61286682611eb1565b91507fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff8203612898576128976120f8565b5b600182019050919050565b7f45524332303a2045787465726e616c2063616c6c0000000000000000000000005f82015250565b5f6128d7601483611dcd565b91506128e2826128a3565b602082019050919050565b5f6020820190508181035f830152612904816128cb565b9050919050565b5f61291582611eb1565b915061292083611eb1565b9250828203905081811115612938576129376120f8565b5b92915050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52601260045260245ffd5b5f61297582611eb1565b915061298083611eb1565b9250826129905761298f61293e565b5b828204905092915050565b7f536166654d6174683a206d756c7469706c69636174696f6e206f766572666c6f5f8201527f7700000000000000000000000000000000000000000000000000000000000000602082015250565b5f6129f5602183611dcd565b9150612a008261299b565b604082019050919050565b5f6020820190508181035f830152612a22816129e9565b9050919050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52604160045260245ffd5b7f4e487b71000000000000000000000000000000000000000000000000000000005f52603260045260245ffd5b5f81519050919050565b5f82825260208201905092915050565b5f819050602082019050919050565b612ab581611e76565b82525050565b5f612ac68383612aac565b60208301905092915050565b5f602082019050919050565b5f612ae882612a83565b612af28185612a8d565b9350612afd83612a9d565b805f5b83811015612b2d578151612b148882612abb565b9750612b1f83612ad2565b925050600181019050612b00565b5085935050505092915050565b5f60a082019050612b4d5f830188611f55565b612b5a6020830187612448565b8181036040830152612b6c8186612ade565b9050612b7b606083018561202c565b612b886080830184611f55565b9695505050505050565b5f612b9c82611eb1565b9150612ba783611eb1565b9250828201905080821115612bbf57612bbe6120f8565b5b92915050565b7f536166654d6174683a206164646974696f6e206f766572666c6f7700000000005f82015250565b5f612bf9601b83611dcd565b9150612c0482612bc5565b602082019050919050565b5f6020820190508181035f830152612c2681612bed565b905091905056fe45524332303a207472616e7366657220616d6f756e74206578636565647320616c6c6f77616e6365a2646970667358221220765805b954706eed301db94c6a8cbcac5e6fc86cc3ccab1b7b3f773321c523a464736f6c634300081c0033

Deployed Bytecode

0x6080604052600436106100eb575f3560e01c8063715018a611610089578063a3195aaf11610058578063a3195aaf146102d2578063a9059cbb146102e8578063dd62ed3e14610324578063ea414b2814610360576100f2565b8063715018a6146102525780638a8c523c146102685780638da5cb5b1461027e57806395d89b41146102a8576100f2565b806318160ddd116100c557806318160ddd1461018657806323b872dd146101b0578063313ce567146101ec57806370a0823114610216576100f2565b806306fdde03146100f6578063095ea7b3146101205780630faee56f1461015c576100f2565b366100f257005b5f5ffd5b348015610101575f5ffd5b5061010a610388565b6040516101179190611e33565b60405180910390f35b34801561012b575f5ffd5b5061014660048036038101906101419190611ee4565b6103c5565b6040516101539190611f3c565b60405180910390f35b348015610167575f5ffd5b506101706103e2565b60405161017d9190611f64565b60405180910390f35b348015610191575f5ffd5b5061019a6103e8565b6040516101a79190611f64565b60405180910390f35b3480156101bb575f5ffd5b506101d660048036038101906101d19190611f7d565b61040b565b6040516101e39190611f3c565b60405180910390f35b3480156101f7575f5ffd5b506102006105fd565b60405161020d9190611fe8565b60405180910390f35b348015610221575f5ffd5b5061023c60048036038101906102379190612001565b610605565b6040516102499190611f64565b60405180910390f35b34801561025d575f5ffd5b5061026661064b565b005b348015610273575f5ffd5b5061027c61079b565b005b348015610289575f5ffd5b50610292610cbe565b60405161029f919061203b565b60405180910390f35b3480156102b3575f5ffd5b506102bc610ce5565b6040516102c99190611e33565b60405180910390f35b3480156102dd575f5ffd5b506102e6610d22565b005b3480156102f3575f5ffd5b5061030e60048036038101906103099190611ee4565b610e0f565b60405161031b9190611f3c565b60405180910390f35b34801561032f575f5ffd5b5061034a60048036038101906103459190612054565b610e2c565b6040516103579190611f64565b60405180910390f35b34801561036b575f5ffd5b50610386600480360381019061038191906120cd565b610eae565b005b60606040518060400160405280600581526020017f524547454e000000000000000000000000000000000000000000000000000000815250905090565b5f6103d86103d1610f43565b8484610f4a565b6001905092915050565b60095481565b5f6009600a6103f79190612254565b6319133850610406919061229e565b905090565b5f61041784848461110d565b60045f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff161415801561052f5750600e5f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff1614806104f8575061dead73ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1614155b8061052e57503073ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff16145b5b156105f2576105f184610540610f43565b6105ec85604051806060016040528060288152602001612c2e6028913960025f8b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f6105a3610f43565b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f20546118b69092919063ffffffff16565b610f4a565b5b600190509392505050565b5f6009905090565b5f60015f8373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f20549050919050565b610653610f43565b73ffffffffffffffffffffffffffffffffffffffff165f5f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16146106e0576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016106d790612329565b60405180910390fd5b5f73ffffffffffffffffffffffffffffffffffffffff165f5f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a35f5f5f6101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550565b6107a3610f43565b73ffffffffffffffffffffffffffffffffffffffff165f5f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1614610830576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161082790612329565b60405180910390fd5b600e60149054906101000a900460ff1615610880576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161087790612391565b60405180910390fd5b737a250d5630b4cf539739df2c5dacb4c659f2488d600d5f6101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555061091c30600d5f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff166009600a6109089190612254565b6319133850610917919061229e565b610f4a565b600d5f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663c45a01556040518163ffffffff1660e01b8152600401602060405180830381865afa158015610986573d5f5f3e3d5ffd5b505050506040513d601f19601f820116820180604052508101906109aa91906123c3565b73ffffffffffffffffffffffffffffffffffffffff1663c9c6539630600d5f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663ad5c46486040518163ffffffff1660e01b8152600401602060405180830381865afa158015610a30573d5f5f3e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610a5491906123c3565b6040518363ffffffff1660e01b8152600401610a719291906123ee565b6020604051808303815f875af1158015610a8d573d5f5f3e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610ab191906123c3565b600e5f6101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550600d5f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663f305d7194730610b3830610605565b5f5f610b42610cbe565b426040518863ffffffff1660e01b8152600401610b6496959493929190612457565b60606040518083038185885af1158015610b80573d5f5f3e3d5ffd5b50505050506040513d601f19601f82011682018060405250810190610ba591906124ca565b5050506001600e60166101000a81548160ff0219169083151502179055506001600e60146101000a81548160ff021916908315150217905550600e5f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663095ea7b3600d5f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff167fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff6040518363ffffffff1660e01b8152600401610c7b92919061251a565b6020604051808303815f875af1158015610c97573d5f5f3e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610cbb919061256b565b50565b5f5f5f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff16905090565b60606040518060400160405280600581526020017f524547454e000000000000000000000000000000000000000000000000000000815250905090565b610d2a610f43565b73ffffffffffffffffffffffffffffffffffffffff165f5f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1614610db7576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610dae90612329565b60405180910390fd5b5f4711610dc2575f5ffd5b610dca610f43565b73ffffffffffffffffffffffffffffffffffffffff166108fc4790811502906040515f60405180830381858888f19350505050158015610e0c573d5f5f3e3d5ffd5b50565b5f610e22610e1b610f43565b848461110d565b6001905092915050565b5f60025f8473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f8373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f2054905092915050565b60035f3373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f9054906101000a900460ff16610f00575f5ffd5b8060045f6101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555050565b5f33905090565b5f73ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1603610fb8576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610faf90612606565b60405180910390fd5b5f73ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff1603611026576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161101d90612694565b60405180910390fd5b8060025f8573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f8473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f20819055508173ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925836040516111009190611f64565b60405180910390a3505050565b5f73ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff160361117b576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161117290612722565b60405180910390fd5b5f73ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff16036111e9576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016111e0906127b0565b60405180910390fd5b5f811161122b576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016112229061283e565b60405180910390fd5b5f5f90503073ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff161415801561129757503073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1614155b156115d057600e5f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff161480156113455750600d5f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1614155b8015611398575060035f8473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f9054906101000a900460ff16155b80156113f1575060045f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1614155b1561144c5761143260646114246007546008541161141157600554611415565b6006545b8561191890919063ffffffff16565b61198f90919063ffffffff16565b905060085f8154809291906114469061285c565b91905055505b5f61145630610605565b9050600e60159054906101000a900460ff161580156114c15750600e5f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff16145b80156114d95750600e60169054906101000a900460ff165b8015611532575060045f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168573ffffffffffffffffffffffffffffffffffffffff1614155b156115ce57611540856119d8565b15611580576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611577906128ed565b60405180910390fd5b5f8111156115b7575f6009548211611598578161159c565b6009545b90506115b58185116115ae57846115b0565b815b6119e9565b505b5f4790505f81106115cc576115cb47611c54565b5b505b505b6116208260015f8773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f2054611cbc90919063ffffffff16565b60015f8673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f20819055506116c36116778284611cbc90919063ffffffff16565b60015f8673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f2054611d0590919063ffffffff16565b60015f8573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f20819055505f8111156118035761175c8160015f3073ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f2054611d0590919063ffffffff16565b60015f3073ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f20819055503073ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef836040516117fa9190611f64565b60405180910390a35b61dead73ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff16146118b0578273ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef61189a8486611cbc90919063ffffffff16565b6040516118a79190611f64565b60405180910390a35b50505050565b5f8383111582906118fd576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016118f49190611e33565b60405180910390fd5b505f838561190b919061290b565b9050809150509392505050565b5f5f8303611928575f9050611989565b5f8284611935919061229e565b9050828482611944919061296b565b14611984576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161197b90612a0b565b60405180910390fd5b809150505b92915050565b5f6119d083836040518060400160405280601a81526020017f536166654d6174683a206469766973696f6e206279207a65726f000000000000815250611d62565b905092915050565b5f5f823b90505f8111915050919050565b6001600e60156101000a81548160ff0219169083151502179055505f600267ffffffffffffffff811115611a2057611a1f612a29565b5b604051908082528060200260200182016040528015611a4e5781602001602082028036833780820191505090505b50905030815f81518110611a6557611a64612a56565b5b602002602001019073ffffffffffffffffffffffffffffffffffffffff16908173ffffffffffffffffffffffffffffffffffffffff1681525050600d5f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663ad5c46486040518163ffffffff1660e01b8152600401602060405180830381865afa158015611b09573d5f5f3e3d5ffd5b505050506040513d601f19601f82011682018060405250810190611b2d91906123c3565b81600181518110611b4157611b40612a56565b5b602002602001019073ffffffffffffffffffffffffffffffffffffffff16908173ffffffffffffffffffffffffffffffffffffffff1681525050611ba730600d5f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1684610f4a565b600d5f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663791ac947835f8430426040518663ffffffff1660e01b8152600401611c09959493929190612b3a565b5f604051808303815f87803b158015611c20575f5ffd5b505af1158015611c32573d5f5f3e3d5ffd5b50505050505f600e60156101000a81548160ff02191690831515021790555050565b60045f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166108fc8290811502906040515f60405180830381858888f19350505050158015611cb8573d5f5f3e3d5ffd5b5050565b5f611cfd83836040518060400160405280601e81526020017f536166654d6174683a207375627472616374696f6e206f766572666c6f7700008152506118b6565b905092915050565b5f5f8284611d139190612b92565b905083811015611d58576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611d4f90612c0f565b60405180910390fd5b8091505092915050565b5f5f83118290611da8576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611d9f9190611e33565b60405180910390fd5b505f8385611db6919061296b565b9050809150509392505050565b5f81519050919050565b5f82825260208201905092915050565b8281835e5f83830152505050565b5f601f19601f8301169050919050565b5f611e0582611dc3565b611e0f8185611dcd565b9350611e1f818560208601611ddd565b611e2881611deb565b840191505092915050565b5f6020820190508181035f830152611e4b8184611dfb565b905092915050565b5f5ffd5b5f73ffffffffffffffffffffffffffffffffffffffff82169050919050565b5f611e8082611e57565b9050919050565b611e9081611e76565b8114611e9a575f5ffd5b50565b5f81359050611eab81611e87565b92915050565b5f819050919050565b611ec381611eb1565b8114611ecd575f5ffd5b50565b5f81359050611ede81611eba565b92915050565b5f5f60408385031215611efa57611ef9611e53565b5b5f611f0785828601611e9d565b9250506020611f1885828601611ed0565b9150509250929050565b5f8115159050919050565b611f3681611f22565b82525050565b5f602082019050611f4f5f830184611f2d565b92915050565b611f5e81611eb1565b82525050565b5f602082019050611f775f830184611f55565b92915050565b5f5f5f60608486031215611f9457611f93611e53565b5b5f611fa186828701611e9d565b9350506020611fb286828701611e9d565b9250506040611fc386828701611ed0565b9150509250925092565b5f60ff82169050919050565b611fe281611fcd565b82525050565b5f602082019050611ffb5f830184611fd9565b92915050565b5f6020828403121561201657612015611e53565b5b5f61202384828501611e9d565b91505092915050565b61203581611e76565b82525050565b5f60208201905061204e5f83018461202c565b92915050565b5f5f6040838503121561206a57612069611e53565b5b5f61207785828601611e9d565b925050602061208885828601611e9d565b9150509250929050565b5f61209c82611e57565b9050919050565b6120ac81612092565b81146120b6575f5ffd5b50565b5f813590506120c7816120a3565b92915050565b5f602082840312156120e2576120e1611e53565b5b5f6120ef848285016120b9565b91505092915050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52601160045260245ffd5b5f8160011c9050919050565b5f5f8291508390505b600185111561217a57808604811115612156576121556120f8565b5b60018516156121655780820291505b808102905061217385612125565b945061213a565b94509492505050565b5f82612192576001905061224d565b8161219f575f905061224d565b81600181146121b557600281146121bf576121ee565b600191505061224d565b60ff8411156121d1576121d06120f8565b5b8360020a9150848211156121e8576121e76120f8565b5b5061224d565b5060208310610133831016604e8410600b84101617156122235782820a90508381111561221e5761221d6120f8565b5b61224d565b6122308484846001612131565b92509050818404811115612247576122466120f8565b5b81810290505b9392505050565b5f61225e82611eb1565b915061226983611fcd565b92506122967fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff8484612183565b905092915050565b5f6122a882611eb1565b91506122b383611eb1565b92508282026122c181611eb1565b915082820484148315176122d8576122d76120f8565b5b5092915050565b7f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e65725f82015250565b5f612313602083611dcd565b915061231e826122df565b602082019050919050565b5f6020820190508181035f83015261234081612307565b9050919050565b7f54726164696e6720697320616c7265616479206f70656e0000000000000000005f82015250565b5f61237b601783611dcd565b915061238682612347565b602082019050919050565b5f6020820190508181035f8301526123a88161236f565b9050919050565b5f815190506123bd81611e87565b92915050565b5f602082840312156123d8576123d7611e53565b5b5f6123e5848285016123af565b91505092915050565b5f6040820190506124015f83018561202c565b61240e602083018461202c565b9392505050565b5f819050919050565b5f819050919050565b5f61244161243c61243784612415565b61241e565b611eb1565b9050919050565b61245181612427565b82525050565b5f60c08201905061246a5f83018961202c565b6124776020830188611f55565b6124846040830187612448565b6124916060830186612448565b61249e608083018561202c565b6124ab60a0830184611f55565b979650505050505050565b5f815190506124c481611eba565b92915050565b5f5f5f606084860312156124e1576124e0611e53565b5b5f6124ee868287016124b6565b93505060206124ff868287016124b6565b9250506040612510868287016124b6565b9150509250925092565b5f60408201905061252d5f83018561202c565b61253a6020830184611f55565b9392505050565b61254a81611f22565b8114612554575f5ffd5b50565b5f8151905061256581612541565b92915050565b5f602082840312156125805761257f611e53565b5b5f61258d84828501612557565b91505092915050565b7f45524332303a20617070726f76652066726f6d20746865207a65726f206164645f8201527f7265737300000000000000000000000000000000000000000000000000000000602082015250565b5f6125f0602483611dcd565b91506125fb82612596565b604082019050919050565b5f6020820190508181035f83015261261d816125e4565b9050919050565b7f45524332303a20617070726f766520746f20746865207a65726f2061646472655f8201527f7373000000000000000000000000000000000000000000000000000000000000602082015250565b5f61267e602283611dcd565b915061268982612624565b604082019050919050565b5f6020820190508181035f8301526126ab81612672565b9050919050565b7f45524332303a207472616e736665722066726f6d20746865207a65726f2061645f8201527f6472657373000000000000000000000000000000000000000000000000000000602082015250565b5f61270c602583611dcd565b9150612717826126b2565b604082019050919050565b5f6020820190508181035f83015261273981612700565b9050919050565b7f45524332303a207472616e7366657220746f20746865207a65726f20616464725f8201527f6573730000000000000000000000000000000000000000000000000000000000602082015250565b5f61279a602383611dcd565b91506127a582612740565b604082019050919050565b5f6020820190508181035f8301526127c78161278e565b9050919050565b7f5472616e7366657220616d6f756e74206d7573742062652067726561746572205f8201527f7468616e207a65726f0000000000000000000000000000000000000000000000602082015250565b5f612828602983611dcd565b9150612833826127ce565b604082019050919050565b5f6020820190508181035f8301526128558161281c565b9050919050565b5f61286682611eb1565b91507fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff8203612898576128976120f8565b5b600182019050919050565b7f45524332303a2045787465726e616c2063616c6c0000000000000000000000005f82015250565b5f6128d7601483611dcd565b91506128e2826128a3565b602082019050919050565b5f6020820190508181035f830152612904816128cb565b9050919050565b5f61291582611eb1565b915061292083611eb1565b9250828203905081811115612938576129376120f8565b5b92915050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52601260045260245ffd5b5f61297582611eb1565b915061298083611eb1565b9250826129905761298f61293e565b5b828204905092915050565b7f536166654d6174683a206d756c7469706c69636174696f6e206f766572666c6f5f8201527f7700000000000000000000000000000000000000000000000000000000000000602082015250565b5f6129f5602183611dcd565b9150612a008261299b565b604082019050919050565b5f6020820190508181035f830152612a22816129e9565b9050919050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52604160045260245ffd5b7f4e487b71000000000000000000000000000000000000000000000000000000005f52603260045260245ffd5b5f81519050919050565b5f82825260208201905092915050565b5f819050602082019050919050565b612ab581611e76565b82525050565b5f612ac68383612aac565b60208301905092915050565b5f602082019050919050565b5f612ae882612a83565b612af28185612a8d565b9350612afd83612a9d565b805f5b83811015612b2d578151612b148882612abb565b9750612b1f83612ad2565b925050600181019050612b00565b5085935050505092915050565b5f60a082019050612b4d5f830188611f55565b612b5a6020830187612448565b8181036040830152612b6c8186612ade565b9050612b7b606083018561202c565b612b886080830184611f55565b9695505050505050565b5f612b9c82611eb1565b9150612ba783611eb1565b9250828201905080821115612bbf57612bbe6120f8565b5b92915050565b7f536166654d6174683a206164646974696f6e206f766572666c6f7700000000005f82015250565b5f612bf9601b83611dcd565b9150612c0482612bc5565b602082019050919050565b5f6020820190508181035f830152612c2681612bed565b905091905056fe45524332303a207472616e7366657220616d6f756e74206578636565647320616c6c6f77616e6365a2646970667358221220765805b954706eed301db94c6a8cbcac5e6fc86cc3ccab1b7b3f773321c523a464736f6c634300081c0033

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.