ETH Price: $3,508.72 (-5.54%)
 

Overview

ETH Balance

0 ETH

Eth Value

$0.00

Token Holdings

Multichain Info

No addresses found
Transaction Hash
Method
Block
From
To
Harvest209086482024-10-06 19:37:2392 days ago1728243443IN
0xc6947307...4Df3f401b
0 ETH0.000878045.86072623
Harvest208918112024-10-04 11:18:3595 days ago1728040715IN
0xc6947307...4Df3f401b
0 ETH0.000708074.7261914
Harvest208315992024-09-26 1:48:11103 days ago1727315291IN
0xc6947307...4Df3f401b
0 ETH0.0019301812.88341294
Harvest208050422024-09-22 8:52:35107 days ago1726995155IN
0xc6947307...4Df3f401b
0 ETH0.0017932113.64131501
Harvest207594402024-09-15 23:55:11113 days ago1726444511IN
0xc6947307...4Df3f401b
0 ETH0.000225011.65285706
Harvest206932262024-09-06 18:05:11122 days ago1725645911IN
0xc6947307...4Df3f401b
0 ETH0.001514949.23406699
Harvest206881412024-09-06 1:02:23123 days ago1725584543IN
0xc6947307...4Df3f401b
0 ETH0.000236381.62875649
Harvest206881372024-09-06 1:01:35123 days ago1725584495IN
0xc6947307...4Df3f401b
0 ETH0.00024291.48061062
Farm201964732024-06-29 9:33:23192 days ago1719653603IN
0xc6947307...4Df3f401b
0 ETH0.000509132.21424828
Farm201964632024-06-29 9:31:23192 days ago1719653483IN
0xc6947307...4Df3f401b
0 ETH0.000656662.85583951
Farm201272002024-06-19 17:12:59201 days ago1718817179IN
0xc6947307...4Df3f401b
0 ETH0.0030499418.33715857
Farm201084902024-06-17 2:20:35204 days ago1718590835IN
0xc6947307...4Df3f401b
0 ETH0.001112524.83835137
Farm201002542024-06-15 22:45:11205 days ago1718491511IN
0xc6947307...4Df3f401b
0 ETH0.000580313.48899971
Farm200983372024-06-15 16:18:23205 days ago1718468303IN
0xc6947307...4Df3f401b
0 ETH0.000929345.7535607
Farm200837672024-06-13 15:22:35208 days ago1718292155IN
0xc6947307...4Df3f401b
0 ETH0.0040174417.84438664
Harvest200837092024-06-13 15:10:59208 days ago1718291459IN
0xc6947307...4Df3f401b
0 ETH0.0026178416.48359704
Farm200528152024-06-09 7:35:59212 days ago1717918559IN
0xc6947307...4Df3f401b
0 ETH0.000934074.06231152
Farm200402702024-06-07 13:32:35214 days ago1717767155IN
0xc6947307...4Df3f401b
0 ETH0.0040258617.15045238
Farm200240832024-06-05 7:17:59216 days ago1717571879IN
0xc6947307...4Df3f401b
0 ETH0.00225119.79056832
Farm200001032024-06-01 22:57:35219 days ago1717282655IN
0xc6947307...4Df3f401b
0 ETH0.001529886.65381744
Farm199944162024-06-01 3:55:11220 days ago1717214111IN
0xc6947307...4Df3f401b
0 ETH0.001087096.73064792
Farm198975452024-05-18 14:52:11234 days ago1716043931IN
0xc6947307...4Df3f401b
0 ETH0.000920853.92309933
Farm198503552024-05-12 0:25:23240 days ago1715473523IN
0xc6947307...4Df3f401b
0 ETH0.000840963.65754804
Farm198410902024-05-10 17:20:47241 days ago1715361647IN
0xc6947307...4Df3f401b
0 ETH0.0062648727.24876973
Farm198377052024-05-10 5:59:59242 days ago1715320799IN
0xc6947307...4Df3f401b
0 ETH0.000869393.70385644
View all transactions

View more zero value Internal Transactions in Advanced View mode

Advanced mode:
Loading...
Loading

Contract Source Code Verified (Exact Match)

Contract Name:
IntelliQuant_Staking

Compiler Version
v0.8.0+commit.c7dfd78e

Optimization Enabled:
No with 200 runs

Other Settings:
default evmVersion
File 1 of 1 : IntelliQuant_Staking.sol
// SPDX-License-Identifier: MIT
pragma solidity 0.8.0;

// Web: https://intelliquantcoin.com
// Telegram: https://t.me/IntelliQuantOfficial
// Docs: https://docs.intelliquantcoin.com
// Twitter: https://twitter.com/IntelliQuant

//       $$$$$
//       $:::$
//   $$$$$:::$$$$$$ IIIIIIIIIINNNNNNNN        NNNNNNNN     QQQQQQQQQ     UUUUUUUU     UUUUUUUU
// $$::::::::::::::$I::::::::IN:::::::N       N::::::N   QQ:::::::::QQ   U::::::U     U::::::U
//$:::::$$$$$$$::::$I::::::::IN::::::::N      N::::::N QQ:::::::::::::QQ U::::::U     U::::::U
//$::::$       $$$$$II::::::IIN:::::::::N     N::::::NQ:::::::QQQ:::::::QUU:::::U     U:::::UU
//$::::$              I::::I  N::::::::::N    N::::::NQ::::::O   Q::::::Q U:::::U     U:::::U
//$::::$              I::::I  N:::::::::::N   N::::::NQ:::::O     Q:::::Q U:::::D     D:::::U
//$:::::$$$$$$$$$     I::::I  N:::::::N::::N  N::::::NQ:::::O     Q:::::Q U:::::D     D:::::U
// $$::::::::::::$$   I::::I  N::::::N N::::N N::::::NQ:::::O     Q:::::Q U:::::D     D:::::U
//   $$$$$$$$$:::::$  I::::I  N::::::N  N::::N:::::::NQ:::::O     Q:::::Q U:::::D     D:::::U
//            $::::$  I::::I  N::::::N   N:::::::::::NQ:::::O     Q:::::Q U:::::D     D:::::U
//            $::::$  I::::I  N::::::N    N::::::::::NQ:::::O  QQQQ:::::Q U:::::D     D:::::U
//$$$$$       $::::$  I::::I  N::::::N     N:::::::::NQ::::::O Q::::::::Q U::::::U   U::::::U
//$::::$$$$$$$:::::$II::::::IIN::::::N      N::::::::NQ:::::::QQ::::::::Q U:::::::UUU:::::::U
//$::::::::::::::$$ I::::::::IN::::::N       N:::::::N QQ::::::::::::::Q   UU:::::::::::::UU
// $$$$$$:::$$$$$   I::::::::IN::::::N        N::::::N   QQ:::::::::::Q      UU:::::::::UU
//      $:::$       IIIIIIIIIINNNNNNNN         NNNNNNN     QQQQQQQQ::::QQ      UUUUUUUUU
//      $$$$$                                                      Q:::::Q
//

interface IERC20 {
    function transfer(address to, uint256 value) external returns (bool);

    function approve(address spender, uint256 value) external returns (bool);

    function transferFrom(
        address from,
        address to,
        uint256 value
    ) external returns (bool);

    function totalSupply() external view returns (uint256);

    function balanceOf(address who) external view returns (uint256);

    function allowance(
        address owner,
        address spender
    ) external view returns (uint256);

    event Transfer(address indexed from, address indexed to, uint256 value);

    event Approval(
        address indexed owner,
        address indexed spender,
        uint256 value
    );
}

/**
 * @dev Contract module that helps prevent reentrant calls to a function.
 *
 * Inheriting from `ReentrancyGuard` will make the {nonReentrant} modifier
 * available, which can be applied to functions to make sure there are no nested
 * (reentrant) calls to them.
 *
 * Note that because there is a single `nonReentrant` guard, functions marked as
 * `nonReentrant` may not call one another. This can be worked around by making
 * those functions `private`, and then adding `external` `nonReentrant` entry
 * points to them.
 *
 * TIP: If you would like to learn more about reentrancy and alternative ways
 * to protect against it, check out our blog post
 * https://blog.openzeppelin.com/reentrancy-after-istanbul/[Reentrancy After Istanbul].
 */
