ETH Price: $3,410.44 (-1.52%)
Gas: 9 Gwei

Contract

0x5d43b66da68706D39f6C97F7f1415615672b446b
 

Overview

ETH Balance

0 ETH

Eth Value

$0.00

More Info

Private Name Tags

TokenTracker

ROGIN.AI (ROG) (@$0.4835)

Multichain Info

No addresses found
Transaction Hash
Method
Block
From
To
Value
Transfer202196102024-07-02 15:05:2358 mins ago1719932723IN
ROGIN.AI: ROG
0 ETH0.000324738.63486299
Transfer202195852024-07-02 15:00:111 hr ago1719932411IN
ROGIN.AI: ROG
0 ETH0.001487725
Transfer202154932024-07-02 1:16:3514 hrs ago1719882995IN
ROGIN.AI: ROG
0 ETH0.001487725
Transfer202132502024-07-01 17:46:1122 hrs ago1719855971IN
ROGIN.AI: ROG
0 ETH0.001060225
Transfer202131202024-07-01 17:20:1122 hrs ago1719854411IN
ROGIN.AI: ROG
0 ETH0.000297757.91737769
Transfer202131002024-07-01 17:16:1122 hrs ago1719854171IN
ROGIN.AI: ROG
0 ETH0.001487725
Transfer202121992024-07-01 14:15:1125 hrs ago1719843311IN
ROGIN.AI: ROG
0 ETH0.000373589.93373938
Transfer202121592024-07-01 14:07:1125 hrs ago1719842831IN
ROGIN.AI: ROG
0 ETH0.001487725
Transfer202093842024-07-01 4:48:3535 hrs ago1719809315IN
ROGIN.AI: ROG
0 ETH0.001060225
Transfer202091972024-07-01 4:11:1135 hrs ago1719807071IN
ROGIN.AI: ROG
0 ETH0.001060225
Transfer202087932024-07-01 2:50:1137 hrs ago1719802211IN
ROGIN.AI: ROG
0 ETH0.000156534.1623308
Transfer202087582024-07-01 2:43:1137 hrs ago1719801791IN
ROGIN.AI: ROG
0 ETH0.001487725
Transfer202086942024-07-01 2:30:1137 hrs ago1719801011IN
ROGIN.AI: ROG
0 ETH0.001060225
Transfer202084212024-07-01 1:35:1138 hrs ago1719797711IN
ROGIN.AI: ROG
0 ETH0.001060225
Transfer202083432024-07-01 1:19:3538 hrs ago1719796775IN
ROGIN.AI: ROG
0 ETH0.001060225
Transfer202078812024-06-30 23:46:3540 hrs ago1719791195IN
ROGIN.AI: ROG
0 ETH0.001060225
Transfer202073442024-06-30 21:58:4742 hrs ago1719784727IN
ROGIN.AI: ROG
0 ETH0.001487725
Transfer202062272024-06-30 18:15:1145 hrs ago1719771311IN
ROGIN.AI: ROG
0 ETH0.000150924.01302621
Transfer202061952024-06-30 18:08:4745 hrs ago1719770927IN
ROGIN.AI: ROG
0 ETH0.001487725
Transfer202059702024-06-30 17:23:1146 hrs ago1719768191IN
ROGIN.AI: ROG
0 ETH0.001487725
Transfer202054732024-06-30 15:43:352 days ago1719762215IN
ROGIN.AI: ROG
0 ETH0.001059925
Transfer202051332024-06-30 14:35:112 days ago1719758111IN
ROGIN.AI: ROG
0 ETH0.001060225
Transfer202042342024-06-30 11:34:352 days ago1719747275IN
ROGIN.AI: ROG
0 ETH0.001060225
Transfer202035112024-06-30 9:09:112 days ago1719738551IN
ROGIN.AI: ROG
0 ETH0.001487725
Transfer202033702024-06-30 8:40:472 days ago1719736847IN
ROGIN.AI: ROG
0 ETH0.001487725
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:
ROG

Compiler Version
v0.8.0+commit.c7dfd78e

Optimization Enabled:
No with 200 runs

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

pragma solidity 0.8.0;

import "./erc20/ERC20Lockable.sol";
import "./erc20/ERC20Burnable.sol";
import "./erc20/ERC20Mintable.sol";
import "./library/Pausable.sol";
import "./library/Freezable.sol";

contract ROG is ERC20Lockable, ERC20Burnable, ERC20Mintable, Freezable {
    string private constant _name = "ROGIN.AI";
    string private constant _symbol = "ROG";
    uint8 private constant _decimals = 18;
    uint256 private constant _initial_supply = 2_000_000_000;

    constructor() Ownable() {
        _cap = 3_000_000_000 * (10**uint256(_decimals));
        _mint(msg.sender, _initial_supply * (10**uint256(_decimals)));
    }

    function transfer(address to, uint256 amount)
        external
        override
        whenNotFrozen(msg.sender)
        whenNotPaused
        checkLock(msg.sender, amount)
        returns (bool success)
    {
        require(
            to != address(0),
            "ROG/transfer : Should not send to zero address"
        );
        _transfer(msg.sender, to, amount);
        success = true;
    }

    function transferFrom(
        address from,
        address to,
        uint256 amount
    )
        external
        override
        whenNotFrozen(from)
        whenNotPaused
        checkLock(from, amount)
        returns (bool success)
    {
        require(
            to != address(0),
            "ROG/transferFrom : Should not send to zero address"
        );
        _transfer(from, to, amount);
        _approve(from, msg.sender, _allowances[from][msg.sender] - amount);
        success = true;
    }

    function approve(address spender, uint256 amount)
        external
        override
        returns (bool success)
    {
        require(
            spender != address(0),
            "ROG/approve : Should not approve zero address"
        );
        _approve(msg.sender, spender, amount);
        success = true;
    }

    function name() external pure override returns (string memory tokenName) {
        tokenName = _name;
    }

    function symbol()
        external
        pure
        override
        returns (string memory tokenSymbol)
    {
        tokenSymbol = _symbol;
    }

    function decimals() external pure override returns (uint8 tokenDecimals) {
        tokenDecimals = _decimals;
    }
}

File 2 of 8 : ERC20Lockable.sol
// SPDX-License-Identifier: MIT

pragma solidity 0.8.0;

import "./ERC20.sol";
import "../library/Ownable.sol";

abstract contract ERC20Lockable is ERC20, Ownable {
    struct LockInfo {
        uint256 amount;
        uint256 due;
    }

    mapping(address => LockInfo[]) internal _locks;
    mapping(address => uint256) internal _totalLocked;

    event Lock(address indexed from, uint256 amount, uint256 due);
    event Unlock(address indexed from, uint256 amount);

    modifier checkLock(address from, uint256 amount) {
        require(
            _balances[from] >= _totalLocked[from] + amount,
            "ERC20Lockable/Cannot send more than unlocked amount"
        );
        _;
    }

    function _lock(
        address from,
        uint256 amount,
        uint256 due
    ) internal returns (bool success) {
        require(
            due > block.timestamp,
            "ERC20Lockable/lock : Cannot set due to past"
        );
        require(
            _balances[from] >= amount + _totalLocked[from],
            "ERC20Lockable/lock : locked total should be smaller than balance"
        );
        _totalLocked[from] = _totalLocked[from] + amount;
        _locks[from].push(LockInfo(amount, due));
        emit Lock(from, amount, due);
        success = true;
    }

    function _unlock(address from, uint256 index)
        internal
        returns (bool success)
    {
        LockInfo storage lock = _locks[from][index];
        _totalLocked[from] = _totalLocked[from] - lock.amount;
        emit Unlock(from, lock.amount);
        _locks[from][index] = _locks[from][_locks[from].length - 1];
        _locks[from].pop();
        success = true;
    }

    function unlock(address from, uint256 idx) external returns (bool success) {
        require(
            _locks[from][idx].due < block.timestamp,
            "ERC20Lockable/unlock: cannot unlock before due"
        );
        _unlock(from, idx);
    }

    function unlockAll(address from) external returns (bool success) {
        for (uint256 i = 0; i < _locks[from].length; ) {
            i++;
            if (_locks[from][i - 1].due < block.timestamp) {
                if (_unlock(from, i - 1)) {
                    i--;
                }
            }
        }
        success = true;
    }

    function releaseLock(address from)
        external
        onlyOwner
        returns (bool success)
    {
        for (uint256 i = 0; i < _locks[from].length; ) {
            i++;
            if (_unlock(from, i - 1)) {
                i--;
            }
        }
        success = true;
    }

    function transferWithLockUp(
        address recipient,
        uint256 amount,
        uint256 due
    ) external onlyOwner returns (bool success) {
        require(
            recipient != address(0),
            "ERC20Lockable/transferWithLockUp : Cannot send to zero address"
        );
        _transfer(msg.sender, recipient, amount);
        _lock(recipient, amount, due);
        success = true;
    }

    function lockInfo(address locked, uint256 index)
        external
        view
        returns (uint256 amount, uint256 due)
    {
        LockInfo memory lock = _locks[locked][index];
        amount = lock.amount;
        due = lock.due;
    }

    function totalLocked(address locked)
        external
        view
        returns (uint256 amount, uint256 length)
    {
        amount = _totalLocked[locked];
        length = _locks[locked].length;
    }
}