abstract contract ReentrancyGuard {
    // Booleans are more expensive than uint256 or any type that takes up a full
    // word because each write operation emits an extra SLOAD to first read the
    // slot's contents, replace the bits taken up by the boolean, and then write
    // back. This is the compiler's defense against contract upgrades and
    // pointer aliasing, and it cannot be disabled.

    // The values being non-zero value makes deployment a bit more expensive,
    // but in exchange the refund on every call to nonReentrant will be lower in
    // amount. Since refunds are capped to a percentage of the total
    // transaction's gas, it is best to keep them low in cases like this one, to
    // increase the likelihood of the full refund coming into effect.
    uint256 private constant _NOT_ENTERED = 1;
    uint256 private constant _ENTERED = 2;

    uint256 private _status;

    constructor() {
        _status = _NOT_ENTERED;
    }

    /**
     * @dev Prevents a contract from calling itself, directly or indirectly.
     * Calling a `nonReentrant` function from another `nonReentrant`
     * function is not supported. It is possible to prevent this from happening
     * by making the `nonReentrant` function external, and making it call a
     * `private` function that does the actual work.
     */
    modifier nonReentrant() {
        _nonReentrantBefore();
        _;
        _nonReentrantAfter();
    }

    function _nonReentrantBefore() private {
        // On the first call to nonReentrant, _notEntered will be true
        require(_status != _ENTERED, "ReentrancyGuard: reentrant call");

        // Any calls to nonReentrant after this point will fail
        _status = _ENTERED;
    }

    function _nonReentrantAfter() private {
        // By storing the original value once again, a refund is triggered (see
        // https://eips.ethereum.org/EIPS/eip-2200)
        _status = _NOT_ENTERED;
    }
}

library SafeMath {
    /**

    * @dev Multiplies two unsigned integers, reverts on 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-solidity/pull/522

        if (a == 0) {
            return 0;
        }

        uint256 c = a * b;

        require(c / a == b);

        return c;
    }

    /**

    * @dev Integer division of two unsigned integers truncating the quotient, reverts on division by zero.

    */

    function div(uint256 a, uint256 b) internal pure returns (uint256) {
        // Solidity only automatically asserts when dividing by 0

        require(b > 0);

        uint256 c = a / b;

        // assert(a == b * c + a % b); // There is no case in which this doesn't hold

        return c;
    }

    /**

    * @dev Subtracts two unsigned integers, reverts on overflow (i.e. if subtrahend is greater than minuend).

    */

    function sub(uint256 a, uint256 b) internal pure returns (uint256) {
        require(b <= a);

        uint256 c = a - b;

        return c;
    }

    /**

    * @dev Adds two unsigned integers, reverts on overflow.

    */

    function add(uint256 a, uint256 b) internal pure returns (uint256) {
        uint256 c = a + b;

        require(c >= a);

        return c;
    }

    /**

    * @dev Divides two unsigned integers and returns the remainder (unsigned integer modulo),

    * reverts when dividing by zero.

    */

    function mod(uint256 a, uint256 b) internal pure returns (uint256) {
        require(b != 0);

        return a % b;
    }
}

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

    function _msgData() internal view virtual returns (bytes calldata) {
        return msg.data;
    }
}

abstract contract Pausable is Context {
    /**
     * @dev Emitted when the pause is triggered by `account`.
     */
    event Paused(address account);
    /**
     * @dev Emitted when the pause is lifted by `account`.
     */
    event Unpaused(address account);
    bool private _paused;

    /**
     * @dev Initializes the contract in unpaused state.
     */
    constructor() {
        _paused = false;
    }

    /**
     * @dev Returns true if the contract is paused, and false otherwise.
     */
    function paused() public view virtual returns (bool) {
        return _paused;
    }

    /**
     * @dev Modifier to make a function callable only when the contract is not paused.
     *
     * Requirements:
     *
     * - The contract must not be paused.
     */
    modifier whenNotPaused() {
        require(!paused(), "Pausable: paused");
        _;
    }
    /**
     * @dev Modifier to make a function callable only when the contract is paused.
     *
     * Requirements:
     *
     * - The contract must be paused.
     */
    modifier whenPaused() {
        require(paused(), "Pausable: not paused");
        _;
    }

    /**
     * @dev Triggers stopped state.
     *
     * Requirements:
     *
     * - The contract must not be paused.
     */
    function _pause() internal virtual whenNotPaused {
        _paused = true;
        emit Paused(_msgSender());
    }

    /**
     * @dev Returns to normal state.
     *
     * Requirements:
     *
     * - The contract must be paused.
     */
    function _unpause() internal virtual whenPaused {
        _paused = false;
        emit Unpaused(_msgSender());
    }
}

contract Ownable {
    address private _owner;

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

    /**

     * @dev Initializes the contract setting the deployer as the initial owner.

     */

    constructor() {
        _owner = msg.sender;

        emit OwnershipTransferred(address(0), _owner);
    }

    /**

     * @dev Returns the address of the current owner.

     */

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

    /**

     * @dev Throws if called by any account other than the owner.

     */

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

        _;
    }

    /**

     * @dev Transfers ownership of the contract to a new account (`newOwner`).

     * Can only be called by the current owner.

     */

    function transferOwnership(address newOwner) public onlyOwner {
        require(
            newOwner != address(0),
            "Ownable: new owner is the zero address"
        );

        emit OwnershipTransferred(_owner, newOwner);

        _owner = newOwner;
    }
}

contract IntelliQuant_Staking is Ownable, Pausable, ReentrancyGuard {
    using SafeMath for uint256;
    IERC20 public Token;

    struct userInfo {
        uint256 DepositeToken;
        uint256 lastUpdated;
        uint256 lockableDays;
        uint256 WithdrawReward;
        uint256 WithdrawAbleReward;
        uint256 depositeTime;
        uint256 WithdrawDepositeAmount;
    }

    event Deposite_(
        address indexed to,
        address indexed From,
        uint256 amount,
        uint256 day,
        uint256 time
    );

    mapping(uint256 => uint256) public allocation;
    mapping(address => uint256[]) public depositeToken;
    mapping(address => uint256[]) public lockabledays;
    mapping(address => uint256[]) public depositetime;
    mapping(address => userInfo) public Users;
    mapping(address => bool) public isSpam;

    uint256 public minimumDeposit = 1000000000000000000; //1 token
    uint256 public deductionPercentage = 10000000000000000000; //10%
    uint256 public taxMakeupPercentage = 1000000000000000000; //1% this should be same as transferTaxPercentage in IntelliQuant token contract
    address public taxreceiver;

    uint256 public time = 1 days;

    constructor(IERC20 _token) {
        Token = _token;

        allocation[14] = 416666666660000000; //10 % APY = 0.41 percent
        allocation[30] = 1666666666670000000; //20 % APY= 1.66 percent
        allocation[60] = 5000000000000000000; //30 % APY= 5 percent
        allocation[90] = 12500000000000000000; //50% APY= 12.5 percent
    }

    function farm(
        uint256 _amount,
        uint256 _lockableDays
    ) external whenNotPaused nonReentrant {
        require(isSpam[msg.sender] == false, "Account is spam!");
        require(_amount >= minimumDeposit, "Invalid amount");
        require(allocation[_lockableDays] > 0, "Invalid day selection");
        Token.transferFrom(msg.sender, address(this), _amount);
        depositeToken[msg.sender].push(_amount);
        depositetime[msg.sender].push(uint40(block.timestamp));
        Users[msg.sender].DepositeToken += _amount;
        lockabledays[msg.sender].push(_lockableDays);
        emit Deposite_(
            msg.sender,
            address(this),
            _amount,
            _lockableDays,
            block.timestamp
        );
    }

    function pendindRewards(address _add) public view returns (uint256 reward) {
        uint256 Reward;
        for (uint256 z = 0; z < depositeToken[_add].length; z++) {
            uint256 lockTime = depositetime[_add][z] +
                (lockabledays[_add][z] * time);
            if (block.timestamp > lockTime) {
                reward = (
                    allocation[lockabledays[_add][z]]
                        .mul(depositeToken[_add][z])
                        .div(100)
                ).div(1e18);
                Reward += reward;
            }
        }
        return Reward;
    }

    function harvest(uint256 _index) external whenNotPaused nonReentrant {
        require(
            _index < depositeToken[msg.sender].length,
            "index out of bound"
        );
        require(isSpam[msg.sender] == false, "Account is spam!");
        uint256 deductionfee;

        require(Users[msg.sender].DepositeToken > 0, " Deposit not ");
        uint256 lockTime = depositetime[msg.sender][_index] +
            (lockabledays[msg.sender][_index].mul(time));
        if (block.timestamp > lockTime) {
            uint256 reward = (
                allocation[lockabledays[msg.sender][_index]]
                    .mul(depositeToken[msg.sender][_index])
                    .div(100)
            ).div(1e18);

            Users[msg.sender].WithdrawAbleReward += reward;
            Users[msg.sender].DepositeToken -= depositeToken[msg.sender][
                _index
            ];
            Users[msg.sender].WithdrawDepositeAmount += depositeToken[
                msg.sender
            ][_index];
            depositeToken[msg.sender][_index] = 0;
            lockabledays[msg.sender][_index] = 0;
            depositetime[msg.sender][_index] = 0;
        } else {
            Users[msg.sender].DepositeToken -= depositeToken[msg.sender][
                _index
            ];
            uint256 a;
            if (deductionPercentage > 0) {
                a = (
                    (
                        (depositeToken[msg.sender][_index]).mul(
                            deductionPercentage
                        )
                    ).div(100)
                ).div(1e18);
            }
            uint256 b = depositeToken[msg.sender][_index] - a;
            Users[msg.sender].WithdrawDepositeAmount += b;
            deductionfee += a;
            depositeToken[msg.sender][_index] = 0;
            lockabledays[msg.sender][_index] = 0;
            depositetime[msg.sender][_index] = 0;
        }

        for (
            uint256 i = _index;
            i < depositeToken[msg.sender].length - 1;
            i++
        ) {
            depositeToken[msg.sender][i] = depositeToken[msg.sender][i + 1];
            lockabledays[msg.sender][i] = lockabledays[msg.sender][i + 1];
            depositetime[msg.sender][i] = depositetime[msg.sender][i + 1];
        }
        depositeToken[msg.sender].pop();
        lockabledays[msg.sender].pop();
        depositetime[msg.sender].pop();

        uint256 totalwithdrawAmount;

        totalwithdrawAmount = Users[msg.sender].WithdrawDepositeAmount.add(
            Users[msg.sender].WithdrawAbleReward
        );

        uint256 taxMakeup = (
            (
                (totalwithdrawAmount).mul(
                    taxMakeupPercentage + taxMakeupPercentage.div(2)
                )
            ).div(100)
        ).div(1e18);

        Token.transfer(msg.sender, totalwithdrawAmount + taxMakeup);
        if (deductionfee > 0) {
            Token.transfer(taxreceiver, deductionfee);
        }
        Users[msg.sender].WithdrawReward = Users[msg.sender].WithdrawReward.add(
            Users[msg.sender].WithdrawAbleReward
        );
        Users[msg.sender].WithdrawAbleReward = 0;
        Users[msg.sender].WithdrawDepositeAmount = 0;
    }

    function changeDeductionPercentage(uint256 amount) public onlyOwner {
        deductionPercentage = amount;
    }

    function changeTaxMakeupPercentage(uint256 amount) public onlyOwner {
        taxMakeupPercentage = amount;
    }

    function UserInformation(
        address _add
    )
        public
        view
        returns (uint256[] memory, uint256[] memory, uint256[] memory)
    {
        return (depositeToken[_add], lockabledays[_add], depositetime[_add]);
    }

    function emergencyWithdrawtokens(
        IERC20 _token,
        uint256 _amount
    ) external onlyOwner {
        _token.transfer(msg.sender, _amount);
    }

    function emergencyWithdrawETH(uint256 Amount) external onlyOwner {
        payable(msg.sender).transfer(Amount);
    }

    function changetimeCal(uint256 _time) external onlyOwner {
        time = _time;
    }

    function changeMinimmumAmount(uint256 amount) external onlyOwner {
        minimumDeposit = amount;
    }

    function changePercentages(
        uint256 _14dayspercent,
        uint256 _30dayspercent,
        uint256 _60dayspercent,
        uint256 _90dayspercent
    ) external onlyOwner {
        allocation[14] = _14dayspercent;
        allocation[30] = _30dayspercent;
        allocation[60] = _60dayspercent;
        allocation[90] = _90dayspercent;
    }

    function pausePool() external onlyOwner {
        _pause();
    }

    function UnpausePool() external onlyOwner {
        _unpause();
    }

    function changeToken(IERC20 addr) public onlyOwner {
        Token = addr;
    }

    function addorRemoveSpam(address _Addr, bool _state) external onlyOwner {
        isSpam[_Addr] = _state;
    }

    function settaxreceiver(address _taxreceiver) external onlyOwner {
        taxreceiver = _taxreceiver;
    }

    receive() external payable {
        //  receive the ETH
    }
}

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

Contract Security Audit

Contract ABI

[{"inputs":[{"internalType":"contract IERC20","name":"_token","type":"address"}],"stateMutability":"nonpayable","type":"constructor"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"to","type":"address"},{"indexed":true,"internalType":"address","name":"From","type":"address"},{"indexed":false,"internalType":"uint256","name":"amount","type":"uint256"},{"indexed":false,"internalType":"uint256","name":"day","type":"uint256"},{"indexed":false,"internalType":"uint256","name":"time","type":"uint256"}],"name":"Deposite_","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":false,"internalType":"address","name":"account","type":"address"}],"name":"Paused","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"address","name":"account","type":"address"}],"name":"Unpaused","type":"event"},{"inputs":[],"name":"Token","outputs":[{"internalType":"contract IERC20","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"UnpausePool","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"_add","type":"address"}],"name":"UserInformation","outputs":[{"internalType":"uint256[]","name":"","type":"uint256[]"},{"internalType":"uint256[]","name":"","type":"uint256[]"},{"internalType":"uint256[]","name":"","type":"uint256[]"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"","type":"address"}],"name":"Users","outputs":[{"internalType":"uint256","name":"DepositeToken","type":"uint256"},{"internalType":"uint256","name":"lastUpdated","type":"uint256"},{"internalType":"uint256","name":"lockableDays","type":"uint256"},{"internalType":"uint256","name":"WithdrawReward","type":"uint256"},{"internalType":"uint256","name":"WithdrawAbleReward","type":"uint256"},{"internalType":"uint256","name":"depositeTime","type":"uint256"},{"internalType":"uint256","name":"WithdrawDepositeAmount","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"_Addr","type":"address"},{"internalType":"bool","name":"_state","type":"bool"}],"name":"addorRemoveSpam","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"uint256","name":"","type":"uint256"}],"name":"allocation","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"uint256","name":"amount","type":"uint256"}],"name":"changeDeductionPercentage","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"uint256","name":"amount","type":"uint256"}],"name":"changeMinimmumAmount","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"uint256","name":"_14dayspercent","type":"uint256"},{"internalType":"uint256","name":"_30dayspercent","type":"uint256"},{"internalType":"uint256","name":"_60dayspercent","type":"uint256"},{"internalType":"uint256","name":"_90dayspercent","type":"uint256"}],"name":"changePercentages","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"uint256","name":"amount","type":"uint256"}],"name":"changeTaxMakeupPercentage","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"contract IERC20","name":"addr","type":"address"}],"name":"changeToken","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"uint256","name":"_time","type":"uint256"}],"name":"changetimeCal","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"deductionPercentage","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"","type":"address"},{"internalType":"uint256","name":"","type":"uint256"}],"name":"depositeToken","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"","type":"address"},{"internalType":"uint256","name":"","type":"uint256"}],"name":"depositetime","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"uint256","name":"Amount","type":"uint256"}],"name":"emergencyWithdrawETH","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"contract IERC20","name":"_token","type":"address"},{"internalType":"uint256","name":"_amount","type":"uint256"}],"name":"emergencyWithdrawtokens","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"uint256","name":"_amount","type":"uint256"},{"internalType":"uint256","name":"_lockableDays","type":"uint256"}],"name":"farm","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"uint256","name":"_index","type":"uint256"}],"name":"harvest","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"","type":"address"}],"name":"isSpam","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"","type":"address"},{"internalType":"uint256","name":"","type":"uint256"}],"name":"lockabledays","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"minimumDeposit","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"owner","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"pausePool","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"paused","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"_add","type":"address"}],"name":"pendindRewards","outputs":[{"internalType":"uint256","name":"reward","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"_taxreceiver","type":"address"}],"name":"settaxreceiver","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"taxMakeupPercentage","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"taxreceiver","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"time","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"newOwner","type":"address"}],"name":"transferOwnership","outputs":[],"stateMutability":"nonpayable","type":"function"},{"stateMutability":"payable","type":"receive"}]