File 3 of 8 : ERC20Burnable.sol
// SPDX-License-Identifier: MIT

pragma solidity 0.8.0;

import "./ERC20.sol";
import "../library/Pausable.sol";

abstract contract ERC20Burnable is ERC20, Pausable {
    event Burn(address indexed burned, uint256 amount);

    function burn(uint256 amount)
        external
        whenNotPaused
        returns (bool success)
    {
        success = _burn(msg.sender, amount);
        emit Burn(msg.sender, amount);
        success = true;
    }

    function burnFrom(address burned, uint256 amount)
        external
        whenNotPaused
        returns (bool success)
    {
        _burn(burned, amount);
        emit Burn(burned, amount);
        success = _approve(
            burned,
            msg.sender,
            _allowances[burned][msg.sender] - amount
        );
    }
}

File 4 of 8 : ERC20Mintable.sol
// SPDX-License-Identifier: MIT

pragma solidity 0.8.0;

import "./ERC20.sol";
import "../library/Pausable.sol";

abstract contract ERC20Mintable is ERC20, Pausable {
    event Mint(address indexed receiver, uint256 amount);
    event MintFinished();
    uint256 internal _cap;
    bool internal _mintingFinished;

    ///@notice mint token
    ///@dev only owner can call this function
    function mint(address receiver, uint256 amount)
        external
        onlyOwner
        whenNotPaused
        returns (bool success)
    {
        require(
            receiver != address(0),
            "ERC20Mintable/mint : Should not mint to zero address"
        );
        require(
            _totalSupply + amount <= _cap,
            "ERC20Mintable/mint : Cannot mint over cap"
        );
        require(
            !_mintingFinished,
            "ERC20Mintable/mint : Cannot mint after finished"
        );
        _mint(receiver, amount);
        emit Mint(receiver, amount);
        success = true;
    }

    ///@notice finish minting, cannot mint after calling this function
    ///@dev only owner can call this function
    function finishMint() external onlyOwner returns (bool success) {
        require(
            !_mintingFinished,
            "ERC20Mintable/finishMinting : Already finished"
        );
        _mintingFinished = true;
        emit MintFinished();
        return true;
    }

    function cap() external view returns (uint256) {
        return _cap;
    }

    function isFinished() external view returns (bool finished) {
        finished = _mintingFinished;
    }
}

File 5 of 8 : Pausable.sol
// SPDX-License-Identifier: MIT

pragma solidity 0.8.0;

import "./Ownable.sol";

contract Pausable is Ownable {
    bool internal _paused;

    event Paused();
    event Unpaused();

    modifier whenPaused() {
        require(_paused, "Paused : This function can only be called when paused");
        _;
    }

    modifier whenNotPaused() {
        require(!_paused, "Paused : This function can only be called when not paused");
        _;
    }

    function pause() external onlyOwner whenNotPaused returns (bool success) {
        _paused = true;
        emit Paused();
        success = true;
    }

    function unPause() external onlyOwner whenPaused returns (bool success) {
        _paused = false;
        emit Unpaused();
        success = true;
    }

    function paused() external view returns (bool) {
        return _paused;
    }
}

File 6 of 8 : Freezable.sol
// SPDX-License-Identifier: MIT

pragma solidity 0.8.0;

import "./Ownable.sol";

contract Freezable is Ownable {
    mapping(address => bool) private _frozen;

    event Freeze(address indexed target);
    event Unfreeze(address indexed target);

    modifier whenNotFrozen(address target) {
        require(!_frozen[target], "Freezable : target is frozen");
        _;
    }

    function freeze(address target) external onlyOwner returns (bool success) {
        _frozen[target] = true;
        emit Freeze(target);
        success = true;
    }

    function unFreeze(address target)
        external
        onlyOwner
        returns (bool success)
    {
        _frozen[target] = false;
        emit Unfreeze(target);
        success = true;
    }

    function isFrozen(address target)
        external
        view
        returns (bool frozen)
    {
        return _frozen[target];
    }
}

File 7 of 8 : ERC20.sol
// SPDX-License-Identifier: MIT

pragma solidity 0.8.0;

abstract contract ERC20 {
    uint256 internal _totalSupply;
    mapping(address => uint256) internal _balances;
    mapping(address => mapping(address => uint256)) internal _allowances;

    event Transfer(address indexed from, address indexed to, uint256 amount);
    event Approval(
        address indexed owner,
        address indexed spender,
        uint256 amount
    );

    /*
     * Internal Functions for ERC20 standard logics
     */

    function _transfer(
        address from,
        address to,
        uint256 amount
    ) internal returns (bool success) {
        _balances[from] = _balances[from] - amount;
        _balances[to] = _balances[to] + amount;
        emit Transfer(from, to, amount);
        success = true;
    }

    function _approve(
        address owner,
        address spender,
        uint256 amount
    ) internal returns (bool success) {
        _allowances[owner][spender] = amount;
        emit Approval(owner, spender, amount);
        success = true;
    }

    function _mint(address recipient, uint256 amount)
        internal
        returns (bool success)
    {
        _totalSupply = _totalSupply + amount;
        _balances[recipient] = _balances[recipient] + amount;
        emit Transfer(address(0), recipient, amount);
        success = true;
    }

    function _burn(address burned, uint256 amount)
        internal
        returns (bool success)
    {
        _balances[burned] = _balances[burned] - amount;
        _totalSupply = _totalSupply - amount;
        emit Transfer(burned, address(0), amount);
        success = true;
    }

    /*
     * public view functions to view common data
     */

    function totalSupply() external view returns (uint256 total) {
        total = _totalSupply;
    }

    function balanceOf(address owner) external view returns (uint256 balance) {
        balance = _balances[owner];
    }

    function allowance(address owner, address spender)
        external
        view
        returns (uint256 remaining)
    {
        remaining = _allowances[owner][spender];
    }

    /*
     * External view Function Interface to implement on final contract
     */
    function name() external view virtual returns (string memory tokenName);

    function symbol() external view virtual returns (string memory tokenSymbol);

    function decimals() external view virtual returns (uint8 tokenDecimals);

    /*
     * External Function Interface to implement on final contract
     */
    function transfer(address to, uint256 amount)
        external
        virtual
        returns (bool success);

    function transferFrom(
        address from,
        address to,
        uint256 amount
    ) external virtual returns (bool success);

    function approve(address spender, uint256 amount)
        external
        virtual
        returns (bool success);
}

File 8 of 8 : Ownable.sol
// SPDX-License-Identifier: MIT

pragma solidity 0.8.0;

abstract contract Ownable {
    address internal _owner;

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

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

    modifier onlyOwner() {
        require(
            msg.sender == _owner,
            "Ownable : Function called by unauthorized user."
        );
        _;
    }

    function owner() external view returns (address ownerAddress) {
        ownerAddress = _owner;
    }

    function transferOwnership(address newOwner)
        public
        onlyOwner
        returns (bool success)
    {
        require(newOwner != address(0), "Ownable/transferOwnership : cannot transfer ownership to zero address");
        success = _transferOwnership(newOwner);
    }

    function renounceOwnership() external onlyOwner returns (bool success) {
        success = _transferOwnership(address(0));
    }

    function _transferOwnership(address newOwner) internal returns (bool success) {
        emit OwnershipTransferred(_owner, newOwner);
        _owner = newOwner;
        success = true;
    }
}

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

Contract Security Audit

Contract ABI

[{"inputs":[],"stateMutability":"nonpayable","type":"constructor"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"owner","type":"address"},{"indexed":true,"internalType":"address","name":"spender","type":"address"},{"indexed":false,"internalType":"uint256","name":"amount","type":"uint256"}],"name":"Approval","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"burned","type":"address"},{"indexed":false,"internalType":"uint256","name":"amount","type":"uint256"}],"name":"Burn","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"target","type":"address"}],"name":"Freeze","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"from","type":"address"},{"indexed":false,"internalType":"uint256","name":"amount","type":"uint256"},{"indexed":false,"internalType":"uint256","name":"due","type":"uint256"}],"name":"Lock","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"receiver","type":"address"},{"indexed":false,"internalType":"uint256","name":"amount","type":"uint256"}],"name":"Mint","type":"event"},{"anonymous":false,"inputs":[],"name":"MintFinished","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"currentOwner","type":"address"},{"indexed":true,"internalType":"address","name":"newOwner","type":"address"}],"name":"OwnershipTransferred","type":"event"},{"anonymous":false,"inputs":[],"name":"Paused","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"from","type":"address"},{"indexed":true,"internalType":"address","name":"to","type":"address"},{"indexed":false,"internalType":"uint256","name":"amount","type":"uint256"}],"name":"Transfer","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"target","type":"address"}],"name":"Unfreeze","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"from","type":"address"},{"indexed":false,"internalType":"uint256","name":"amount","type":"uint256"}],"name":"Unlock","type":"event"},{"anonymous":false,"inputs":[],"name":"Unpaused","type":"event"},{"inputs":[{"internalType":"address","name":"owner","type":"address"},{"internalType":"address","name":"spender","type":"address"}],"name":"allowance","outputs":[{"internalType":"uint256","name":"remaining","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"spender","type":"address"},{"internalType":"uint256","name":"amount","type":"uint256"}],"name":"approve","outputs":[{"internalType":"bool","name":"success","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"owner","type":"address"}],"name":"balanceOf","outputs":[{"internalType":"uint256","name":"balance","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"uint256","name":"amount","type":"uint256"}],"name":"burn","outputs":[{"internalType":"bool","name":"success","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"burned","type":"address"},{"internalType":"uint256","name":"amount","type":"uint256"}],"name":"burnFrom","outputs":[{"internalType":"bool","name":"success","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"cap","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"decimals","outputs":[{"internalType":"uint8","name":"tokenDecimals","type":"uint8"}],"stateMutability":"pure","type":"function"},{"inputs":[],"name":"finishMint","outputs":[{"internalType":"bool","name":"success","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"target","type":"address"}],"name":"freeze","outputs":[{"internalType":"bool","name":"success","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"isFinished","outputs":[{"internalType":"bool","name":"finished","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"target","type":"address"}],"name":"isFrozen","outputs":[{"internalType":"bool","name":"frozen","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"locked","type":"address"},{"internalType":"uint256","name":"index","type":"uint256"}],"name":"lockInfo","outputs":[{"internalType":"uint256","name":"amount","type":"uint256"},{"internalType":"uint256","name":"due","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"receiver","type":"address"},{"internalType":"uint256","name":"amount","type":"uint256"}],"name":"mint","outputs":[{"internalType":"bool","name":"success","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"name","outputs":[{"internalType":"string","name":"tokenName","type":"string"}],"stateMutability":"pure","type":"function"},{"inputs":[],"name":"owner","outputs":[{"internalType":"address","name":"ownerAddress","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"pause","outputs":[{"internalType":"bool","name":"success","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"paused","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"from","type":"address"}],"name":"releaseLock","outputs":[{"internalType":"bool","name":"success","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"renounceOwnership","outputs":[{"internalType":"bool","name":"success","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"symbol","outputs":[{"internalType":"string","name":"tokenSymbol","type":"string"}],"stateMutability":"pure","type":"function"},{"inputs":[{"internalType":"address","name":"locked","type":"address"}],"name":"totalLocked","outputs":[{"internalType":"uint256","name":"amount","type":"uint256"},{"internalType":"uint256","name":"length","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"totalSupply","outputs":[{"internalType":"uint256","name":"total","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"to","type":"address"},{"internalType":"uint256","name":"amount","type":"uint256"}],"name":"transfer","outputs":[{"internalType":"bool","name":"success","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"from","type":"address"},{"internalType":"address","name":"to","type":"address"},{"internalType":"uint256","name":"amount","type":"uint256"}],"name":"transferFrom","outputs":[{"internalType":"bool","name":"success","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"newOwner","type":"address"}],"name":"transferOwnership","outputs":[{"internalType":"bool","name":"success","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"recipient","type":"address"},{"internalType":"uint256","name":"amount","type":"uint256"},{"internalType":"uint256","name":"due","type":"uint256"}],"name":"transferWithLockUp","outputs":[{"internalType":"bool","name":"success","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"target","type":"address"}],"name":"unFreeze","outputs":[{"internalType":"bool","name":"success","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"unPause","outputs":[{"internalType":"bool","name":"success","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"from","type":"address"},{"internalType":"uint256","name":"idx","type":"uint256"}],"name":"unlock","outputs":[{"internalType":"bool","name":"success","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"from","type":"address"}],"name":"unlockAll","outputs":[{"internalType":"bool","name":"success","type":"bool"}],"stateMutability":"nonpayable","type":"function"}]

60806040523480156200001157600080fd5b5033600360006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055503373ffffffffffffffffffffffffffffffffffffffff16600073ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a3601260ff16600a620000c1919062000314565b63b2d05e00620000d2919062000451565b6007819055506200010d33601260ff16600a620000f0919062000314565b637735940062000101919062000451565b6200011460201b60201c565b50620004f8565b6000816000546200012691906200025c565b60008190555081600160008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020546200017991906200025c565b600160008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508273ffffffffffffffffffffffffffffffffffffffff16600073ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef846040516200021c91906200023f565b60405180910390a36001905092915050565b6200023981620004b2565b82525050565b60006020820190506200025660008301846200022e565b92915050565b60006200026982620004b2565b91506200027683620004b2565b9250827fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff03821115620002ae57620002ad620004bc565b5b828201905092915050565b6000808291508390505b60018511156200030b57808604811115620002e357620002e2620004bc565b5b6001851615620002f35780820291505b80810290506200030385620004eb565b9450620002c3565b94509492505050565b60006200032182620004b2565b91506200032e83620004b2565b92506200035d7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff848462000365565b905092915050565b6000826200037757600190506200044a565b816200038757600090506200044a565b8160018114620003a05760028114620003ab57620003e1565b60019150506200044a565b60ff841115620003c057620003bf620004bc565b5b8360020a915084821115620003da57620003d9620004bc565b5b506200044a565b5060208310610133831016604e8410600b84101617156200041b5782820a905083811115620004155762000414620004bc565b5b6200044a565b6200042a8484846001620002b9565b92509050818404811115620004445762000443620004bc565b5b81810290505b9392505050565b60006200045e82620004b2565b91506200046b83620004b2565b9250817fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff0483118215151615620004a757620004a6620004bc565b5b828202905092915050565b6000819050919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b60008160011c9050919050565b61395f80620005086000396000f3fe608060405234801561001057600080fd5b50600436106101da5760003560e01c806383cfab4211610104578063c4f3a853116100a2578063e4cc18be11610071578063e4cc18be1461060d578063e58398361461062b578063f2fde38b1461065b578063f7b188a51461068b576101da565b8063c4f3a8531461054c578063d1c469161461057c578063d8fb9337146105ac578063dd62ed3e146105dd576101da565b80638da5cb5b116100de5780638da5cb5b146104af57806395d89b41146104cd578063a9059cbb146104eb578063b2520a7c1461051b576101da565b806383cfab42146104315780638456cb59146104615780638d1fdf2f1461047f576101da565b806340c10f191161017c578063715018a61161014b578063715018a61461039557806379cc6790146103b35780637b352962146103e35780637eee288d14610401576101da565b806340c10f19146102e757806342966c68146103175780635c975abb1461034757806370a0823114610365576101da565b806323b872dd116101b857806323b872dd1461024b578063313ce5671461027b578063355274ea1461029957806338b82092146102b7576101da565b806306fdde03146101df578063095ea7b3146101fd57806318160ddd1461022d575b600080fd5b6101e76106a9565b6040516101f49190613479565b60405180910390f35b61021760048036038101906102129190612c54565b6106e6565b604051610224919061345e565b60405180910390f35b61023561076d565b60405161024291906136bb565b60405180910390f35b61026560048036038101906102609190612c05565b610776565b604051610272919061345e565b60405180910390f35b610283610a41565b60405161029091906136ff565b60405180910390f35b6102a1610a4a565b6040516102ae91906136bb565b60405180910390f35b6102d160048036038101906102cc9190612c90565b610a54565b6040516102de919061345e565b60405180910390f35b61030160048036038101906102fc9190612c54565b610b79565b60405161030e919061345e565b60405180910390f35b610331600480360381019061032c9190612cdf565b610dd0565b60405161033e919061345e565b60405180910390f35b61034f610e85565b60405161035c919061345e565b60405180910390f35b61037f600480360381019061037a9190612ba0565b610e9c565b60405161038c91906136bb565b60405180910390f35b61039d610ee5565b6040516103aa919061345e565b60405180910390f35b6103cd60048036038101906103c89190612c54565b610f86565b6040516103da919061345e565b60405180910390f35b6103eb6110cb565b6040516103f8919061345e565b60405180910390f35b61041b60048036038101906104169190612c54565b6110e2565b604051610428919061345e565b60405180910390f35b61044b60048036038101906104469190612ba0565b6111bf565b604051610458919061345e565b60405180910390f35b6104696112f5565b604051610476919061345e565b60405180910390f35b61049960048036038101906104949190612ba0565b611425565b6040516104a6919061345e565b60405180910390f35b6104b761155b565b6040516104c49190613443565b60405180910390f35b6104d5611585565b6040516104e29190613479565b60405180910390f35b61050560048036038101906105009190612c54565b6115c2565b604051610512919061345e565b60405180910390f35b61053560048036038101906105309190612c54565b6117f9565b6040516105439291906136d6565b60405180910390f35b61056660048036038101906105619190612ba0565b6118ba565b604051610573919061345e565b60405180910390f35b61059660048036038101906105919190612ba0565b6119f0565b6040516105a3919061345e565b60405180910390f35b6105c660048036038101906105c19190612ba0565b611b16565b6040516105d49291906136d6565b60405180910390f35b6105f760048036038101906105f29190612bc9565b611ba5565b60405161060491906136bb565b60405180910390f35b610615611c2c565b604051610622919061345e565b60405180910390f35b61064560048036038101906106409190612ba0565b611d5c565b604051610652919061345e565b60405180910390f35b61067560048036038101906106709190612ba0565b611db2565b604051610682919061345e565b60405180910390f35b610693611ec4565b6040516106a0919061345e565b60405180910390f35b60606040518060400160405280600881526020017f524f47494e2e4149000000000000000000000000000000000000000000000000815250905090565b60008073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff161415610757576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161074e9061363b565b60405180910390fd5b610762338484611ff3565b506001905092915050565b60008054905090565b600083600960008273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff1615610806576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016107fd9061365b565b60405180910390fd5b600660009054906101000a900460ff1615610856576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161084d9061355b565b60405180910390fd5b848380600560008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020546108a39190613736565b600160008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020541015610924576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161091b9061361b565b60405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff168673ffffffffffffffffffffffffffffffffffffffff161415610994576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161098b9061359b565b60405180910390fd5b61099f8787876120e6565b50610a32873387600260008c73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054610a2d919061378c565b611ff3565b50600193505050509392505050565b60006012905090565b6000600754905090565b6000600360009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614610ae6576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610add906135db565b60405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff161415610b56576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610b4d9061349b565b60405180910390fd5b610b613385856120e6565b50610b6d848484612274565b50600190509392505050565b6000600360009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614610c0b576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610c02906135db565b60405180910390fd5b600660009054906101000a900460ff1615610c5b576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610c529061355b565b60405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff161415610ccb576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610cc29061353b565b60405180910390fd5b60075482600054610cdc9190613736565b1115610d1d576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610d14906135fb565b60405180910390fd5b600860009054906101000a900460ff1615610d6d576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610d649061357b565b60405180910390fd5b610d778383612500565b508273ffffffffffffffffffffffffffffffffffffffff167f0f6798a560793a54c3bcfe86a93cde1e73087d944c0ea20544137d412139688583604051610dbe91906136bb565b60405180910390a26001905092915050565b6000600660009054906101000a900460ff1615610e22576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610e199061355b565b60405180910390fd5b610e2c3383612614565b90503373ffffffffffffffffffffffffffffffffffffffff167fcc16f5dbb4873280815c1ee09dbd06736cffcc184412cf7a71a0fdb75d397ca583604051610e7491906136bb565b60405180910390a260019050919050565b6000600660009054906101000a900460ff16905090565b6000600160008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020549050919050565b6000600360009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614610f77576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610f6e906135db565b60405180910390fd5b610f816000612728565b905090565b6000600660009054906101000a900460ff1615610fd8576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610fcf9061355b565b60405180910390fd5b610fe28383612614565b508273ffffffffffffffffffffffffffffffffffffffff167fcc16f5dbb4873280815c1ee09dbd06736cffcc184412cf7a71a0fdb75d397ca58360405161102991906136bb565b60405180910390a26110c3833384600260008873ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020546110be919061378c565b611ff3565b905092915050565b6000600860009054906101000a900460ff16905090565b600042600460008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020838154811061115c577f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b906000526020600020906002020160010154106111ae576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016111a59061351b565b60405180910390fd5b6111b883836127f0565b5092915050565b6000600360009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614611251576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611248906135db565b60405180910390fd5b6000600960008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff0219169083151502179055508173ffffffffffffffffffffffffffffffffffffffff167fca5069937e68fd197927055037f59d7c90bf75ac104e6e375539ef480c3ad6ee60405160405180910390a260019050919050565b6000600360009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614611387576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161137e906135db565b60405180910390fd5b600660009054906101000a900460ff16156113d7576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016113ce9061355b565b60405180910390fd5b6001600660006101000a81548160ff0219169083151502179055507f9e87fac88ff661f02d44f95383c817fece4bce600a3dab7a54406878b965e75260405160405180910390a16001905090565b6000600360009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff16146114b7576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016114ae906135db565b60405180910390fd5b6001600960008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff0219169083151502179055508173ffffffffffffffffffffffffffffffffffffffff167faf85b60d26151edd11443b704d424da6c43d0468f2235ebae3d1904dbc32304960405160405180910390a260019050919050565b6000600360009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16905090565b60606040518060400160405280600381526020017f524f470000000000000000000000000000000000000000000000000000000000815250905090565b600033600960008273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff1615611652576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016116499061365b565b60405180910390fd5b600660009054906101000a900460ff16156116a2576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016116999061355b565b60405180910390fd5b338380600560008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020546116ef9190613736565b600160008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020541015611770576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016117679061361b565b60405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff168673ffffffffffffffffffffffffffffffffffffffff1614156117e0576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016117d7906135bb565b60405180910390fd5b6117eb3387876120e6565b506001935050505092915050565b6000806000600460008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000208481548110611875577f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b90600052602060002090600202016040518060400160405290816000820154815260200160018201548152505090508060000151925080602001519150509250929050565b600080600090505b600460008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020805490508110156119e657808061191790613872565b91505042600460008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600183611967919061378c565b8154811061199e577f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b90600052602060002090600202016001015410156119e1576119cc836001836119c7919061378c565b6127f0565b156119e05780806119dc90613848565b9150505b5b6118c2565b5060019050919050565b6000600360009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614611a82576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611a79906135db565b60405180910390fd5b60005b600460008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002080549050811015611b0c578080611ada90613872565b915050611af383600183611aee919061378c565b6127f0565b15611b07578080611b0390613848565b9150505b611a85565b5060019050919050565b600080600560008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020549150600460008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020805490509050915091565b6000600260008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054905092915050565b6000600360009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614611cbe576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611cb5906135db565b60405180910390fd5b600860009054906101000a900460ff1615611d0e576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611d05906134bb565b60405180910390fd5b6001600860006101000a81548160ff0219169083151502179055507fae5184fba832cb2b1f702aca6117b8d265eaf03ad33eb133f19dde0f5920fa0860405160405180910390a16001905090565b6000600960008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff169050919050565b6000600360009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614611e44576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611e3b906135db565b60405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff161415611eb4576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611eab9061369b565b60405180910390fd5b611ebd82612728565b9050919050565b6000600360009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614611f56576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611f4d906135db565b60405180910390fd5b600660009054906101000a900460ff16611fa5576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611f9c9061367b565b60405180910390fd5b6000600660006101000a81548160ff0219169083151502179055507fa45f47fdea8a1efdd9029a5691c7f759c32b7c698632b563573e155625d1693360405160405180910390a16001905090565b600081600260008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508273ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925846040516120d391906136bb565b60405180910390a3600190509392505050565b600081600160008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054612133919061378c565b600160008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000208190555081600160008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020546121c19190613736565b600160008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508273ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef8460405161226191906136bb565b60405180910390a3600190509392505050565b60004282116122b8576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016122af906134fb565b60405180910390fd5b600560008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054836123039190613736565b600160008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020541015612384576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161237b906134db565b60405180910390fd5b82600560008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020546123cf9190613736565b600560008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002081905550600460008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206040518060400160405280858152602001848152509080600181540180825580915050600190039060005260206000209060020201600090919091909150600082015181600001556020820151816001015550508373ffffffffffffffffffffffffffffffffffffffff167f49eaf4942f1237055eb4cfa5f31c9dfe50d5b4ade01e021f7de8be2fbbde557b84846040516124ed9291906136d6565b60405180910390a2600190509392505050565b6000816000546125109190613736565b60008190555081600160008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020546125619190613736565b600160008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508273ffffffffffffffffffffffffffffffffffffffff16600073ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef8460405161260291906136bb565b60405180910390a36001905092915050565b600081600160008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054612661919061378c565b600160008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002081905550816000546126b2919061378c565b600081905550600073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef8460405161271691906136bb565b60405180910390a36001905092915050565b60008173ffffffffffffffffffffffffffffffffffffffff16600360009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a381600360006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555060019050919050565b600080600460008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020838154811061286a577f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b906000526020600020906002020190508060000154600560008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020546128c9919061378c565b600560008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508373ffffffffffffffffffffffffffffffffffffffff167f6381d9813cabeb57471b5a7e05078e64845ccdb563146a6911d536f24ce960f1826000015460405161295691906136bb565b60405180910390a2600460008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206001600460008773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020805490506129ec919061378c565b81548110612a23577f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b9060005260206000209060020201600460008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000208481548110612aa8577f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b90600052602060002090600202016000820154816000015560018201548160010155905050600460008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020805480612b42577f4e487b7100000000000000000000000000000000000000000000000000000000600052603160045260246000fd5b6001900381819060005260206000209060020201600080820160009055600182016000905550509055600191505092915050565b600081359050612b85816138fb565b92915050565b600081359050612b9a81613912565b92915050565b600060208284031215612bb257600080fd5b6000612bc084828501612b76565b91505092915050565b60008060408385031215612bdc57600080fd5b6000612bea85828601612b76565b9250506020612bfb85828601612b76565b9150509250929050565b600080600060608486031215612c1a57600080fd5b6000612c2886828701612b76565b9350506020612c3986828701612b76565b9250506040612c4a86828701612b8b565b9150509250925092565b60008060408385031215612c6757600080fd5b6000612c7585828601612b76565b9250506020612c8685828601612b8b565b9150509250929050565b600080600060608486031215612ca557600080fd5b6000612cb386828701612b76565b9350506020612cc486828701612b8b565b9250506040612cd586828701612b8b565b9150509250925092565b600060208284031215612cf157600080fd5b6000612cff84828501612b8b565b91505092915050565b612d11816137c0565b82525050565b612d20816137d2565b82525050565b6000612d318261371a565b612d3b8185613725565b9350612d4b818560208601613815565b612d54816138ea565b840191505092915050565b6000612d6c603e83613725565b91507f45524332304c6f636b61626c652f7472616e73666572576974684c6f636b557060008301527f203a2043616e6e6f742073656e6420746f207a65726f206164647265737300006020830152604082019050919050565b6000612dd2602e83613725565b91507f45524332304d696e7461626c652f66696e6973684d696e74696e67203a20416c60008301527f72656164792066696e69736865640000000000000000000000000000000000006020830152604082019050919050565b6000612e38604083613725565b91507f45524332304c6f636b61626c652f6c6f636b203a206c6f636b656420746f746160008301527f6c2073686f756c6420626520736d616c6c6572207468616e2062616c616e63656020830152604082019050919050565b6000612e9e602b83613725565b91507f45524332304c6f636b61626c652f6c6f636b203a2043616e6e6f74207365742060008301527f64756520746f20706173740000000000000000000000000000000000000000006020830152604082019050919050565b6000612f04602e83613725565b91507f45524332304c6f636b61626c652f756e6c6f636b3a2063616e6e6f7420756e6c60008301527f6f636b206265666f7265206475650000000000000000000000000000000000006020830152604082019050919050565b6000612f6a603483613725565b91507f45524332304d696e7461626c652f6d696e74203a2053686f756c64206e6f742060008301527f6d696e7420746f207a65726f20616464726573730000000000000000000000006020830152604082019050919050565b6000612fd0603983613725565b91507f506175736564203a20546869732066756e6374696f6e2063616e206f6e6c792060008301527f62652063616c6c6564207768656e206e6f7420706175736564000000000000006020830152604082019050919050565b6000613036602f83613725565b91507f45524332304d696e7461626c652f6d696e74203a2043616e6e6f74206d696e7460008301527f2061667465722066696e697368656400000000000000000000000000000000006020830152604082019050919050565b600061309c603283613725565b91507f524f472f7472616e7366657246726f6d203a2053686f756c64206e6f7420736560008301527f6e6420746f207a65726f206164647265737300000000000000000000000000006020830152604082019050919050565b6000613102602e83613725565b91507f524f472f7472616e73666572203a2053686f756c64206e6f742073656e64207460008301527f6f207a65726f20616464726573730000000000000000000000000000000000006020830152604082019050919050565b6000613168602f83613725565b91507f4f776e61626c65203a2046756e6374696f6e2063616c6c656420627920756e6160008301527f7574686f72697a656420757365722e00000000000000000000000000000000006020830152604082019050919050565b60006131ce602983613725565b91507f45524332304d696e7461626c652f6d696e74203a2043616e6e6f74206d696e7460008301527f206f7665722063617000000000000000000000000000000000000000000000006020830152604082019050919050565b6000613234603383613725565b91507f45524332304c6f636b61626c652f43616e6e6f742073656e64206d6f7265207460008301527f68616e20756e6c6f636b656420616d6f756e74000000000000000000000000006020830152604082019050919050565b600061329a602d83613725565b91507f524f472f617070726f7665203a2053686f756c64206e6f7420617070726f766560008301527f207a65726f2061646472657373000000000000000000000000000000000000006020830152604082019050919050565b6000613300601c83613725565b91507f467265657a61626c65203a207461726765742069732066726f7a656e000000006000830152602082019050919050565b6000613340603583613725565b91507f506175736564203a20546869732066756e6374696f6e2063616e206f6e6c792060008301527f62652063616c6c6564207768656e2070617573656400000000000000000000006020830152604082019050919050565b60006133a6604583613725565b91507f4f776e61626c652f7472616e736665724f776e657273686970203a2063616e6e60008301527f6f74207472616e73666572206f776e65727368697020746f207a65726f20616460208301527f64726573730000000000000000000000000000000000000000000000000000006040830152606082019050919050565b61342e816137fe565b82525050565b61343d81613808565b82525050565b60006020820190506134586000830184612d08565b92915050565b60006020820190506134736000830184612d17565b92915050565b600060208201905081810360008301526134938184612d26565b905092915050565b600060208201905081810360008301526134b481612d5f565b9050919050565b600060208201905081810360008301526134d481612dc5565b9050919050565b600060208201905081810360008301526134f481612e2b565b9050919050565b6000602082019050818103600083015261351481612e91565b9050919050565b6000602082019050818103600083015261353481612ef7565b9050919050565b6000602082019050818103600083015261355481612f5d565b9050919050565b6000602082019050818103600083015261357481612fc3565b9050919050565b6000602082019050818103600083015261359481613029565b9050919050565b600060208201905081810360008301526135b48161308f565b9050919050565b600060208201905081810360008301526135d4816130f5565b9050919050565b600060208201905081810360008301526135f48161315b565b9050919050565b60006020820190508181036000830152613614816131c1565b9050919050565b6000602082019050818103600083015261363481613227565b9050919050565b600060208201905081810360008301526136548161328d565b9050919050565b60006020820190508181036000830152613674816132f3565b9050919050565b6000602082019050818103600083015261369481613333565b9050919050565b600060208201905081810360008301526136b481613399565b9050919050565b60006020820190506136d06000830184613425565b92915050565b60006040820190506136eb6000830185613425565b6136f86020830184613425565b9392505050565b60006020820190506137146000830184613434565b92915050565b600081519050919050565b600082825260208201905092915050565b6000613741826137fe565b915061374c836137fe565b9250827fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff03821115613781576137806138bb565b5b828201905092915050565b6000613797826137fe565b91506137a2836137fe565b9250828210156137b5576137b46138bb565b5b828203905092915050565b60006137cb826137de565b9050919050565b60008115159050919050565b600073ffffffffffffffffffffffffffffffffffffffff82169050919050565b6000819050919050565b600060ff82169050919050565b60005b83811015613833578082015181840152602081019050613818565b83811115613842576000848401525b50505050565b6000613853826137fe565b91506000821415613867576138666138bb565b5b600182039050919050565b600061387d826137fe565b91507fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff8214156138b0576138af6138bb565b5b600182019050919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b6000601f19601f8301169050919050565b613904816137c0565b811461390f57600080fd5b50565b61391b816137fe565b811461392657600080fd5b5056fea2646970667358221220a1559d1d50eb0cc79ebebf14d15f13645e1014f780b80101cec13641dd1a48c364736f6c63430008000033

Deployed Bytecode

0x608060405234801561001057600080fd5b50600436106101da5760003560e01c806383cfab4211610104578063c4f3a853116100a2578063e4cc18be11610071578063e4cc18be1461060d578063e58398361461062b578063f2fde38b1461065b578063f7b188a51461068b576101da565b8063c4f3a8531461054c578063d1c469161461057c578063d8fb9337146105ac578063dd62ed3e146105dd576101da565b80638da5cb5b116100de5780638da5cb5b146104af57806395d89b41146104cd578063a9059cbb146104eb578063b2520a7c1461051b576101da565b806383cfab42146104315780638456cb59146104615780638d1fdf2f1461047f576101da565b806340c10f191161017c578063715018a61161014b578063715018a61461039557806379cc6790146103b35780637b352962146103e35780637eee288d14610401576101da565b806340c10f19146102e757806342966c68146103175780635c975abb1461034757806370a0823114610365576101da565b806323b872dd116101b857806323b872dd1461024b578063313ce5671461027b578063355274ea1461029957806338b82092146102b7576101da565b806306fdde03146101df578063095ea7b3146101fd57806318160ddd1461022d575b600080fd5b6101e76106a9565b6040516101f49190613479565b60405180910390f35b61021760048036038101906102129190612c54565b6106e6565b604051610224919061345e565b60405180910390f35b61023561076d565b60405161024291906136bb565b60405180910390f35b61026560048036038101906102609190612c05565b610776565b604051610272919061345e565b60405180910390f35b610283610a41565b60405161029091906136ff565b60405180910390f35b6102a1610a4a565b6040516102ae91906136bb565b60405180910390f35b6102d160048036038101906102cc9190612c90565b610a54565b6040516102de919061345e565b60405180910390f35b61030160048036038101906102fc9190612c54565b610b79565b60405161030e919061345e565b60405180910390f35b610331600480360381019061032c9190612cdf565b610dd0565b60405161033e919061345e565b60405180910390f35b61034f610e85565b60405161035c919061345e565b60405180910390f35b61037f600480360381019061037a9190612ba0565b610e9c565b60405161038c91906136bb565b60405180910390f35b61039d610ee5565b6040516103aa919061345e565b60405180910390f35b6103cd60048036038101906103c89190612c54565b610f86565b6040516103da919061345e565b60405180910390f35b6103eb6110cb565b6040516103f8919061345e565b60405180910390f35b61041b60048036038101906104169190612c54565b6110e2565b604051610428919061345e565b60405180910390f35b61044b60048036038101906104469190612ba0565b6111bf565b604051610458919061345e565b60405180910390f35b6104696112f5565b604051610476919061345e565b60405180910390f35b61049960048036038101906104949190612ba0565b611425565b6040516104a6919061345e565b60405180910390f35b6104b761155b565b6040516104c49190613443565b60405180910390f35b6104d5611585565b6040516104e29190613479565b60405180910390f35b61050560048036038101906105009190612c54565b6115c2565b604051610512919061345e565b60405180910390f35b61053560048036038101906105309190612c54565b6117f9565b6040516105439291906136d6565b60405180910390f35b61056660048036038101906105619190612ba0565b6118ba565b604051610573919061345e565b60405180910390f35b61059660048036038101906105919190612ba0565b6119f0565b6040516105a3919061345e565b60405180910390f35b6105c660048036038101906105c19190612ba0565b611b16565b6040516105d49291906136d6565b60405180910390f35b6105f760048036038101906105f29190612bc9565b611ba5565b60405161060491906136bb565b60405180910390f35b610615611c2c565b604051610622919061345e565b60405180910390f35b61064560048036038101906106409190612ba0565b611d5c565b604051610652919061345e565b60405180910390f35b61067560048036038101906106709190612ba0565b611db2565b604051610682919061345e565b60405180910390f35b610693611ec4565b6040516106a0919061345e565b60405180910390f35b60606040518060400160405280600881526020017f524f47494e2e4149000000000000000000000000000000000000000000000000815250905090565b60008073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff161415610757576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161074e9061363b565b60405180910390fd5b610762338484611ff3565b506001905092915050565b60008054905090565b600083600960008273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff1615610806576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016107fd9061365b565b60405180910390fd5b600660009054906101000a900460ff1615610856576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161084d9061355b565b60405180910390fd5b848380600560008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020546108a39190613736565b600160008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020541015610924576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161091b9061361b565b60405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff168673ffffffffffffffffffffffffffffffffffffffff161415610994576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161098b9061359b565b60405180910390fd5b61099f8787876120e6565b50610a32873387600260008c73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054610a2d919061378c565b611ff3565b50600193505050509392505050565b60006012905090565b6000600754905090565b6000600360009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614610ae6576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610add906135db565b60405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff161415610b56576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610b4d9061349b565b60405180910390fd5b610b613385856120e6565b50610b6d848484612274565b50600190509392505050565b6000600360009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614610c0b576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610c02906135db565b60405180910390fd5b600660009054906101000a900460ff1615610c5b576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610c529061355b565b60405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff161415610ccb576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610cc29061353b565b60405180910390fd5b60075482600054610cdc9190613736565b1115610d1d576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610d14906135fb565b60405180910390fd5b600860009054906101000a900460ff1615610d6d576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610d649061357b565b60405180910390fd5b610d778383612500565b508273ffffffffffffffffffffffffffffffffffffffff167f0f6798a560793a54c3bcfe86a93cde1e73087d944c0ea20544137d412139688583604051610dbe91906136bb565b60405180910390a26001905092915050565b6000600660009054906101000a900460ff1615610e22576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610e199061355b565b60405180910390fd5b610e2c3383612614565b90503373ffffffffffffffffffffffffffffffffffffffff167fcc16f5dbb4873280815c1ee09dbd06736cffcc184412cf7a71a0fdb75d397ca583604051610e7491906136bb565b60405180910390a260019050919050565b6000600660009054906101000a900460ff16905090565b6000600160008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020549050919050565b6000600360009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614610f77576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610f6e906135db565b60405180910390fd5b610f816000612728565b905090565b6000600660009054906101000a900460ff1615610fd8576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610fcf9061355b565b60405180910390fd5b610fe28383612614565b508273ffffffffffffffffffffffffffffffffffffffff167fcc16f5dbb4873280815c1ee09dbd06736cffcc184412cf7a71a0fdb75d397ca58360405161102991906136bb565b60405180910390a26110c3833384600260008873ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020546110be919061378c565b611ff3565b905092915050565b6000600860009054906101000a900460ff16905090565b600042600460008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020838154811061115c577f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b906000526020600020906002020160010154106111ae576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016111a59061351b565b60405180910390fd5b6111b883836127f0565b5092915050565b6000600360009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614611251576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611248906135db565b60405180910390fd5b6000600960008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff0219169083151502179055508173ffffffffffffffffffffffffffffffffffffffff167fca5069937e68fd197927055037f59d7c90bf75ac104e6e375539ef480c3ad6ee60405160405180910390a260019050919050565b6000600360009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614611387576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161137e906135db565b60405180910390fd5b600660009054906101000a900460ff16156113d7576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016113ce9061355b565b60405180910390fd5b6001600660006101000a81548160ff0219169083151502179055507f9e87fac88ff661f02d44f95383c817fece4bce600a3dab7a54406878b965e75260405160405180910390a16001905090565b6000600360009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff16146114b7576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016114ae906135db565b60405180910390fd5b6001600960008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff0219169083151502179055508173ffffffffffffffffffffffffffffffffffffffff167faf85b60d26151edd11443b704d424da6c43d0468f2235ebae3d1904dbc32304960405160405180910390a260019050919050565b6000600360009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16905090565b60606040518060400160405280600381526020017f524f470000000000000000000000000000000000000000000000000000000000815250905090565b600033600960008273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff1615611652576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016116499061365b565b60405180910390fd5b600660009054906101000a900460ff16156116a2576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016116999061355b565b60405180910390fd5b338380600560008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020546116ef9190613736565b600160008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020541015611770576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016117679061361b565b60405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff168673ffffffffffffffffffffffffffffffffffffffff1614156117e0576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016117d7906135bb565b60405180910390fd5b6117eb3387876120e6565b506001935050505092915050565b6000806000600460008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000208481548110611875577f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b90600052602060002090600202016040518060400160405290816000820154815260200160018201548152505090508060000151925080602001519150509250929050565b600080600090505b600460008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020805490508110156119e657808061191790613872565b91505042600460008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600183611967919061378c565b8154811061199e577f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b90600052602060002090600202016001015410156119e1576119cc836001836119c7919061378c565b6127f0565b156119e05780806119dc90613848565b9150505b5b6118c2565b5060019050919050565b6000600360009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614611a82576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611a79906135db565b60405180910390fd5b60005b600460008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002080549050811015611b0c578080611ada90613872565b915050611af383600183611aee919061378c565b6127f0565b15611b07578080611b0390613848565b9150505b611a85565b5060019050919050565b600080600560008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020549150600460008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020805490509050915091565b6000600260008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054905092915050565b6000600360009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614611cbe576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611cb5906135db565b60405180910390fd5b600860009054906101000a900460ff1615611d0e576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611d05906134bb565b60405180910390fd5b6001600860006101000a81548160ff0219169083151502179055507fae5184fba832cb2b1f702aca6117b8d265eaf03ad33eb133f19dde0f5920fa0860405160405180910390a16001905090565b6000600960008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff169050919050565b6000600360009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614611e44576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611e3b906135db565b60405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff161415611eb4576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611eab9061369b565b60405180910390fd5b611ebd82612728565b9050919050565b6000600360009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614611f56576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611f4d906135db565b60405180910390fd5b600660009054906101000a900460ff16611fa5576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611f9c9061367b565b60405180910390fd5b6000600660006101000a81548160ff0219169083151502179055507fa45f47fdea8a1efdd9029a5691c7f759c32b7c698632b563573e155625d1693360405160405180910390a16001905090565b600081600260008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508273ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925846040516120d391906136bb565b60405180910390a3600190509392505050565b600081600160008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054612133919061378c565b600160008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000208190555081600160008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020546121c19190613736565b600160008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508273ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef8460405161226191906136bb565b60405180910390a3600190509392505050565b60004282116122b8576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016122af906134fb565b60405180910390fd5b600560008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054836123039190613736565b600160008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020541015612384576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161237b906134db565b60405180910390fd5b82600560008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020546123cf9190613736565b600560008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002081905550600460008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206040518060400160405280858152602001848152509080600181540180825580915050600190039060005260206000209060020201600090919091909150600082015181600001556020820151816001015550508373ffffffffffffffffffffffffffffffffffffffff167f49eaf4942f1237055eb4cfa5f31c9dfe50d5b4ade01e021f7de8be2fbbde557b84846040516124ed9291906136d6565b60405180910390a2600190509392505050565b6000816000546125109190613736565b60008190555081600160008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020546125619190613736565b600160008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508273ffffffffffffffffffffffffffffffffffffffff16600073ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef8460405161260291906136bb565b60405180910390a36001905092915050565b600081600160008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054612661919061378c565b600160008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002081905550816000546126b2919061378c565b600081905550600073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef8460405161271691906136bb565b60405180910390a36001905092915050565b60008173ffffffffffffffffffffffffffffffffffffffff16600360009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a381600360006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555060019050919050565b600080600460008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020838154811061286a577f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b906000526020600020906002020190508060000154600560008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020546128c9919061378c565b600560008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508373ffffffffffffffffffffffffffffffffffffffff167f6381d9813cabeb57471b5a7e05078e64845ccdb563146a6911d536f24ce960f1826000015460405161295691906136bb565b60405180910390a2600460008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206001600460008773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020805490506129ec919061378c565b81548110612a23577f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b9060005260206000209060020201600460008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000208481548110612aa8577f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b90600052602060002090600202016000820154816000015560018201548160010155905050600460008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020805480612b42577f4e487b7100000000000000000000000000000000000000000000000000000000600052603160045260246000fd5b6001900381819060005260206000209060020201600080820160009055600182016000905550509055600191505092915050565b600081359050612b85816138fb565b92915050565b600081359050612b9a81613912565b92915050565b600060208284031215612bb257600080fd5b6000612bc084828501612b76565b91505092915050565b60008060408385031215612bdc57600080fd5b6000612bea85828601612b76565b9250506020612bfb85828601612b76565b9150509250929050565b600080600060608486031215612c1a57600080fd5b6000612c2886828701612b76565b9350506020612c3986828701612b76565b9250506040612c4a86828701612b8b565b9150509250925092565b60008060408385031215612c6757600080fd5b6000612c7585828601612b76565b9250506020612c8685828601612b8b565b9150509250929050565b600080600060608486031215612ca557600080fd5b6000612cb386828701612b76565b9350506020612cc486828701612b8b565b9250506040612cd586828701612b8b565b9150509250925092565b600060208284031215612cf157600080fd5b6000612cff84828501612b8b565b91505092915050565b612d11816137c0565b82525050565b612d20816137d2565b82525050565b6000612d318261371a565b612d3b8185613725565b9350612d4b818560208601613815565b612d54816138ea565b840191505092915050565b6000612d6c603e83613725565b91507f45524332304c6f636b61626c652f7472616e73666572576974684c6f636b557060008301527f203a2043616e6e6f742073656e6420746f207a65726f206164647265737300006020830152604082019050919050565b6000612dd2602e83613725565b91507f45524332304d696e7461626c652f66696e6973684d696e74696e67203a20416c60008301527f72656164792066696e69736865640000000000000000000000000000000000006020830152604082019050919050565b6000612e38604083613725565b91507f45524332304c6f636b61626c652f6c6f636b203a206c6f636b656420746f746160008301527f6c2073686f756c6420626520736d616c6c6572207468616e2062616c616e63656020830152604082019050919050565b6000612e9e602b83613725565b91507f45524332304c6f636b61626c652f6c6f636b203a2043616e6e6f74207365742060008301527f64756520746f20706173740000000000000000000000000000000000000000006020830152604082019050919050565b6000612f04602e83613725565b91507f45524332304c6f636b61626c652f756e6c6f636b3a2063616e6e6f7420756e6c60008301527f6f636b206265666f7265206475650000000000000000000000000000000000006020830152604082019050919050565b6000612f6a603483613725565b91507f45524332304d696e7461626c652f6d696e74203a2053686f756c64206e6f742060008301527f6d696e7420746f207a65726f20616464726573730000000000000000000000006020830152604082019050919050565b6000612fd0603983613725565b91507f506175736564203a20546869732066756e6374696f6e2063616e206f6e6c792060008301527f62652063616c6c6564207768656e206e6f7420706175736564000000000000006020830152604082019050919050565b6000613036602f83613725565b91507f45524332304d696e7461626c652f6d696e74203a2043616e6e6f74206d696e7460008301527f2061667465722066696e697368656400000000000000000000000000000000006020830152604082019050919050565b600061309c603283613725565b91507f524f472f7472616e7366657246726f6d203a2053686f756c64206e6f7420736560008301527f6e6420746f207a65726f206164647265737300000000000000000000000000006020830152604082019050919050565b6000613102602e83613725565b91507f524f472f7472616e73666572203a2053686f756c64206e6f742073656e64207460008301527f6f207a65726f20616464726573730000000000000000000000000000000000006020830152604082019050919050565b6000613168602f83613725565b91507f4f776e61626c65203a2046756e6374696f6e2063616c6c656420627920756e6160008301527f7574686f72697a656420757365722e00000000000000000000000000000000006020830152604082019050919050565b60006131ce602983613725565b91507f45524332304d696e7461626c652f6d696e74203a2043616e6e6f74206d696e7460008301527f206f7665722063617000000000000000000000000000000000000000000000006020830152604082019050919050565b6000613234603383613725565b91507f45524332304c6f636b61626c652f43616e6e6f742073656e64206d6f7265207460008301527f68616e20756e6c6f636b656420616d6f756e74000000000000000000000000006020830152604082019050919050565b600061329a602d83613725565b91507f524f472f617070726f7665203a2053686f756c64206e6f7420617070726f766560008301527f207a65726f2061646472657373000000000000000000000000000000000000006020830152604082019050919050565b6000613300601c83613725565b91507f467265657a61626c65203a207461726765742069732066726f7a656e000000006000830152602082019050919050565b6000613340603583613725565b91507f506175736564203a20546869732066756e6374696f6e2063616e206f6e6c792060008301527f62652063616c6c6564207768656e2070617573656400000000000000000000006020830152604082019050919050565b60006133a6604583613725565b91507f4f776e61626c652f7472616e736665724f776e657273686970203a2063616e6e60008301527f6f74207472616e73666572206f776e65727368697020746f207a65726f20616460208301527f64726573730000000000000000000000000000000000000000000000000000006040830152606082019050919050565b61342e816137fe565b82525050565b61343d81613808565b82525050565b60006020820190506134586000830184612d08565b92915050565b60006020820190506134736000830184612d17565b92915050565b600060208201905081810360008301526134938184612d26565b905092915050565b600060208201905081810360008301526134b481612d5f565b9050919050565b600060208201905081810360008301526134d481612dc5565b9050919050565b600060208201905081810360008301526134f481612e2b565b9050919050565b6000602082019050818103600083015261351481612e91565b9050919050565b6000602082019050818103600083015261353481612ef7565b9050919050565b6000602082019050818103600083015261355481612f5d565b9050919050565b6000602082019050818103600083015261357481612fc3565b9050919050565b6000602082019050818103600083015261359481613029565b9050919050565b600060208201905081810360008301526135b48161308f565b9050919050565b600060208201905081810360008301526135d4816130f5565b9050919050565b600060208201905081810360008301526135f48161315b565b9050919050565b60006020820190508181036000830152613614816131c1565b9050919050565b6000602082019050818103600083015261363481613227565b9050919050565b600060208201905081810360008301526136548161328d565b9050919050565b60006020820190508181036000830152613674816132f3565b9050919050565b6000602082019050818103600083015261369481613333565b9050919050565b600060208201905081810360008301526136b481613399565b9050919050565b60006020820190506136d06000830184613425565b92915050565b60006040820190506136eb6000830185613425565b6136f86020830184613425565b9392505050565b60006020820190506137146000830184613434565b92915050565b600081519050919050565b600082825260208201905092915050565b6000613741826137fe565b915061374c836137fe565b9250827fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff03821115613781576137806138bb565b5b828201905092915050565b6000613797826137fe565b91506137a2836137fe565b9250828210156137b5576137b46138bb565b5b828203905092915050565b60006137cb826137de565b9050919050565b60008115159050919050565b600073ffffffffffffffffffffffffffffffffffffffff82169050919050565b6000819050919050565b600060ff82169050919050565b60005b83811015613833578082015181840152602081019050613818565b83811115613842576000848401525b50505050565b6000613853826137fe565b91506000821415613867576138666138bb565b5b600182039050919050565b600061387d826137fe565b91507fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff8214156138b0576138af6138bb565b5b600182019050919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b6000601f19601f8301169050919050565b613904816137c0565b811461390f57600080fd5b50565b61391b816137fe565b811461392657600080fd5b5056fea2646970667358221220a1559d1d50eb0cc79ebebf14d15f13645e1014f780b80101cec13641dd1a48c364736f6c63430008000033

Block Transaction Difficulty Gas Used Reward
View All Blocks Produced

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

OVERVIEW

To train traders to prioritize risk mitigation in our Metaverse sandbox. To enable global users to have a sound investment mindset with collective intelligence strategies. To protect Intellectual Property with ownership of every certified strategy through NFTs.

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.