6080604052670de0b6b3a7640000600955678ac7230489e80000600a55670de0b6b3a7640000600b5562015180600d553480156200003c57600080fd5b506040516200436c3803806200436c833981810160405281019062000062919062000221565b336000806101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555060008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16600073ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a360008060146101000a81548160ff0219169083151502179055506001808190555080600260006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055506705c84c203003f10060036000600e8152602001908152602001600020819055506717213080c1d9878060036000601e815260200190815260200160002081905550674563918244f4000060036000603c81526020019081526020016000208190555067ad78ebc5ac62000060036000605a81526020019081526020016000208190555050620002af565b6000815190506200021b8162000295565b92915050565b6000602082840312156200023457600080fd5b600062000244848285016200020a565b91505092915050565b60006200025a8262000275565b9050919050565b60006200026e826200024d565b9050919050565b600073ffffffffffffffffffffffffffffffffffffffff82169050919050565b620002a08162000261565b8114620002ac57600080fd5b50565b6140ad80620002bf6000396000f3fe6080604052600436106101dc5760003560e01c80638da5cb5b11610102578063b32c816511610095578063ddc6326211610064578063ddc63262146106b9578063e01c93b9146106e2578063f256dfc51461071f578063f2fde38b1461074a576101e3565b8063b32c8165146105ff578063c241267614610628578063c5b7928814610653578063cd0992051461067c576101e3565b80639b925501116100d15780639b9255011461057f5780639f1bd31e146105a8578063a71038cb146105bf578063aa09d5b7146105e8576101e3565b80638da5cb5b146104ab5780638fb9d7ea146104d657806391dc842e146104ff57806399b956a01461053c576101e3565b8063636bfbab1161017a5780636b792c4b116101495780636b792c4b146103cb5780637b80b13e146103f4578063850bad94146104315780638b00e2eb1461046e576101e3565b8063636bfbab146103235780636445b62c1461034e57806366829b16146103775780636b130dc2146103a0576101e3565b80631ba7ef78116101b65780631ba7ef78146102655780632bcec475146102905780633023f05c146102b95780635c975abb146102f8576101e3565b8063140773bf146101e857806315f18b3d1461021157806316ada5471461023a576101e3565b366101e357005b600080fd5b3480156101f457600080fd5b5061020f600480360381019061020a919061366a565b610773565b005b34801561021d57600080fd5b506102386004803603810190610233919061362e565b61080b565b005b34801561024657600080fd5b5061024f61092b565b60405161025c9190613cd6565b60405180910390f35b34801561027157600080fd5b5061027a610931565b6040516102879190613cd6565b60405180910390f35b34801561029c57600080fd5b506102b760048036038101906102b2919061366a565b610937565b005b3480156102c557600080fd5b506102e060048036038101906102db919061353b565b6109cf565b6040516102ef93929190613b14565b60405180910390f35b34801561030457600080fd5b5061030d610b94565b60405161031a9190613b60565b60405180910390f35b34801561032f57600080fd5b50610338610baa565b6040516103459190613cd6565b60405180910390f35b34801561035a57600080fd5b506103756004803603810190610370919061366a565b610bb0565b005b34801561038357600080fd5b5061039e60048036038101906103999190613605565b610c48565b005b3480156103ac57600080fd5b506103b5610d1a565b6040516103c29190613cd6565b60405180910390f35b3480156103d757600080fd5b506103f260048036038101906103ed919061366a565b610d20565b005b34801561040057600080fd5b5061041b600480360381019061041691906135a0565b610df8565b6040516104289190613cd6565b60405180910390f35b34801561043d57600080fd5b506104586004803603810190610453919061366a565b610e29565b6040516104659190613cd6565b60405180910390f35b34801561047a57600080fd5b506104956004803603810190610490919061353b565b610e41565b6040516104a29190613cd6565b60405180910390f35b3480156104b757600080fd5b506104c061113c565b6040516104cd9190613a99565b60405180910390f35b3480156104e257600080fd5b506104fd60048036038101906104f89190613564565b611165565b005b34801561050b57600080fd5b50610526600480360381019061052191906135a0565b61124e565b6040516105339190613cd6565b60405180910390f35b34801561054857600080fd5b50610563600480360381019061055e919061353b565b61127f565b6040516105769796959493929190613d28565b60405180910390f35b34801561058b57600080fd5b506105a660048036038101906105a1919061353b565b6112c1565b005b3480156105b457600080fd5b506105bd611393565b005b3480156105cb57600080fd5b506105e660048036038101906105e19190613693565b61142b565b005b3480156105f457600080fd5b506105fd611862565b005b34801561060b57600080fd5b50610626600480360381019061062191906136cf565b6118fa565b005b34801561063457600080fd5b5061063d6119f2565b60405161064a9190613b7b565b60405180910390f35b34801561065f57600080fd5b5061067a6004803603810190610675919061366a565b611a18565b005b34801561068857600080fd5b506106a3600480360381019061069e919061353b565b611ab0565b6040516106b09190613b60565b60405180910390f35b3480156106c557600080fd5b506106e060048036038101906106db919061366a565b611ad0565b005b3480156106ee57600080fd5b50610709600480360381019061070491906135a0565b613086565b6040516107169190613cd6565b60405180910390f35b34801561072b57600080fd5b506107346130b7565b6040516107419190613a99565b60405180910390f35b34801561075657600080fd5b50610771600480360381019061076c919061353b565b6130dd565b005b3373ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1614610801576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016107f890613c36565b60405180910390fd5b8060098190555050565b3373ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1614610899576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161089090613c36565b60405180910390fd5b8173ffffffffffffffffffffffffffffffffffffffff1663a9059cbb33836040518363ffffffff1660e01b81526004016108d4929190613aeb565b602060405180830381600087803b1580156108ee57600080fd5b505af1158015610902573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061092691906135dc565b505050565b600d5481565b600b5481565b3373ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16146109c5576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016109bc90613c36565b60405180910390fd5b80600b8190555050565b6060806060600460008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600560008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600660008773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002082805480602002602001604051908101604052809291908181526020018280548015610adc57602002820191906000526020600020905b815481526020019060010190808311610ac8575b5050505050925081805480602002602001604051908101604052809291908181526020018280548015610b2e57602002820191906000526020600020905b815481526020019060010190808311610b1a575b5050505050915080805480602002602001604051908101604052809291908181526020018280548015610b8057602002820191906000526020600020905b815481526020019060010190808311610b6c575b505050505090509250925092509193909250565b60008060149054906101000a900460ff16905090565b60095481565b3373ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1614610c3e576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610c3590613c36565b60405180910390fd5b80600a8190555050565b3373ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1614610cd6576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610ccd90613c36565b60405180910390fd5b80600260006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555050565b600a5481565b3373ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1614610dae576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610da590613c36565b60405180910390fd5b3373ffffffffffffffffffffffffffffffffffffffff166108fc829081150290604051600060405180830381858888f19350505050158015610df4573d6000803e3d6000fd5b5050565b60066020528160005260406000208181548110610e1457600080fd5b90600052602060002001600091509150505481565b60036020528060005260406000206000915090505481565b60008060005b600460008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002080549050811015611132576000600d54600560008773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000208381548110610f0d577f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b9060005260206000200154610f229190613e68565b600660008773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000208381548110610f99577f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b9060005260206000200154610fae9190613de1565b90508042111561111e5761110d670de0b6b3a76400006110ff60646110f1600460008b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000208781548110611043577f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b906000526020600020015460036000600560008e73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000208a815481106110c9577f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b906000526020600020015481526020019081526020016000205461329890919063ffffffff16565b6132dd90919063ffffffff16565b6132dd90919063ffffffff16565b9350838361111b9190613de1565b92505b50808061112a90613f74565b915050610e47565b5080915050919050565b60008060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16905090565b3373ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16146111f3576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016111ea90613c36565b60405180910390fd5b80600860008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff0219169083151502179055505050565b6004602052816000526040600020818154811061126a57600080fd5b90600052602060002001600091509150505481565b60076020528060005260406000206000915090508060000154908060010154908060020154908060030154908060040154908060050154908060060154905087565b3373ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff161461134f576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161134690613c36565b60405180910390fd5b80600c60006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555050565b3373ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1614611421576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161141890613c36565b60405180910390fd5b611429613305565b565b611433610b94565b15611473576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161146a90613c16565b60405180910390fd5b61147b6133a6565b60001515600860003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff1615151461150e576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161150590613c96565b60405180910390fd5b600954821015611553576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161154a90613bf6565b60405180910390fd5b60006003600083815260200190815260200160002054116115a9576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016115a090613c56565b60405180910390fd5b600260009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166323b872dd3330856040518463ffffffff1660e01b815260040161160893929190613ab4565b602060405180830381600087803b15801561162257600080fd5b505af1158015611636573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061165a91906135dc565b50600460003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020829080600181540180825580915050600190039060005260206000200160009091909190915055600660003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002042908060018154018082558091505060019003906000526020600020016000909164ffffffffff1690919091505581600760003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060000160008282546117809190613de1565b92505081905550600560003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000208190806001815401808255809150506001900390600052602060002001600090919091909150553073ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff167fe44628ed4b392c5ef46ffc833d640eefd957e81a312e583e0cc57eed5f04ada384844260405161184e93929190613cf1565b60405180910390a361185e6133f6565b5050565b3373ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16146118f0576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016118e790613c36565b60405180910390fd5b6118f86133ff565b565b3373ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1614611988576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161197f90613c36565b60405180910390fd5b8360036000600e8152602001908152602001600020819055508260036000601e8152602001908152602001600020819055508160036000603c8152602001908152602001600020819055508060036000605a81526020019081526020016000208190555050505050565b600260009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b3373ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1614611aa6576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611a9d90613c36565b60405180910390fd5b80600d8190555050565b60086020528060005260406000206000915054906101000a900460ff1681565b611ad8610b94565b15611b18576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611b0f90613c16565b60405180910390fd5b611b206133a6565b600460003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020805490508110611ba4576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611b9b90613c76565b60405180910390fd5b60001515600860003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff16151514611c37576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611c2e90613c96565b60405180910390fd5b600080600760003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206000015411611cbd576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611cb490613bd6565b60405180910390fd5b6000611d55600d54600560003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000208581548110611d3c577f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b906000526020600020015461329890919063ffffffff16565b600660003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000208481548110611dcc577f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b9060005260206000200154611de19190613de1565b9050804211156122ec576000611f42670de0b6b3a7640000611f346064611f26600460003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000208981548110611e78577f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b906000526020600020015460036000600560003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000208c81548110611efe577f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b906000526020600020015481526020019081526020016000205461329890919063ffffffff16565b6132dd90919063ffffffff16565b6132dd90919063ffffffff16565b905080600760003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206004016000828254611f969190613de1565b92505081905550600460003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000208481548110612014577f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b9060005260206000200154600760003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060000160008282546120709190613ec2565b92505081905550600460003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002084815481106120ee577f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b9060005260206000200154600760003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600601600082825461214a9190613de1565b925050819055506000600460003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002085815481106121ca577f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b90600052602060002001819055506000600560003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000208581548110612251577f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b90600052602060002001819055506000600660003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002085815481106122d8577f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b906000526020600020018190555050612728565b600460003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000208381548110612363577f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b9060005260206000200154600760003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060000160008282546123bf9190613ec2565b92505081905550600080600a54111561249857612495670de0b6b3a76400006124876064612479600a54600460003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000208a81548110612460577f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b906000526020600020015461329890919063ffffffff16565b6132dd90919063ffffffff16565b6132dd90919063ffffffff16565b90505b600081600460003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000208681548110612512577f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b90600052602060002001546125279190613ec2565b905080600760003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600601600082825461257b9190613de1565b92505081905550818461258e9190613de1565b93506000600460003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000208681548110612609577f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b90600052602060002001819055506000600560003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000208681548110612690577f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b90600052602060002001819055506000600660003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000208681548110612717577f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b906000526020600020018190555050505b60008390505b6001600460003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000208054905061277d9190613ec2565b811015612ad057600460003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206001826127d09190613de1565b81548110612807577f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b9060005260206000200154600460003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000208281548110612889577f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b9060005260206000200181905550600560003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206001826128e39190613de1565b8154811061291a577f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b9060005260206000200154600560003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020828154811061299c577f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b9060005260206000200181905550600660003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206001826129f69190613de1565b81548110612a2d577f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b9060005260206000200154600660003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000208281548110612aaf577f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b90600052602060002001819055508080612ac890613f74565b91505061272e565b50600460003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020805480612b46577f4e487b7100000000000000000000000000000000000000000000000000000000600052603160045260246000fd5b60019003818190600052602060002001600090559055600560003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020805480612bd1577f4e487b7100000000000000000000000000000000000000000000000000000000600052603160045260246000fd5b60019003818190600052602060002001600090559055600660003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020805480612c5c577f4e487b7100000000000000000000000000000000000000000000000000000000600052603160045260246000fd5b600190038181906000526020600020016000905590556000612d0b600760003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060040154600760003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600601546134a290919063ffffffff16565b90506000612d71670de0b6b3a7640000612d636064612d55612d396002600b546132dd90919063ffffffff16565b600b54612d469190613de1565b8761329890919063ffffffff16565b6132dd90919063ffffffff16565b6132dd90919063ffffffff16565b9050600260009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663a9059cbb338385612dbe9190613de1565b6040518363ffffffff1660e01b8152600401612ddb929190613aeb565b602060405180830381600087803b158015612df557600080fd5b505af1158015612e09573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190612e2d91906135dc565b506000841115612f0a57600260009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663a9059cbb600c60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16866040518363ffffffff1660e01b8152600401612eb6929190613aeb565b602060405180830381600087803b158015612ed057600080fd5b505af1158015612ee4573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190612f0891906135dc565b505b612fa1600760003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060040154600760003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600301546134a290919063ffffffff16565b600760003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600301819055506000600760003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600401819055506000600760003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060060181905550505050506130836133f6565b50565b600560205281600052604060002081815481106130a257600080fd5b90600052602060002001600091509150505481565b600c60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b3373ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff161461316b576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161316290613c36565b60405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff1614156131db576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016131d290613bb6565b60405180910390fd5b8073ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a3806000806101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555050565b6000808314156132ab57600090506132d7565b600082846132b99190613e68565b90508284826132c89190613e37565b146132d257600080fd5b809150505b92915050565b60008082116132eb57600080fd5b600082846132f99190613e37565b90508091505092915050565b61330d610b94565b61334c576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161334390613b96565b60405180910390fd5b60008060146101000a81548160ff0219169083151502179055507f5db9ee0a495bf2e6ff9c91a7834c1ba4fdd244a5e8aa4e537bd38aeae4b073aa61338f6134ca565b60405161339c9190613a99565b60405180910390a1565b600260015414156133ec576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016133e390613cb6565b60405180910390fd5b6002600181905550565b60018081905550565b613407610b94565b15613447576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161343e90613c16565b60405180910390fd5b6001600060146101000a81548160ff0219169083151502179055507f62e78cea01bee320cd4e420270b5ea74000d11b0c9f74754ebdbfc544b05a25861348b6134ca565b6040516134989190613a99565b60405180910390a1565b60008082846134b19190613de1565b9050838110156134c057600080fd5b8091505092915050565b600033905090565b6000813590506134e18161401b565b92915050565b6000813590506134f681614032565b92915050565b60008151905061350b81614032565b92915050565b60008135905061352081614049565b92915050565b60008135905061353581614060565b92915050565b60006020828403121561354d57600080fd5b600061355b848285016134d2565b91505092915050565b6000806040838503121561357757600080fd5b6000613585858286016134d2565b9250506020613596858286016134e7565b9150509250929050565b600080604083850312156135b357600080fd5b60006135c1858286016134d2565b92505060206135d285828601613526565b9150509250929050565b6000602082840312156135ee57600080fd5b60006135fc848285016134fc565b91505092915050565b60006020828403121561361757600080fd5b600061362584828501613511565b91505092915050565b6000806040838503121561364157600080fd5b600061364f85828601613511565b925050602061366085828601613526565b9150509250929050565b60006020828403121561367c57600080fd5b600061368a84828501613526565b91505092915050565b600080604083850312156136a657600080fd5b60006136b485828601613526565b92505060206136c585828601613526565b9150509250929050565b600080600080608085870312156136e557600080fd5b60006136f387828801613526565b945050602061370487828801613526565b935050604061371587828801613526565b925050606061372687828801613526565b91505092959194509250565b600061373e8383613a7b565b60208301905092915050565b61375381613ef6565b82525050565b600061376482613da7565b61376e8185613dbf565b935061377983613d97565b8060005b838110156137aa5781516137918882613732565b975061379c83613db2565b92505060018101905061377d565b5085935050505092915050565b6137c081613f08565b82525050565b6137cf81613f50565b82525050565b60006137e2601483613dd0565b91507f5061757361626c653a206e6f74207061757365640000000000000000000000006000830152602082019050919050565b6000613822602683613dd0565b91507f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160008301527f64647265737300000000000000000000000000000000000000000000000000006020830152604082019050919050565b6000613888600d83613dd0565b91507f204465706f736974206e6f7420000000000000000000000000000000000000006000830152602082019050919050565b60006138c8600e83613dd0565b91507f496e76616c696420616d6f756e740000000000000000000000000000000000006000830152602082019050919050565b6000613908601083613dd0565b91507f5061757361626c653a20706175736564000000000000000000000000000000006000830152602082019050919050565b6000613948602083613dd0565b91507f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e65726000830152602082019050919050565b6000613988601583613dd0565b91507f496e76616c6964206461792073656c656374696f6e00000000000000000000006000830152602082019050919050565b60006139c8601283613dd0565b91507f696e646578206f7574206f6620626f756e6400000000000000000000000000006000830152602082019050919050565b6000613a08601083613dd0565b91507f4163636f756e74206973207370616d21000000000000000000000000000000006000830152602082019050919050565b6000613a48601f83613dd0565b91507f5265656e7472616e637947756172643a207265656e7472616e742063616c6c006000830152602082019050919050565b613a8481613f46565b82525050565b613a9381613f46565b82525050565b6000602082019050613aae600083018461374a565b92915050565b6000606082019050613ac9600083018661374a565b613ad6602083018561374a565b613ae36040830184613a8a565b949350505050565b6000604082019050613b00600083018561374a565b613b0d6020830184613a8a565b9392505050565b60006060820190508181036000830152613b2e8186613759565b90508181036020830152613b428185613759565b90508181036040830152613b568184613759565b9050949350505050565b6000602082019050613b7560008301846137b7565b92915050565b6000602082019050613b9060008301846137c6565b92915050565b60006020820190508181036000830152613baf816137d5565b9050919050565b60006020820190508181036000830152613bcf81613815565b9050919050565b60006020820190508181036000830152613bef8161387b565b9050919050565b60006020820190508181036000830152613c0f816138bb565b9050919050565b60006020820190508181036000830152613c2f816138fb565b9050919050565b60006020820190508181036000830152613c4f8161393b565b9050919050565b60006020820190508181036000830152613c6f8161397b565b9050919050565b60006020820190508181036000830152613c8f816139bb565b9050919050565b60006020820190508181036000830152613caf816139fb565b9050919050565b60006020820190508181036000830152613ccf81613a3b565b9050919050565b6000602082019050613ceb6000830184613a8a565b92915050565b6000606082019050613d066000830186613a8a565b613d136020830185613a8a565b613d206040830184613a8a565b949350505050565b600060e082019050613d3d600083018a613a8a565b613d4a6020830189613a8a565b613d576040830188613a8a565b613d646060830187613a8a565b613d716080830186613a8a565b613d7e60a0830185613a8a565b613d8b60c0830184613a8a565b98975050505050505050565b6000819050602082019050919050565b600081519050919050565b6000602082019050919050565b600082825260208201905092915050565b600082825260208201905092915050565b6000613dec82613f46565b9150613df783613f46565b9250827fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff03821115613e2c57613e2b613fbd565b5b828201905092915050565b6000613e4282613f46565b9150613e4d83613f46565b925082613e5d57613e5c613fec565b5b828204905092915050565b6000613e7382613f46565b9150613e7e83613f46565b9250817fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff0483118215151615613eb757613eb6613fbd565b5b828202905092915050565b6000613ecd82613f46565b9150613ed883613f46565b925082821015613eeb57613eea613fbd565b5b828203905092915050565b6000613f0182613f26565b9050919050565b60008115159050919050565b6000613f1f82613ef6565b9050919050565b600073ffffffffffffffffffffffffffffffffffffffff82169050919050565b6000819050919050565b6000613f5b82613f62565b9050919050565b6000613f6d82613f26565b9050919050565b6000613f7f82613f46565b91507fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff821415613fb257613fb1613fbd565b5b600182019050919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601260045260246000fd5b61402481613ef6565b811461402f57600080fd5b50565b61403b81613f08565b811461404657600080fd5b50565b61405281613f14565b811461405d57600080fd5b50565b61406981613f46565b811461407457600080fd5b5056fea26469706673582212200c07147cd5ac9077d8334578b55a1893ef5b9ab2626e48517b4d36be5c7bc28564736f6c6343000800003300000000000000000000000031bd628c038f08537e0229f0d8c0a7b18b0cda7b

Deployed Bytecode

0x6080604052600436106101dc5760003560e01c80638da5cb5b11610102578063b32c816511610095578063ddc6326211610064578063ddc63262146106b9578063e01c93b9146106e2578063f256dfc51461071f578063f2fde38b1461074a576101e3565b8063b32c8165146105ff578063c241267614610628578063c5b7928814610653578063cd0992051461067c576101e3565b80639b925501116100d15780639b9255011461057f5780639f1bd31e146105a8578063a71038cb146105bf578063aa09d5b7146105e8576101e3565b80638da5cb5b146104ab5780638fb9d7ea146104d657806391dc842e146104ff57806399b956a01461053c576101e3565b8063636bfbab1161017a5780636b792c4b116101495780636b792c4b146103cb5780637b80b13e146103f4578063850bad94146104315780638b00e2eb1461046e576101e3565b8063636bfbab146103235780636445b62c1461034e57806366829b16146103775780636b130dc2146103a0576101e3565b80631ba7ef78116101b65780631ba7ef78146102655780632bcec475146102905780633023f05c146102b95780635c975abb146102f8576101e3565b8063140773bf146101e857806315f18b3d1461021157806316ada5471461023a576101e3565b366101e357005b600080fd5b3480156101f457600080fd5b5061020f600480360381019061020a919061366a565b610773565b005b34801561021d57600080fd5b506102386004803603810190610233919061362e565b61080b565b005b34801561024657600080fd5b5061024f61092b565b60405161025c9190613cd6565b60405180910390f35b34801561027157600080fd5b5061027a610931565b6040516102879190613cd6565b60405180910390f35b34801561029c57600080fd5b506102b760048036038101906102b2919061366a565b610937565b005b3480156102c557600080fd5b506102e060048036038101906102db919061353b565b6109cf565b6040516102ef93929190613b14565b60405180910390f35b34801561030457600080fd5b5061030d610b94565b60405161031a9190613b60565b60405180910390f35b34801561032f57600080fd5b50610338610baa565b6040516103459190613cd6565b60405180910390f35b34801561035a57600080fd5b506103756004803603810190610370919061366a565b610bb0565b005b34801561038357600080fd5b5061039e60048036038101906103999190613605565b610c48565b005b3480156103ac57600080fd5b506103b5610d1a565b6040516103c29190613cd6565b60405180910390f35b3480156103d757600080fd5b506103f260048036038101906103ed919061366a565b610d20565b005b34801561040057600080fd5b5061041b600480360381019061041691906135a0565b610df8565b6040516104289190613cd6565b60405180910390f35b34801561043d57600080fd5b506104586004803603810190610453919061366a565b610e29565b6040516104659190613cd6565b60405180910390f35b34801561047a57600080fd5b506104956004803603810190610490919061353b565b610e41565b6040516104a29190613cd6565b60405180910390f35b3480156104b757600080fd5b506104c061113c565b6040516104cd9190613a99565b60405180910390f35b3480156104e257600080fd5b506104fd60048036038101906104f89190613564565b611165565b005b34801561050b57600080fd5b50610526600480360381019061052191906135a0565b61124e565b6040516105339190613cd6565b60405180910390f35b34801561054857600080fd5b50610563600480360381019061055e919061353b565b61127f565b6040516105769796959493929190613d28565b60405180910390f35b34801561058b57600080fd5b506105a660048036038101906105a1919061353b565b6112c1565b005b3480156105b457600080fd5b506105bd611393565b005b3480156105cb57600080fd5b506105e660048036038101906105e19190613693565b61142b565b005b3480156105f457600080fd5b506105fd611862565b005b34801561060b57600080fd5b50610626600480360381019061062191906136cf565b6118fa565b005b34801561063457600080fd5b5061063d6119f2565b60405161064a9190613b7b565b60405180910390f35b34801561065f57600080fd5b5061067a6004803603810190610675919061366a565b611a18565b005b34801561068857600080fd5b506106a3600480360381019061069e919061353b565b611ab0565b6040516106b09190613b60565b60405180910390f35b3480156106c557600080fd5b506106e060048036038101906106db919061366a565b611ad0565b005b3480156106ee57600080fd5b50610709600480360381019061070491906135a0565b613086565b6040516107169190613cd6565b60405180910390f35b34801561072b57600080fd5b506107346130b7565b6040516107419190613a99565b60405180910390f35b34801561075657600080fd5b50610771600480360381019061076c919061353b565b6130dd565b005b3373ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1614610801576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016107f890613c36565b60405180910390fd5b8060098190555050565b3373ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1614610899576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161089090613c36565b60405180910390fd5b8173ffffffffffffffffffffffffffffffffffffffff1663a9059cbb33836040518363ffffffff1660e01b81526004016108d4929190613aeb565b602060405180830381600087803b1580156108ee57600080fd5b505af1158015610902573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061092691906135dc565b505050565b600d5481565b600b5481565b3373ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16146109c5576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016109bc90613c36565b60405180910390fd5b80600b8190555050565b6060806060600460008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600560008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600660008773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002082805480602002602001604051908101604052809291908181526020018280548015610adc57602002820191906000526020600020905b815481526020019060010190808311610ac8575b5050505050925081805480602002602001604051908101604052809291908181526020018280548015610b2e57602002820191906000526020600020905b815481526020019060010190808311610b1a575b5050505050915080805480602002602001604051908101604052809291908181526020018280548015610b8057602002820191906000526020600020905b815481526020019060010190808311610b6c575b505050505090509250925092509193909250565b60008060149054906101000a900460ff16905090565b60095481565b3373ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1614610c3e576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610c3590613c36565b60405180910390fd5b80600a8190555050565b3373ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1614610cd6576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610ccd90613c36565b60405180910390fd5b80600260006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555050565b600a5481565b3373ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1614610dae576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610da590613c36565b60405180910390fd5b3373ffffffffffffffffffffffffffffffffffffffff166108fc829081150290604051600060405180830381858888f19350505050158015610df4573d6000803e3d6000fd5b5050565b60066020528160005260406000208181548110610e1457600080fd5b90600052602060002001600091509150505481565b60036020528060005260406000206000915090505481565b60008060005b600460008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002080549050811015611132576000600d54600560008773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000208381548110610f0d577f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b9060005260206000200154610f229190613e68565b600660008773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000208381548110610f99577f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b9060005260206000200154610fae9190613de1565b90508042111561111e5761110d670de0b6b3a76400006110ff60646110f1600460008b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000208781548110611043577f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b906000526020600020015460036000600560008e73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000208a815481106110c9577f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b906000526020600020015481526020019081526020016000205461329890919063ffffffff16565b6132dd90919063ffffffff16565b6132dd90919063ffffffff16565b9350838361111b9190613de1565b92505b50808061112a90613f74565b915050610e47565b5080915050919050565b60008060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16905090565b3373ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16146111f3576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016111ea90613c36565b60405180910390fd5b80600860008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff0219169083151502179055505050565b6004602052816000526040600020818154811061126a57600080fd5b90600052602060002001600091509150505481565b60076020528060005260406000206000915090508060000154908060010154908060020154908060030154908060040154908060050154908060060154905087565b3373ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff161461134f576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161134690613c36565b60405180910390fd5b80600c60006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555050565b3373ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1614611421576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161141890613c36565b60405180910390fd5b611429613305565b565b611433610b94565b15611473576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161146a90613c16565b60405180910390fd5b61147b6133a6565b60001515600860003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff1615151461150e576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161150590613c96565b60405180910390fd5b600954821015611553576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161154a90613bf6565b60405180910390fd5b60006003600083815260200190815260200160002054116115a9576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016115a090613c56565b60405180910390fd5b600260009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166323b872dd3330856040518463ffffffff1660e01b815260040161160893929190613ab4565b602060405180830381600087803b15801561162257600080fd5b505af1158015611636573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061165a91906135dc565b50600460003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020829080600181540180825580915050600190039060005260206000200160009091909190915055600660003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002042908060018154018082558091505060019003906000526020600020016000909164ffffffffff1690919091505581600760003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060000160008282546117809190613de1565b92505081905550600560003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000208190806001815401808255809150506001900390600052602060002001600090919091909150553073ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff167fe44628ed4b392c5ef46ffc833d640eefd957e81a312e583e0cc57eed5f04ada384844260405161184e93929190613cf1565b60405180910390a361185e6133f6565b5050565b3373ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16146118f0576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016118e790613c36565b60405180910390fd5b6118f86133ff565b565b3373ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1614611988576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161197f90613c36565b60405180910390fd5b8360036000600e8152602001908152602001600020819055508260036000601e8152602001908152602001600020819055508160036000603c8152602001908152602001600020819055508060036000605a81526020019081526020016000208190555050505050565b600260009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b3373ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1614611aa6576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611a9d90613c36565b60405180910390fd5b80600d8190555050565b60086020528060005260406000206000915054906101000a900460ff1681565b611ad8610b94565b15611b18576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611b0f90613c16565b60405180910390fd5b611b206133a6565b600460003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020805490508110611ba4576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611b9b90613c76565b60405180910390fd5b60001515600860003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff16151514611c37576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611c2e90613c96565b60405180910390fd5b600080600760003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206000015411611cbd576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611cb490613bd6565b60405180910390fd5b6000611d55600d54600560003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000208581548110611d3c577f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b906000526020600020015461329890919063ffffffff16565b600660003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000208481548110611dcc577f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b9060005260206000200154611de19190613de1565b9050804211156122ec576000611f42670de0b6b3a7640000611f346064611f26600460003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000208981548110611e78577f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b906000526020600020015460036000600560003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000208c81548110611efe577f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b906000526020600020015481526020019081526020016000205461329890919063ffffffff16565b6132dd90919063ffffffff16565b6132dd90919063ffffffff16565b905080600760003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206004016000828254611f969190613de1565b92505081905550600460003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000208481548110612014577f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b9060005260206000200154600760003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060000160008282546120709190613ec2565b92505081905550600460003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002084815481106120ee577f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b9060005260206000200154600760003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600601600082825461214a9190613de1565b925050819055506000600460003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002085815481106121ca577f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b90600052602060002001819055506000600560003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000208581548110612251577f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b90600052602060002001819055506000600660003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002085815481106122d8577f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b906000526020600020018190555050612728565b600460003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000208381548110612363577f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b9060005260206000200154600760003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060000160008282546123bf9190613ec2565b92505081905550600080600a54111561249857612495670de0b6b3a76400006124876064612479600a54600460003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000208a81548110612460577f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b906000526020600020015461329890919063ffffffff16565b6132dd90919063ffffffff16565b6132dd90919063ffffffff16565b90505b600081600460003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000208681548110612512577f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b90600052602060002001546125279190613ec2565b905080600760003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600601600082825461257b9190613de1565b92505081905550818461258e9190613de1565b93506000600460003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000208681548110612609577f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b90600052602060002001819055506000600560003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000208681548110612690577f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b90600052602060002001819055506000600660003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000208681548110612717577f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b906000526020600020018190555050505b60008390505b6001600460003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000208054905061277d9190613ec2565b811015612ad057600460003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206001826127d09190613de1565b81548110612807577f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b9060005260206000200154600460003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000208281548110612889577f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b9060005260206000200181905550600560003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206001826128e39190613de1565b8154811061291a577f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b9060005260206000200154600560003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020828154811061299c577f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b9060005260206000200181905550600660003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206001826129f69190613de1565b81548110612a2d577f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b9060005260206000200154600660003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000208281548110612aaf577f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b90600052602060002001819055508080612ac890613f74565b91505061272e565b50600460003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020805480612b46577f4e487b7100000000000000000000000000000000000000000000000000000000600052603160045260246000fd5b60019003818190600052602060002001600090559055600560003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020805480612bd1577f4e487b7100000000000000000000000000000000000000000000000000000000600052603160045260246000fd5b60019003818190600052602060002001600090559055600660003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020805480612c5c577f4e487b7100000000000000000000000000000000000000000000000000000000600052603160045260246000fd5b600190038181906000526020600020016000905590556000612d0b600760003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060040154600760003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600601546134a290919063ffffffff16565b90506000612d71670de0b6b3a7640000612d636064612d55612d396002600b546132dd90919063ffffffff16565b600b54612d469190613de1565b8761329890919063ffffffff16565b6132dd90919063ffffffff16565b6132dd90919063ffffffff16565b9050600260009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663a9059cbb338385612dbe9190613de1565b6040518363ffffffff1660e01b8152600401612ddb929190613aeb565b602060405180830381600087803b158015612df557600080fd5b505af1158015612e09573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190612e2d91906135dc565b506000841115612f0a57600260009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663a9059cbb600c60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16866040518363ffffffff1660e01b8152600401612eb6929190613aeb565b602060405180830381600087803b158015612ed057600080fd5b505af1158015612ee4573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190612f0891906135dc565b505b612fa1600760003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060040154600760003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600301546134a290919063ffffffff16565b600760003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600301819055506000600760003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600401819055506000600760003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060060181905550505050506130836133f6565b50565b600560205281600052604060002081815481106130a257600080fd5b90600052602060002001600091509150505481565b600c60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b3373ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff161461316b576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161316290613c36565b60405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff1614156131db576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016131d290613bb6565b60405180910390fd5b8073ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a3806000806101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555050565b6000808314156132ab57600090506132d7565b600082846132b99190613e68565b90508284826132c89190613e37565b146132d257600080fd5b809150505b92915050565b60008082116132eb57600080fd5b600082846132f99190613e37565b90508091505092915050565b61330d610b94565b61334c576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161334390613b96565b60405180910390fd5b60008060146101000a81548160ff0219169083151502179055507f5db9ee0a495bf2e6ff9c91a7834c1ba4fdd244a5e8aa4e537bd38aeae4b073aa61338f6134ca565b60405161339c9190613a99565b60405180910390a1565b600260015414156133ec576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016133e390613cb6565b60405180910390fd5b6002600181905550565b60018081905550565b613407610b94565b15613447576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161343e90613c16565b60405180910390fd5b6001600060146101000a81548160ff0219169083151502179055507f62e78cea01bee320cd4e420270b5ea74000d11b0c9f74754ebdbfc544b05a25861348b6134ca565b6040516134989190613a99565b60405180910390a1565b60008082846134b19190613de1565b9050838110156134c057600080fd5b8091505092915050565b600033905090565b6000813590506134e18161401b565b92915050565b6000813590506134f681614032565b92915050565b60008151905061350b81614032565b92915050565b60008135905061352081614049565b92915050565b60008135905061353581614060565b92915050565b60006020828403121561354d57600080fd5b600061355b848285016134d2565b91505092915050565b6000806040838503121561357757600080fd5b6000613585858286016134d2565b9250506020613596858286016134e7565b9150509250929050565b600080604083850312156135b357600080fd5b60006135c1858286016134d2565b92505060206135d285828601613526565b9150509250929050565b6000602082840312156135ee57600080fd5b60006135fc848285016134fc565b91505092915050565b60006020828403121561361757600080fd5b600061362584828501613511565b91505092915050565b6000806040838503121561364157600080fd5b600061364f85828601613511565b925050602061366085828601613526565b9150509250929050565b60006020828403121561367c57600080fd5b600061368a84828501613526565b91505092915050565b600080604083850312156136a657600080fd5b60006136b485828601613526565b92505060206136c585828601613526565b9150509250929050565b600080600080608085870312156136e557600080fd5b60006136f387828801613526565b945050602061370487828801613526565b935050604061371587828801613526565b925050606061372687828801613526565b91505092959194509250565b600061373e8383613a7b565b60208301905092915050565b61375381613ef6565b82525050565b600061376482613da7565b61376e8185613dbf565b935061377983613d97565b8060005b838110156137aa5781516137918882613732565b975061379c83613db2565b92505060018101905061377d565b5085935050505092915050565b6137c081613f08565b82525050565b6137cf81613f50565b82525050565b60006137e2601483613dd0565b91507f5061757361626c653a206e6f74207061757365640000000000000000000000006000830152602082019050919050565b6000613822602683613dd0565b91507f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160008301527f64647265737300000000000000000000000000000000000000000000000000006020830152604082019050919050565b6000613888600d83613dd0565b91507f204465706f736974206e6f7420000000000000000000000000000000000000006000830152602082019050919050565b60006138c8600e83613dd0565b91507f496e76616c696420616d6f756e740000000000000000000000000000000000006000830152602082019050919050565b6000613908601083613dd0565b91507f5061757361626c653a20706175736564000000000000000000000000000000006000830152602082019050919050565b6000613948602083613dd0565b91507f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e65726000830152602082019050919050565b6000613988601583613dd0565b91507f496e76616c6964206461792073656c656374696f6e00000000000000000000006000830152602082019050919050565b60006139c8601283613dd0565b91507f696e646578206f7574206f6620626f756e6400000000000000000000000000006000830152602082019050919050565b6000613a08601083613dd0565b91507f4163636f756e74206973207370616d21000000000000000000000000000000006000830152602082019050919050565b6000613a48601f83613dd0565b91507f5265656e7472616e637947756172643a207265656e7472616e742063616c6c006000830152602082019050919050565b613a8481613f46565b82525050565b613a9381613f46565b82525050565b6000602082019050613aae600083018461374a565b92915050565b6000606082019050613ac9600083018661374a565b613ad6602083018561374a565b613ae36040830184613a8a565b949350505050565b6000604082019050613b00600083018561374a565b613b0d6020830184613a8a565b9392505050565b60006060820190508181036000830152613b2e8186613759565b90508181036020830152613b428185613759565b90508181036040830152613b568184613759565b9050949350505050565b6000602082019050613b7560008301846137b7565b92915050565b6000602082019050613b9060008301846137c6565b92915050565b60006020820190508181036000830152613baf816137d5565b9050919050565b60006020820190508181036000830152613bcf81613815565b9050919050565b60006020820190508181036000830152613bef8161387b565b9050919050565b60006020820190508181036000830152613c0f816138bb565b9050919050565b60006020820190508181036000830152613c2f816138fb565b9050919050565b60006020820190508181036000830152613c4f8161393b565b9050919050565b60006020820190508181036000830152613c6f8161397b565b9050919050565b60006020820190508181036000830152613c8f816139bb565b9050919050565b60006020820190508181036000830152613caf816139fb565b9050919050565b60006020820190508181036000830152613ccf81613a3b565b9050919050565b6000602082019050613ceb6000830184613a8a565b92915050565b6000606082019050613d066000830186613a8a565b613d136020830185613a8a565b613d206040830184613a8a565b949350505050565b600060e082019050613d3d600083018a613a8a565b613d4a6020830189613a8a565b613d576040830188613a8a565b613d646060830187613a8a565b613d716080830186613a8a565b613d7e60a0830185613a8a565b613d8b60c0830184613a8a565b98975050505050505050565b6000819050602082019050919050565b600081519050919050565b6000602082019050919050565b600082825260208201905092915050565b600082825260208201905092915050565b6000613dec82613f46565b9150613df783613f46565b9250827fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff03821115613e2c57613e2b613fbd565b5b828201905092915050565b6000613e4282613f46565b9150613e4d83613f46565b925082613e5d57613e5c613fec565b5b828204905092915050565b6000613e7382613f46565b9150613e7e83613f46565b9250817fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff0483118215151615613eb757613eb6613fbd565b5b828202905092915050565b6000613ecd82613f46565b9150613ed883613f46565b925082821015613eeb57613eea613fbd565b5b828203905092915050565b6000613f0182613f26565b9050919050565b60008115159050919050565b6000613f1f82613ef6565b9050919050565b600073ffffffffffffffffffffffffffffffffffffffff82169050919050565b6000819050919050565b6000613f5b82613f62565b9050919050565b6000613f6d82613f26565b9050919050565b6000613f7f82613f46565b91507fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff821415613fb257613fb1613fbd565b5b600182019050919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601260045260246000fd5b61402481613ef6565b811461402f57600080fd5b50565b61403b81613f08565b811461404657600080fd5b50565b61405281613f14565b811461405d57600080fd5b50565b61406981613f46565b811461407457600080fd5b5056fea26469706673582212200c07147cd5ac9077d8334578b55a1893ef5b9ab2626e48517b4d36be5c7bc28564736f6c63430008000033

Constructor Arguments (ABI-Encoded and is the last bytes of the Contract Creation Code above)

00000000000000000000000031bd628c038f08537e0229f0d8c0a7b18b0cda7b

-----Decoded View---------------
Arg [0] : _token (address): 0x31Bd628c038f08537e0229f0D8c0a7b18B0CDa7B

-----Encoded View---------------
1 Constructor Arguments found :
Arg [0] : 00000000000000000000000031bd628c038f08537e0229f0d8c0a7b18b0cda7b


Block Transaction Difficulty Gas Used Reward
View All Blocks Produced

Block Uncle Number Difficulty Gas Used Reward
View All Uncles
Loading...
Loading
Loading...
Loading

Validator Index Block Amount
View All Withdrawals

Transaction Hash Block Value Eth2 PubKey Valid
View All Deposits
Loading...
Loading
[ Download: CSV Export  ]

A contract address hosts a smart contract, which is a set of code stored on the blockchain that runs when predetermined conditions are met. Learn more about addresses in our Knowledge Base.