POL Price: $0.10482 (-5.02%)
 

Overview

POL Balance

Polygon PoS Chain LogoPolygon PoS Chain LogoPolygon PoS Chain Logo7,179,718,378.78323092081176965 POL

POL Value

$752,576,112.04 (@ $0.10/POL)

Token Holdings

More Info

Private Name Tags

ContractCreator

N/A (Genesis Contract)

TokenTracker

Multichain Info

Transaction Hash
Block
From
To
Transfer830187232026-02-15 12:11:092 hrs ago1771157469IN
Polygon: POL Token
3.8638356 POL0.023548171,118.89072027
Transfer830185322026-02-15 12:04:472 hrs ago1771157087IN
Polygon: POL Token
34.68207 POL0.091355561,769.22234318
Transfer830185242026-02-15 12:04:312 hrs ago1771157071IN
Polygon: POL Token
80.92482999 POL0.093719191,814.99719775
Transfer830077712026-02-15 6:06:058 hrs ago1771135565IN
Polygon: POL Token
0 POL0.023857811,052.39609223
Transfer830077572026-02-15 6:05:378 hrs ago1771135537IN
Polygon: POL Token
0 POL0.023282551,027.02052007
Withdraw829974312026-02-15 0:21:2514 hrs ago1771114885IN
Polygon: POL Token
50 POL0.034241031,088.64123119
Transfer829964632026-02-14 23:49:0914 hrs ago1771112949IN
Polygon: POL Token
0 POL0.01502617665.46408298
Transfer829964452026-02-14 23:48:3314 hrs ago1771112913IN
Polygon: POL Token
0 POL0.01503781664.21428209
Transfer829962552026-02-14 23:42:1314 hrs ago1771112533IN
Polygon: POL Token
0 POL0.01345868594.46505705
Transfer829961422026-02-14 23:38:2714 hrs ago1771112307IN
Polygon: POL Token
0 POL0.01419692627.0724459
Transfer829874922026-02-14 18:50:0719 hrs ago1771095007IN
Polygon: POL Token
0 POL0.02100955929.21521828
Withdraw829872852026-02-14 18:43:1319 hrs ago1771094593IN
Polygon: POL Token
0.07021886 POL0.02739788871.40640068
Transfer829838352026-02-14 16:48:1321 hrs ago1771087693IN
Polygon: POL Token
38.33865 POL0.149103642,887.59093819
Transfer829838272026-02-14 16:47:5721 hrs ago1771087677IN
Polygon: POL Token
89.45684999 POL0.150295412,911.23485404
Transfer829836132026-02-14 16:40:4921 hrs ago1771087249IN
Polygon: POL Token
0 POL0.105681854,667.92639609
Transfer829796712026-02-14 14:29:2524 hrs ago1771079365IN
Polygon: POL Token
0 POL0.131685375,816.49179822
Transfer829796342026-02-14 14:28:1124 hrs ago1771079291IN
Polygon: POL Token
0 POL0.135749115,995.98561722
Transfer829795152026-02-14 14:24:1324 hrs ago1771079053IN
Polygon: POL Token
0 POL0.113702775,028.87091067
Transfer829792772026-02-14 14:16:1724 hrs ago1771078577IN
Polygon: POL Token
0 POL0.12427355,489.11248019
Transfer829683792026-02-14 8:13:0130 hrs ago1771056781IN
Polygon: POL Token
0 POL0.01490148659.94179091
Transfer829683672026-02-14 8:12:3730 hrs ago1771056757IN
Polygon: POL Token
0 POL0.01539095679.81249733
Transfer829656052026-02-14 6:40:3331 hrs ago1771051233IN
Polygon: POL Token
9.8 POL0.05014324700.25617539
Transfer829637222026-02-14 5:37:4732 hrs ago1771047467IN
Polygon: POL Token
38.70969 POL0.03417253661.7966965
Transfer829637202026-02-14 5:37:4332 hrs ago1771047463IN
Polygon: POL Token
90.32260999 POL0.03458966670.0047815
Transfer829599442026-02-14 3:31:5134 hrs ago1771039911IN
Polygon: POL Token
38.70969 POL0.119529632,314.85085001
View all transactions

Latest 25 internal transactions (View All)

Parent Transaction Hash Block From To
830185322026-02-15 12:04:472 hrs ago1771157087
Polygon: POL Token
34.68207 POL
830185242026-02-15 12:04:312 hrs ago1771157071
Polygon: POL Token
80.92482999 POL
829838352026-02-14 16:48:1321 hrs ago1771087693
Polygon: POL Token
38.33865 POL
829838272026-02-14 16:47:5721 hrs ago1771087677
Polygon: POL Token
89.45684999 POL
829656052026-02-14 6:40:3331 hrs ago1771051233
Polygon: POL Token
9.8 POL
829637222026-02-14 5:37:4732 hrs ago1771047467
Polygon: POL Token
38.70969 POL
829637202026-02-14 5:37:4332 hrs ago1771047463
Polygon: POL Token
90.32260999 POL
829599442026-02-14 3:31:5134 hrs ago1771039911
Polygon: POL Token
38.70969 POL
829599422026-02-14 3:31:4734 hrs ago1771039907
Polygon: POL Token
90.32260999 POL
829570102026-02-14 1:54:0336 hrs ago1771034043
Polygon: POL Token
37.97469 POL
829570072026-02-14 1:53:5736 hrs ago1771034037
Polygon: POL Token
88.60760999 POL
828807732026-02-12 7:32:493 days ago1770881569
Polygon: POL Token
42.70464 POL
828807682026-02-12 7:32:393 days ago1770881559
Polygon: POL Token
99.64416 POL
827875962026-02-10 3:46:555 days ago1770695215
Polygon: POL Token
40.67796 POL
827875922026-02-10 3:46:475 days ago1770695207
Polygon: POL Token
94.91524 POL
827725862026-02-09 19:26:355 days ago1770665195
Polygon: POL Token
2 POL
827724482026-02-09 19:21:595 days ago1770664919
Polygon: POL Token
5 POL
827597032026-02-09 12:17:096 days ago1770639429
Polygon: POL Token
39.34425 POL
827597012026-02-09 12:17:056 days ago1770639425
Polygon: POL Token
91.80324999 POL
827051342026-02-08 5:58:117 days ago1770530291
Polygon: POL Token
39.34425 POL
827051312026-02-08 5:58:057 days ago1770530285
Polygon: POL Token
91.80324999 POL
827049482026-02-08 5:51:597 days ago1770529919
Polygon: POL Token
39.34425 POL
827049452026-02-08 5:51:537 days ago1770529913
Polygon: POL Token
91.80324999 POL
826332522026-02-06 14:02:079 days ago1770386527
Polygon: POL Token
50 POL
825769692026-02-05 6:46:0110 days ago1770273961
Polygon: POL Token
35.29413 POL
View All Internal Transactions
Cross-Chain Transactions
Loading...
Loading

Contract Source Code Verified (Genesis Bytecode Match Only)

Contract Name:
MRC20

Compiler Version
v0.5.17+commit.d19bba13

Optimization Enabled:
Yes with 200 runs

Other Settings:
istanbul EvmVersion, None license
pragma solidity 0.5.17;

import "./BaseERC20NoSig.sol";

/**
 * @title Polygon Ecosystem Token contract
 * @notice This contract is an ECR20 like wrapper over native gas token transfers on the Polygon PoS chain
 * @dev ERC20 methods have been made payable while keeping their method signature same as other ChildERC20s on PoS
 */
contract MRC20 is BaseERC20NoSig {
    event Transfer(address indexed from, address indexed to, uint256 value);

    uint256 public currentSupply = 0;
    uint8 private constant DECIMALS = 18;
    bool isInitialized;

    uint256 locked = 0; // append to storage layout
    modifier nonReentrant() {
        require(locked == 0, "reentrancy");
        locked = 1;
        _;
        locked = 0;
    }

    constructor() public {}

    function initialize(address _childChain, address _token) public {
        require(!isInitialized, "The contract is already initialized");
        isInitialized = true;
        token = _token;
        _transferOwnership(_childChain);
    }

    function setParent(address) public {
        revert("Disabled feature");
    }

    function deposit(address user, uint256 amount) public onlyOwner {
        // check for amount and user
        require(
            amount > 0 && user != address(0x0),
            "Insufficient amount or invalid user"
        );

        // input balance
        uint256 input1 = balanceOf(user);
        currentSupply = currentSupply.add(amount);

        // transfer amount to user
        // not reenterant since this method is only called by commitState on StateReceiver which is onlySystem
        _nativeTransfer(user, amount);

        // deposit events
        emit Deposit(token, user, amount, input1, balanceOf(user));
    }

    function withdraw(uint256 amount) public payable {
        address user = msg.sender;
        // input balance
        uint256 input = balanceOf(user);

        currentSupply = currentSupply.sub(amount);
        // check for amount
        require(
            amount > 0 && msg.value == amount,
            "Insufficient amount"
        );

        // withdraw event
        emit Withdraw(token, user, amount, input, balanceOf(user));
    }

    function name() public pure returns (string memory) {
        return "Polygon Ecosystem Token";
    }

    function symbol() public pure returns (string memory) {
        return "POL";
    }

    function decimals() public pure returns (uint8) {
        return DECIMALS;
    }

    function totalSupply() public pure returns (uint256) {
        return 10000000000 * 10**uint256(DECIMALS);
    }

    function balanceOf(address account) public view returns (uint256) {
        return account.balance;
    }

    /// @dev Function that is called when a user or another contract wants to transfer funds.
    /// @param to Address of token receiver.
    /// @param value Number of tokens to transfer.
    /// @return Returns success of function call.
    function transfer(address to, uint256 value) public payable returns (bool) {
        if (msg.value != value) {
            return false;
        }
        return _transferFrom(msg.sender, to, value);
    }

    /**
   * @dev _transfer is invoked by _transferFrom method that is inherited from BaseERC20.
   * This enables us to transfer Polygon ETH between users while keeping the interface same as that of an ERC20 Token.
   */
    function _transfer(address sender, address recipient, uint256 amount)
        internal
    {
        require(recipient != address(this), "can't send to MRC20");
        _nativeTransfer(recipient, amount);
        emit Transfer(sender, recipient, amount);
    }

    // @notice method to transfer native asset to receiver (nonReentrant)
    // @dev 5000 gas is forwarded in the call to receiver
    // @dev msg.value checks (if req), emitting logs are handled seperately
    // @param receiver address to transfer native token to
    // @param amount amount of native token to transfer
    function _nativeTransfer(address receiver, uint256 amount) internal nonReentrant {
        uint256 txGasLimit = 5000;
        (bool success, bytes memory ret) = receiver.call.value(amount).gas(txGasLimit)("");
        if (!success) {
            assembly {
                revert(add(ret, 0x20), mload(ret)) // bubble up revert
            }
        }
    }
}

pragma solidity ^0.5.2;

import "./ChildToken.sol";

contract BaseERC20NoSig is ChildToken {
    event Deposit(
        address indexed token,
        address indexed from,
        uint256 amount,
        uint256 input1,
        uint256 output1
    );

    event Withdraw(
        address indexed token,
        address indexed from,
        uint256 amount,
        uint256 input1,
        uint256 output1
    );

    event LogTransfer(
        address indexed token,
        address indexed from,
        address indexed to,
        uint256 amount,
        uint256 input1,
        uint256 input2,
        uint256 output1,
        uint256 output2
    );

    constructor() public {}

    function transferWithSig(
        bytes calldata sig,
        uint256 amount,
        bytes32 data,
        uint256 expiration,
        address to
    ) external returns (address from) {
        revert("Disabled feature");
    }

    function balanceOf(address account) external view returns (uint256);
    function _transfer(address sender, address recipient, uint256 amount)
        internal;

    /// @param from Address from where tokens are withdrawn.
    /// @param to Address to where tokens are sent.
    /// @param value Number of tokens to transfer.
    /// @return Returns success of function call.
    function _transferFrom(address from, address to, uint256 value)
        internal
        returns (bool)
    {
        uint256 input1 = this.balanceOf(from);
        uint256 input2 = this.balanceOf(to);
        _transfer(from, to, value);
        emit LogTransfer(
            token,
            from,
            to,
            value,
            input1,
            input2,
            this.balanceOf(from),
            this.balanceOf(to)
        );
        return true;
    }
}

pragma solidity ^0.5.2;

import "openzeppelin-solidity/contracts/math/SafeMath.sol";
import "openzeppelin-solidity/contracts/ownership/Ownable.sol";

import "./misc/LibTokenTransferOrder.sol";

contract ChildToken is Ownable, LibTokenTransferOrder {
    using SafeMath for uint256;

    // ERC721/ERC20 contract token address on root chain
    address public token;
    address public childChain;
    address public parent;

    mapping(bytes32 => bool) public disabledHashes;

    modifier onlyChildChain() {
        require(
            msg.sender == childChain,
            "Child token: caller is not the child chain contract"
        );
        _;
    }

    event LogFeeTransfer(
        address indexed token,
        address indexed from,
        address indexed to,
        uint256 amount,
        uint256 input1,
        uint256 input2,
        uint256 output1,
        uint256 output2
    );

    event ChildChainChanged(
        address indexed previousAddress,
        address indexed newAddress
    );

    event ParentChanged(
        address indexed previousAddress,
        address indexed newAddress
    );

    function deposit(address user, uint256 amountOrTokenId) public;
    function withdraw(uint256 amountOrTokenId) public payable;

    function ecrecovery(bytes32 hash, bytes memory sig)
        public
        pure
        returns (address result)
    {
        bytes32 r;
        bytes32 s;
        uint8 v;
        if (sig.length != 65) {
            return address(0x0);
        }
        assembly {
            r := mload(add(sig, 32))
            s := mload(add(sig, 64))
            v := and(mload(add(sig, 65)), 255)
        }
        // https://github.com/ethereum/go-ethereum/issues/2053
        if (v < 27) {
            v += 27;
        }
        if (v != 27 && v != 28) {
            return address(0x0);
        }
        // get address out of hash and signature
        result = ecrecover(hash, v, r, s);
        // ecrecover returns zero on error
        require(result != address(0x0), "Error in ecrecover");
    }

    // change child chain address
    function changeChildChain(address newAddress) public onlyOwner {
        require(
            newAddress != address(0),
            "Child token: new child address is the zero address"
        );
        emit ChildChainChanged(childChain, newAddress);
        childChain = newAddress;
    }

    // change parent address
    function setParent(address newAddress) public onlyOwner {
        require(
            newAddress != address(0),
            "Child token: new parent address is the zero address"
        );
        emit ParentChanged(parent, newAddress);
        parent = newAddress;
    }
}

pragma solidity ^0.5.2;

/**
 * @title SafeMath
 * @dev Unsigned math operations with safety checks that revert on error
 */
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;
    }
}

pragma solidity ^0.5.2;

/**
 * @title Ownable
 * @dev The Ownable contract has an owner address, and provides basic authorization control
 * functions, this simplifies the implementation of "user permissions".
 */
contract Ownable {
    address private _owner;

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

    /**
     * @dev The Ownable constructor sets the original `owner` of the contract to the sender
     * account.
     */
    constructor () internal {
        _owner = msg.sender;
        emit OwnershipTransferred(address(0), _owner);
    }

    /**
     * @return the address of the owner.
     */
    function owner() public view returns (address) {
        return _owner;
    }

    /**
     * @dev Throws if called by any account other than the owner.
     */
    modifier onlyOwner() {
        require(isOwner());
        _;
    }

    /**
     * @return true if `msg.sender` is the owner of the contract.
     */
    function isOwner() public view returns (bool) {
        return msg.sender == _owner;
    }

    /**
     * @dev Allows the current owner to relinquish control of the contract.
     * It will not be possible to call the functions with the `onlyOwner`
     * modifier anymore.
     * @notice Renouncing ownership will leave the contract without an owner,
     * thereby removing any functionality that is only available to the owner.
     */
    function renounceOwnership() public onlyOwner {
        emit OwnershipTransferred(_owner, address(0));
        _owner = address(0);
    }

    /**
     * @dev Allows the current owner to transfer control of the contract to a newOwner.
     * @param newOwner The address to transfer ownership to.
     */
    function transferOwnership(address newOwner) public onlyOwner {
        _transferOwnership(newOwner);
    }

    /**
     * @dev Transfers control of the contract to a newOwner.
     * @param newOwner The address to transfer ownership to.
     */
    function _transferOwnership(address newOwner) internal {
        require(newOwner != address(0));
        emit OwnershipTransferred(_owner, newOwner);
        _owner = newOwner;
    }
}

pragma solidity ^0.5.2;

import {LibEIP712Domain} from "./EIP712.sol";

contract LibTokenTransferOrder is LibEIP712Domain {
    string internal constant EIP712_TOKEN_TRANSFER_ORDER_SCHEMA = "TokenTransferOrder(address spender,uint256 tokenIdOrAmount,bytes32 data,uint256 expiration)";
    bytes32 public constant EIP712_TOKEN_TRANSFER_ORDER_SCHEMA_HASH = keccak256(
        abi.encodePacked(EIP712_TOKEN_TRANSFER_ORDER_SCHEMA)
    );

    struct TokenTransferOrder {
        address spender;
        uint256 tokenIdOrAmount;
        bytes32 data;
        uint256 expiration;
    }

    function getTokenTransferOrderHash(
        address spender,
        uint256 tokenIdOrAmount,
        bytes32 data,
        uint256 expiration
    ) public view returns (bytes32 orderHash) {
        orderHash = hashEIP712Message(
            hashTokenTransferOrder(spender, tokenIdOrAmount, data, expiration)
        );
    }

    function hashTokenTransferOrder(
        address spender,
        uint256 tokenIdOrAmount,
        bytes32 data,
        uint256 expiration
    ) internal pure returns (bytes32 result) {
        bytes32 schemaHash = EIP712_TOKEN_TRANSFER_ORDER_SCHEMA_HASH;

        // Assembly for more efficiently computing:
        // return keccak256(abi.encode(
        //   schemaHash,
        //   spender,
        //   tokenIdOrAmount,
        //   data,
        //   expiration
        // ));

        assembly {
            // Load free memory pointer
            let memPtr := mload(64)

            mstore(memPtr, schemaHash) // hash of schema
            mstore(
                add(memPtr, 32),
                and(spender, 0xffffffffffffffffffffffffffffffffffffffff)
            ) // spender
            mstore(add(memPtr, 64), tokenIdOrAmount) // tokenIdOrAmount
            mstore(add(memPtr, 96), data) // hash of data
            mstore(add(memPtr, 128), expiration) // expiration

            // Compute hash
            result := keccak256(memPtr, 160)
        }
        return result;
    }
}

pragma solidity ^0.5.2;

import {ChainIdMixin} from "../../common/mixin/ChainIdMixin.sol";

contract LibEIP712Domain is ChainIdMixin {
    string internal constant EIP712_DOMAIN_SCHEMA = "EIP712Domain(string name,string version,uint256 chainId,address verifyingContract)";
    bytes32 public constant EIP712_DOMAIN_SCHEMA_HASH = keccak256(
        abi.encodePacked(EIP712_DOMAIN_SCHEMA)
    );

    string internal constant EIP712_DOMAIN_NAME = "Polygon Ecosystem Token";
    string internal constant EIP712_DOMAIN_VERSION = "2";
    uint256 internal constant EIP712_DOMAIN_CHAINID = CHAINID;

    bytes32 public EIP712_DOMAIN_HASH;

    constructor() public {
        EIP712_DOMAIN_HASH = keccak256(
            abi.encode(
                EIP712_DOMAIN_SCHEMA_HASH,
                keccak256(bytes(EIP712_DOMAIN_NAME)),
                keccak256(bytes(EIP712_DOMAIN_VERSION)),
                EIP712_DOMAIN_CHAINID,
                address(this)
            )
        );
    }

    function hashEIP712Message(bytes32 hashStruct)
        internal
        view
        returns (bytes32 result)
    {
        return _hashEIP712Message(hashStruct, EIP712_DOMAIN_HASH);
    }

    function hashEIP712MessageWithAddress(bytes32 hashStruct, address add)
        internal
        view
        returns (bytes32 result)
    {
        bytes32 domainHash = keccak256(
            abi.encode(
                EIP712_DOMAIN_SCHEMA_HASH,
                keccak256(bytes(EIP712_DOMAIN_NAME)),
                keccak256(bytes(EIP712_DOMAIN_VERSION)),
                EIP712_DOMAIN_CHAINID,
                add
            )
        );
        return _hashEIP712Message(hashStruct, domainHash);
    }

    function _hashEIP712Message(bytes32 hashStruct, bytes32 domainHash)
        internal
        pure
        returns (bytes32 result)
    {
        assembly {
            // Load free memory pointer
            let memPtr := mload(64)

            mstore(
                memPtr,
                0x1901000000000000000000000000000000000000000000000000000000000000
            ) // EIP191 header
            mstore(add(memPtr, 2), domainHash) // EIP712 domain hash
            mstore(add(memPtr, 34), hashStruct) // Hash of struct

            // Compute hash
            result := keccak256(memPtr, 66)
        }
    }
}

File 8 of 8 : ChainIdMixin.sol
pragma solidity ^0.5.2;

contract ChainIdMixin {
  bytes constant public networkId = hex"3A99";
  uint256 constant public CHAINID = 15001;
}

Settings
{
  "remappings": [
    "openzeppelin-solidity/=node_modules/openzeppelin-solidity/",
    "solidity-rlp/=node_modules/solidity-rlp/",
    "@ensdomains/=node_modules/@ensdomains/",
    "eth-gas-reporter/=node_modules/eth-gas-reporter/",
    "forge-std/=lib/forge-std/src/",
    "hardhat/=node_modules/hardhat/"
  ],
  "optimizer": {
    "enabled": true,
    "runs": 200
  },
  "metadata": {
    "useLiteralContent": false
  },
  "outputSelection": {
    "*": {
      "*": [
        "evm.bytecode",
        "evm.deployedBytecode",
        "abi"
      ]
    }
  },
  "evmVersion": "istanbul",
  "libraries": {}
}

Contract Security Audit

Contract ABI

API
[{"inputs":[],"payable":false,"stateMutability":"nonpayable","type":"constructor"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"previousAddress","type":"address"},{"indexed":true,"internalType":"address","name":"newAddress","type":"address"}],"name":"ChildChainChanged","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"token","type":"address"},{"indexed":true,"internalType":"address","name":"from","type":"address"},{"indexed":false,"internalType":"uint256","name":"amount","type":"uint256"},{"indexed":false,"internalType":"uint256","name":"input1","type":"uint256"},{"indexed":false,"internalType":"uint256","name":"output1","type":"uint256"}],"name":"Deposit","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"token","type":"address"},{"indexed":true,"internalType":"address","name":"from","type":"address"},{"indexed":true,"internalType":"address","name":"to","type":"address"},{"indexed":false,"internalType":"uint256","name":"amount","type":"uint256"},{"indexed":false,"internalType":"uint256","name":"input1","type":"uint256"},{"indexed":false,"internalType":"uint256","name":"input2","type":"uint256"},{"indexed":false,"internalType":"uint256","name":"output1","type":"uint256"},{"indexed":false,"internalType":"uint256","name":"output2","type":"uint256"}],"name":"LogFeeTransfer","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"token","type":"address"},{"indexed":true,"internalType":"address","name":"from","type":"address"},{"indexed":true,"internalType":"address","name":"to","type":"address"},{"indexed":false,"internalType":"uint256","name":"amount","type":"uint256"},{"indexed":false,"internalType":"uint256","name":"input1","type":"uint256"},{"indexed":false,"internalType":"uint256","name":"input2","type":"uint256"},{"indexed":false,"internalType":"uint256","name":"output1","type":"uint256"},{"indexed":false,"internalType":"uint256","name":"output2","type":"uint256"}],"name":"LogTransfer","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"previousOwner","type":"address"},{"indexed":true,"internalType":"address","name":"newOwner","type":"address"}],"name":"OwnershipTransferred","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"previousAddress","type":"address"},{"indexed":true,"internalType":"address","name":"newAddress","type":"address"}],"name":"ParentChanged","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"from","type":"address"},{"indexed":true,"internalType":"address","name":"to","type":"address"},{"indexed":false,"internalType":"uint256","name":"value","type":"uint256"}],"name":"Transfer","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"token","type":"address"},{"indexed":true,"internalType":"address","name":"from","type":"address"},{"indexed":false,"internalType":"uint256","name":"amount","type":"uint256"},{"indexed":false,"internalType":"uint256","name":"input1","type":"uint256"},{"indexed":false,"internalType":"uint256","name":"output1","type":"uint256"}],"name":"Withdraw","type":"event"},{"constant":true,"inputs":[],"name":"CHAINID","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"EIP712_DOMAIN_HASH","outputs":[{"internalType":"bytes32","name":"","type":"bytes32"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"EIP712_DOMAIN_SCHEMA_HASH","outputs":[{"internalType":"bytes32","name":"","type":"bytes32"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"EIP712_TOKEN_TRANSFER_ORDER_SCHEMA_HASH","outputs":[{"internalType":"bytes32","name":"","type":"bytes32"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[{"internalType":"address","name":"account","type":"address"}],"name":"balanceOf","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"internalType":"address","name":"newAddress","type":"address"}],"name":"changeChildChain","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[],"name":"childChain","outputs":[{"internalType":"address","name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"currentSupply","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"decimals","outputs":[{"internalType":"uint8","name":"","type":"uint8"}],"payable":false,"stateMutability":"pure","type":"function"},{"constant":false,"inputs":[{"internalType":"address","name":"user","type":"address"},{"internalType":"uint256","name":"amount","type":"uint256"}],"name":"deposit","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[{"internalType":"bytes32","name":"","type":"bytes32"}],"name":"disabledHashes","outputs":[{"internalType":"bool","name":"","type":"bool"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[{"internalType":"bytes32","name":"hash","type":"bytes32"},{"internalType":"bytes","name":"sig","type":"bytes"}],"name":"ecrecovery","outputs":[{"internalType":"address","name":"result","type":"address"}],"payable":false,"stateMutability":"pure","type":"function"},{"constant":true,"inputs":[{"internalType":"address","name":"spender","type":"address"},{"internalType":"uint256","name":"tokenIdOrAmount","type":"uint256"},{"internalType":"bytes32","name":"data","type":"bytes32"},{"internalType":"uint256","name":"expiration","type":"uint256"}],"name":"getTokenTransferOrderHash","outputs":[{"internalType":"bytes32","name":"orderHash","type":"bytes32"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"internalType":"address","name":"_childChain","type":"address"},{"internalType":"address","name":"_token","type":"address"}],"name":"initialize","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[],"name":"isOwner","outputs":[{"internalType":"bool","name":"","type":"bool"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"name","outputs":[{"internalType":"string","name":"","type":"string"}],"payable":false,"stateMutability":"pure","type":"function"},{"constant":true,"inputs":[],"name":"networkId","outputs":[{"internalType":"bytes","name":"","type":"bytes"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"owner","outputs":[{"internalType":"address","name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"parent","outputs":[{"internalType":"address","name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[],"name":"renounceOwnership","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"internalType":"address","name":"","type":"address"}],"name":"setParent","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[],"name":"symbol","outputs":[{"internalType":"string","name":"","type":"string"}],"payable":false,"stateMutability":"pure","type":"function"},{"constant":true,"inputs":[],"name":"token","outputs":[{"internalType":"address","name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"totalSupply","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"payable":false,"stateMutability":"pure","type":"function"},{"constant":false,"inputs":[{"internalType":"address","name":"to","type":"address"},{"internalType":"uint256","name":"value","type":"uint256"}],"name":"transfer","outputs":[{"internalType":"bool","name":"","type":"bool"}],"payable":true,"stateMutability":"payable","type":"function"},{"constant":false,"inputs":[{"internalType":"address","name":"newOwner","type":"address"}],"name":"transferOwnership","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"internalType":"bytes","name":"sig","type":"bytes"},{"internalType":"uint256","name":"amount","type":"uint256"},{"internalType":"bytes32","name":"data","type":"bytes32"},{"internalType":"uint256","name":"expiration","type":"uint256"},{"internalType":"address","name":"to","type":"address"}],"name":"transferWithSig","outputs":[{"internalType":"address","name":"from","type":"address"}],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"internalType":"uint256","name":"amount","type":"uint256"}],"name":"withdraw","outputs":[],"payable":true,"stateMutability":"payable","type":"function"}]

60806040526000600655600060085534801561001a57600080fd5b50600080546001600160a01b03191633178082556040516001600160a01b039190911691907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0908290a3604051806080016040528060528152602001611686605291396040516020018082805190602001908083835b602083106100af5780518252601f199092019160209182019101610090565b51815160209384036101000a60001901801990921691161790526040805192909401828103601f190183528085528251928201929092208285018552601783527f506f6c79676f6e2045636f73797374656d20546f6b656e00000000000000000092820192909252835180850185526001808252601960f91b918301919091528451808301939093527fafdc6b3596f2bc7878c706fa55d5aabb82790c51a37e088a158406cea4025910838601527fad7c5bef027816a800da1736444fb58a807ef4c9603b7848673f7e3a68eb14a56060840152613a9960808401523060a0808501919091528551808503909101815260c09093019094528151910120909155506114c391508190506101c36000396000f3fe0x6080604052600436106101b75760003560e01c80638da5cb5b116100ec578063b789543c1161008a578063e614d0d611610064578063e614d0d614610695578063ed9ef524146106aa578063f2fde38b146106dd578063fc0c546a14610710576101b7565b8063b789543c14610626578063cc79f97b1461066b578063e306f77914610680576101b7565b806395d89b41116100c657806395d89b41146105a6578063a9059cbb146105bb578063abceeba2146105e7578063acd06cb3146105fc576101b7565b80638da5cb5b146105535780638f32d59b146105685780639025e64c14610591576101b7565b806347e7ef241161015957806370a082311161013357806370a082311461043c578063715018a61461046f578063771282f61461048457806377d32e9414610499576101b7565b806347e7ef24146103b3578063485cc955146103ec57806360f96a8f14610427576101b7565b806319d27d9c1161019557806319d27d9c146102a25780632e1a7d4d14610356578063313ce5671461037357806342fc47fb1461039e576101b7565b806306fdde03146101bc5780631499c5921461024657806318160ddd1461027b575b600080fd5b3480156101c857600080fd5b506101d1610725565b6040805160208082528351818301528351919283929083019185019080838360005b8381101561020b5781810151838201526020016101f3565b50505050905090810190601f1680156102385780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b34801561025257600080fd5b506102796004803603602081101561026957600080fd5b50356001600160a01b031661075c565b005b34801561028757600080fd5b5061029061079c565b60408051918252519081900360200190f35b3480156102ae57600080fd5b5061033a600480360360a08110156102c557600080fd5b8101906020810181356401000000008111156102e057600080fd5b8201836020820111156102f257600080fd5b8035906020019184600183028401116401000000008311171561031457600080fd5b9193509150803590602081013590604081013590606001356001600160a01b03166107ac565b604080516001600160a01b039092168252519081900360200190f35b6102796004803603602081101561036c57600080fd5b50356107ee565b34801561037f57600080fd5b506103886108c6565b6040805160ff9092168252519081900360200190f35b3480156103aa57600080fd5b5061033a6108cb565b3480156103bf57600080fd5b50610279600480360360408110156103d657600080fd5b506001600160a01b0381351690602001356108da565b3480156103f857600080fd5b506102796004803603604081101561040f57600080fd5b506001600160a01b03813581169160200135166109a8565b34801561043357600080fd5b5061033a610a21565b34801561044857600080fd5b506102906004803603602081101561045f57600080fd5b50356001600160a01b0316610a30565b34801561047b57600080fd5b50610279610a3d565b34801561049057600080fd5b50610290610a98565b3480156104a557600080fd5b5061033a600480360360408110156104bc57600080fd5b813591908101906040810160208201356401000000008111156104de57600080fd5b8201836020820111156104f057600080fd5b8035906020019184600183028401116401000000008311171561051257600080fd5b91908080601f016020809104026020016040519081016040528093929190818152602001838380828437600092019190915250929550610a9e945050505050565b34801561055f57600080fd5b5061033a610bc2565b34801561057457600080fd5b5061057d610bd1565b604080519115158252519081900360200190f35b34801561059d57600080fd5b506101d1610be2565b3480156105b257600080fd5b506101d1610c00565b61057d600480360360408110156105d157600080fd5b506001600160a01b038135169060200135610c1d565b3480156105f357600080fd5b50610290610c40565b34801561060857600080fd5b5061057d6004803603602081101561061f57600080fd5b5035610cc9565b34801561063257600080fd5b506102906004803603608081101561064957600080fd5b506001600160a01b038135169060208101359060408101359060600135610cde565b34801561067757600080fd5b50610290610cfd565b34801561068c57600080fd5b50610290610d03565b3480156106a157600080fd5b50610290610d09565b3480156106b657600080fd5b50610279600480360360208110156106cd57600080fd5b50356001600160a01b0316610d53565b3480156106e957600080fd5b506102796004803603602081101561070057600080fd5b50356001600160a01b0316610e05565b34801561071c57600080fd5b5061033a610e22565b60408051808201909152601781527f506f6c79676f6e2045636f73797374656d20546f6b656e000000000000000000602082015290565b6040805162461bcd60e51b815260206004820152601060248201526f44697361626c6564206665617475726560801b604482015290519081900360640190fd5b6b204fce5e3e2502611000000090565b6040805162461bcd60e51b815260206004820152601060248201526f44697361626c6564206665617475726560801b6044820152905160009181900360640190fd5b3360006107fa82610a30565b600654909150610810908463ffffffff610e3116565b600655821580159061082157508234145b610868576040805162461bcd60e51b8152602060048201526013602482015272125b9cdd59999a58da595b9d08185b5bdd5b9d606a1b604482015290519081900360640190fd5b6002546001600160a01b0380841691167febff2602b3f468259e1e99f613fed6691f3a6526effe6ef3e768ba7ae7a36c4f85846108a487610a30565b60408051938452602084019290925282820152519081900360600190a3505050565b601290565b6003546001600160a01b031681565b6108e2610bd1565b6108eb57600080fd5b60008111801561090357506001600160a01b03821615155b61093e5760405162461bcd60e51b815260040180806020018281038252602381526020018061138d6023913960400191505060405180910390fd5b600061094983610a30565b60065490915061095f908363ffffffff610e4616565b60065561096c8383610e58565b6002546001600160a01b0380851691167f4e2ca0515ed1aef1395f66b5303bb5d6f1bf9d61a353fa53f73f8ac9973fa9f684846108a488610a30565b60075460ff16156109ea5760405162461bcd60e51b815260040180806020018281038252602381526020018061136a6023913960400191505060405180910390fd5b6007805460ff19166001179055600280546001600160a01b0383166001600160a01b0319909116179055610a1d82610f17565b5050565b6004546001600160a01b031681565b6001600160a01b03163190565b610a45610bd1565b610a4e57600080fd5b600080546040516001600160a01b03909116907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0908390a3600080546001600160a01b0319169055565b60065481565b6000806000808451604114610ab95760009350505050610bbc565b50505060208201516040830151604184015160ff16601b811015610adb57601b015b8060ff16601b14158015610af357508060ff16601c14155b15610b045760009350505050610bbc565b6040805160008152602080820180845289905260ff8416828401526060820186905260808201859052915160019260a0808401939192601f1981019281900390910190855afa158015610b5b573d6000803e3d6000fd5b5050604051601f1901519450506001600160a01b038416610bb8576040805162461bcd60e51b815260206004820152601260248201527122b93937b91034b71032b1b932b1b7bb32b960711b604482015290519081900360640190fd5b5050505b92915050565b6000546001600160a01b031690565b6000546001600160a01b0316331490565b604051806040016040528060028152602001613a9960f01b81525081565b6040805180820190915260038152621413d360ea1b602082015290565b6000813414610c2e57506000610bbc565b610c39338484610f85565b9392505050565b6040518060800160405280605b8152602001611434605b91396040516020018082805190602001908083835b60208310610c8b5780518252601f199092019160209182019101610c6c565b6001836020036101000a0380198251168184511680821785525050505050509050019150506040516020818303038152906040528051906020012081565b60056020526000908152604090205460ff1681565b6000610cf4610cef868686866111d2565b61128b565b95945050505050565b613a9981565b60015481565b6040518060800160405280605281526020016113b06052913960405160200180828051906020019080838360208310610c8b5780518252601f199092019160209182019101610c6c565b610d5b610bd1565b610d6457600080fd5b6001600160a01b038116610da95760405162461bcd60e51b81526004018080602001828103825260328152602001806114026032913960400191505060405180910390fd5b6003546040516001600160a01b038084169216907f1f9f3556dd336016cdf20adaead7d5c73665dba664b60e8c17e9a4eb91ce1d3990600090a3600380546001600160a01b0319166001600160a01b0392909216919091179055565b610e0d610bd1565b610e1657600080fd5b610e1f81610f17565b50565b6002546001600160a01b031681565b600082821115610e4057600080fd5b50900390565b600082820183811015610c3957600080fd5b60085415610e9a576040805162461bcd60e51b815260206004820152600a6024820152697265656e7472616e637960b01b604482015290519081900360640190fd5b6001600855604051611388906000906060906001600160a01b038616908490869085818181858888f193505050503d8060008114610ef4576040519150601f19603f3d011682016040523d82523d6000602084013e610ef9565b606091505b509150915081610f0b57805160208201fd5b50506000600855505050565b6001600160a01b038116610f2a57600080fd5b600080546040516001600160a01b03808516939216917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e091a3600080546001600160a01b0319166001600160a01b0392909216919091179055565b604080516370a0823160e01b81526001600160a01b03851660048201529051600091829130916370a08231916024808301926020929190829003018186803b158015610fd057600080fd5b505afa158015610fe4573d6000803e3d6000fd5b505050506040513d6020811015610ffa57600080fd5b5051604080516370a0823160e01b81526001600160a01b0387166004820152905191925060009130916370a08231916024808301926020929190829003018186803b15801561104857600080fd5b505afa15801561105c573d6000803e3d6000fd5b505050506040513d602081101561107257600080fd5b50519050611081868686611299565b600254604080516370a0823160e01b81526001600160a01b03898116600483018190529251818a1694909116917fe6497e3ee548a3372136af2fcb0696db31fc6cf20260707645068bd3fe97f3c49189918891889130916370a0823191602480820192602092909190829003018186803b1580156110fe57600080fd5b505afa158015611112573d6000803e3d6000fd5b505050506040513d602081101561112857600080fd5b5051604080516370a0823160e01b81526001600160a01b038f166004820152905130916370a08231916024808301926020929190829003018186803b15801561117057600080fd5b505afa158015611184573d6000803e3d6000fd5b505050506040513d602081101561119a57600080fd5b50516040805195865260208601949094528484019290925260608401526080830152519081900360a00190a450600195945050505050565b6000806040518060800160405280605b8152602001611434605b91396040516020018082805190602001908083835b602083106112205780518252601f199092019160209182019101611201565b51815160209384036101000a60001901801990921691161790526040805192909401828103601f1901835280855282519282019290922082526001600160a01b039b909b169a81019a909a5250880196909652505050606084019190915260808301525060a0902090565b6000610bbc82600154611347565b6001600160a01b0382163014156112ed576040805162461bcd60e51b8152602060048201526013602482015272063616e27742073656e6420746f204d5243323606c1b604482015290519081900360640190fd5b6112f78282610e58565b816001600160a01b0316836001600160a01b03167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef836040518082815260200191505060405180910390a3505050565b60405161190160f01b815260028101919091526022810191909152604290209056fe54686520636f6e747261637420697320616c726561647920696e697469616c697a6564496e73756666696369656e7420616d6f756e74206f7220696e76616c69642075736572454950373132446f6d61696e28737472696e67206e616d652c737472696e672076657273696f6e2c75696e7432353620636861696e49642c6164647265737320766572696679696e67436f6e7472616374294368696c6420746f6b656e3a206e6577206368696c64206164647265737320697320746865207a65726f2061646472657373546f6b656e5472616e736665724f726465722861646472657373207370656e6465722c75696e7432353620746f6b656e49644f72416d6f756e742c6279746573333220646174612c75696e743235362065787069726174696f6e29a265627a7a723158205f23be7574e70cfc01d0cfd6803b871f92465e9ae4a10fe95ed31ccb810bda3e64736f6c63430005110032454950373132446f6d61696e28737472696e67206e616d652c737472696e672076657273696f6e2c75696e7432353620636861696e49642c6164647265737320766572696679696e67436f6e747261637429

Deployed Bytecode

0x6080604052600436106101b75760003560e01c80638da5cb5b116100ec578063b789543c1161008a578063e614d0d611610064578063e614d0d614610695578063ed9ef524146106aa578063f2fde38b146106dd578063fc0c546a14610710576101b7565b8063b789543c14610626578063cc79f97b1461066b578063e306f77914610680576101b7565b806395d89b41116100c657806395d89b41146105a6578063a9059cbb146105bb578063abceeba2146105e7578063acd06cb3146105fc576101b7565b80638da5cb5b146105535780638f32d59b146105685780639025e64c14610591576101b7565b806347e7ef241161015957806370a082311161013357806370a082311461043c578063715018a61461046f578063771282f61461048457806377d32e9414610499576101b7565b806347e7ef24146103b3578063485cc955146103ec57806360f96a8f14610427576101b7565b806319d27d9c1161019557806319d27d9c146102a25780632e1a7d4d14610356578063313ce5671461037357806342fc47fb1461039e576101b7565b806306fdde03146101bc5780631499c5921461024657806318160ddd1461027b575b600080fd5b3480156101c857600080fd5b506101d1610725565b6040805160208082528351818301528351919283929083019185019080838360005b8381101561020b5781810151838201526020016101f3565b50505050905090810190601f1680156102385780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b34801561025257600080fd5b506102796004803603602081101561026957600080fd5b50356001600160a01b031661075c565b005b34801561028757600080fd5b5061029061079c565b60408051918252519081900360200190f35b3480156102ae57600080fd5b5061033a600480360360a08110156102c557600080fd5b8101906020810181356401000000008111156102e057600080fd5b8201836020820111156102f257600080fd5b8035906020019184600183028401116401000000008311171561031457600080fd5b9193509150803590602081013590604081013590606001356001600160a01b03166107ac565b604080516001600160a01b039092168252519081900360200190f35b6102796004803603602081101561036c57600080fd5b50356107ee565b34801561037f57600080fd5b506103886108c6565b6040805160ff9092168252519081900360200190f35b3480156103aa57600080fd5b5061033a6108cb565b3480156103bf57600080fd5b50610279600480360360408110156103d657600080fd5b506001600160a01b0381351690602001356108da565b3480156103f857600080fd5b506102796004803603604081101561040f57600080fd5b506001600160a01b03813581169160200135166109a8565b34801561043357600080fd5b5061033a610a21565b34801561044857600080fd5b506102906004803603602081101561045f57600080fd5b50356001600160a01b0316610a30565b34801561047b57600080fd5b50610279610a3d565b34801561049057600080fd5b50610290610a98565b3480156104a557600080fd5b5061033a600480360360408110156104bc57600080fd5b813591908101906040810160208201356401000000008111156104de57600080fd5b8201836020820111156104f057600080fd5b8035906020019184600183028401116401000000008311171561051257600080fd5b91908080601f016020809104026020016040519081016040528093929190818152602001838380828437600092019190915250929550610a9e945050505050565b34801561055f57600080fd5b5061033a610bc2565b34801561057457600080fd5b5061057d610bd1565b604080519115158252519081900360200190f35b34801561059d57600080fd5b506101d1610be2565b3480156105b257600080fd5b506101d1610c00565b61057d600480360360408110156105d157600080fd5b506001600160a01b038135169060200135610c1d565b3480156105f357600080fd5b50610290610c40565b34801561060857600080fd5b5061057d6004803603602081101561061f57600080fd5b5035610cc9565b34801561063257600080fd5b506102906004803603608081101561064957600080fd5b506001600160a01b038135169060208101359060408101359060600135610cde565b34801561067757600080fd5b50610290610cfd565b34801561068c57600080fd5b50610290610d03565b3480156106a157600080fd5b50610290610d09565b3480156106b657600080fd5b50610279600480360360208110156106cd57600080fd5b50356001600160a01b0316610d53565b3480156106e957600080fd5b506102796004803603602081101561070057600080fd5b50356001600160a01b0316610e05565b34801561071c57600080fd5b5061033a610e22565b60408051808201909152601781527f506f6c79676f6e2045636f73797374656d20546f6b656e000000000000000000602082015290565b6040805162461bcd60e51b815260206004820152601060248201526f44697361626c6564206665617475726560801b604482015290519081900360640190fd5b6b204fce5e3e2502611000000090565b6040805162461bcd60e51b815260206004820152601060248201526f44697361626c6564206665617475726560801b6044820152905160009181900360640190fd5b3360006107fa82610a30565b600654909150610810908463ffffffff610e3116565b600655821580159061082157508234145b610868576040805162461bcd60e51b8152602060048201526013602482015272125b9cdd59999a58da595b9d08185b5bdd5b9d606a1b604482015290519081900360640190fd5b6002546001600160a01b0380841691167febff2602b3f468259e1e99f613fed6691f3a6526effe6ef3e768ba7ae7a36c4f85846108a487610a30565b60408051938452602084019290925282820152519081900360600190a3505050565b601290565b6003546001600160a01b031681565b6108e2610bd1565b6108eb57600080fd5b60008111801561090357506001600160a01b03821615155b61093e5760405162461bcd60e51b815260040180806020018281038252602381526020018061138d6023913960400191505060405180910390fd5b600061094983610a30565b60065490915061095f908363ffffffff610e4616565b60065561096c8383610e58565b6002546001600160a01b0380851691167f4e2ca0515ed1aef1395f66b5303bb5d6f1bf9d61a353fa53f73f8ac9973fa9f684846108a488610a30565b60075460ff16156109ea5760405162461bcd60e51b815260040180806020018281038252602381526020018061136a6023913960400191505060405180910390fd5b6007805460ff19166001179055600280546001600160a01b0383166001600160a01b0319909116179055610a1d82610f17565b5050565b6004546001600160a01b031681565b6001600160a01b03163190565b610a45610bd1565b610a4e57600080fd5b600080546040516001600160a01b03909116907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0908390a3600080546001600160a01b0319169055565b60065481565b6000806000808451604114610ab95760009350505050610bbc565b50505060208201516040830151604184015160ff16601b811015610adb57601b015b8060ff16601b14158015610af357508060ff16601c14155b15610b045760009350505050610bbc565b6040805160008152602080820180845289905260ff8416828401526060820186905260808201859052915160019260a0808401939192601f1981019281900390910190855afa158015610b5b573d6000803e3d6000fd5b5050604051601f1901519450506001600160a01b038416610bb8576040805162461bcd60e51b815260206004820152601260248201527122b93937b91034b71032b1b932b1b7bb32b960711b604482015290519081900360640190fd5b5050505b92915050565b6000546001600160a01b031690565b6000546001600160a01b0316331490565b604051806040016040528060028152602001613a9960f01b81525081565b6040805180820190915260038152621413d360ea1b602082015290565b6000813414610c2e57506000610bbc565b610c39338484610f85565b9392505050565b6040518060800160405280605b8152602001611434605b91396040516020018082805190602001908083835b60208310610c8b5780518252601f199092019160209182019101610c6c565b6001836020036101000a0380198251168184511680821785525050505050509050019150506040516020818303038152906040528051906020012081565b60056020526000908152604090205460ff1681565b6000610cf4610cef868686866111d2565b61128b565b95945050505050565b613a9981565b60015481565b6040518060800160405280605281526020016113b06052913960405160200180828051906020019080838360208310610c8b5780518252601f199092019160209182019101610c6c565b610d5b610bd1565b610d6457600080fd5b6001600160a01b038116610da95760405162461bcd60e51b81526004018080602001828103825260328152602001806114026032913960400191505060405180910390fd5b6003546040516001600160a01b038084169216907f1f9f3556dd336016cdf20adaead7d5c73665dba664b60e8c17e9a4eb91ce1d3990600090a3600380546001600160a01b0319166001600160a01b0392909216919091179055565b610e0d610bd1565b610e1657600080fd5b610e1f81610f17565b50565b6002546001600160a01b031681565b600082821115610e4057600080fd5b50900390565b600082820183811015610c3957600080fd5b60085415610e9a576040805162461bcd60e51b815260206004820152600a6024820152697265656e7472616e637960b01b604482015290519081900360640190fd5b6001600855604051611388906000906060906001600160a01b038616908490869085818181858888f193505050503d8060008114610ef4576040519150601f19603f3d011682016040523d82523d6000602084013e610ef9565b606091505b509150915081610f0b57805160208201fd5b50506000600855505050565b6001600160a01b038116610f2a57600080fd5b600080546040516001600160a01b03808516939216917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e091a3600080546001600160a01b0319166001600160a01b0392909216919091179055565b604080516370a0823160e01b81526001600160a01b03851660048201529051600091829130916370a08231916024808301926020929190829003018186803b158015610fd057600080fd5b505afa158015610fe4573d6000803e3d6000fd5b505050506040513d6020811015610ffa57600080fd5b5051604080516370a0823160e01b81526001600160a01b0387166004820152905191925060009130916370a08231916024808301926020929190829003018186803b15801561104857600080fd5b505afa15801561105c573d6000803e3d6000fd5b505050506040513d602081101561107257600080fd5b50519050611081868686611299565b600254604080516370a0823160e01b81526001600160a01b03898116600483018190529251818a1694909116917fe6497e3ee548a3372136af2fcb0696db31fc6cf20260707645068bd3fe97f3c49189918891889130916370a0823191602480820192602092909190829003018186803b1580156110fe57600080fd5b505afa158015611112573d6000803e3d6000fd5b505050506040513d602081101561112857600080fd5b5051604080516370a0823160e01b81526001600160a01b038f166004820152905130916370a08231916024808301926020929190829003018186803b15801561117057600080fd5b505afa158015611184573d6000803e3d6000fd5b505050506040513d602081101561119a57600080fd5b50516040805195865260208601949094528484019290925260608401526080830152519081900360a00190a450600195945050505050565b6000806040518060800160405280605b8152602001611434605b91396040516020018082805190602001908083835b602083106112205780518252601f199092019160209182019101611201565b51815160209384036101000a60001901801990921691161790526040805192909401828103601f1901835280855282519282019290922082526001600160a01b039b909b169a81019a909a5250880196909652505050606084019190915260808301525060a0902090565b6000610bbc82600154611347565b6001600160a01b0382163014156112ed576040805162461bcd60e51b8152602060048201526013602482015272063616e27742073656e6420746f204d5243323606c1b604482015290519081900360640190fd5b6112f78282610e58565b816001600160a01b0316836001600160a01b03167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef836040518082815260200191505060405180910390a3505050565b60405161190160f01b815260028101919091526022810191909152604290209056fe54686520636f6e747261637420697320616c726561647920696e697469616c697a6564496e73756666696369656e7420616d6f756e74206f7220696e76616c69642075736572454950373132446f6d61696e28737472696e67206e616d652c737472696e672076657273696f6e2c75696e7432353620636861696e49642c6164647265737320766572696679696e67436f6e7472616374294368696c6420746f6b656e3a206e6577206368696c64206164647265737320697320746865207a65726f2061646472657373546f6b656e5472616e736665724f726465722861646472657373207370656e6465722c75696e7432353620746f6b656e49644f72416d6f756e742c6279746573333220646174612c75696e743235362065787069726174696f6e29a265627a7a723158205f23be7574e70cfc01d0cfd6803b871f92465e9ae4a10fe95ed31ccb810bda3e64736f6c63430005110032

Deployed Bytecode Sourcemap

330:3982:2:-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;2180:101;;8:9:-1;5:2;;;30:1;27;20:12;5:2;2180:101:2;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;8:100:-1;33:3;30:1;27:10;8:100;;;90:11;;;84:18;71:11;;;64:39;52:2;45:10;8:100;;;12:14;2180:101:2;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;1009:78;;8:9:-1;5:2;;;30:1;27;20:12;5:2;1009:78:2;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;-1:-1;1009:78:2;-1:-1:-1;;;;;1009:78:2;;:::i;:::-;;2462:112;;8:9:-1;5:2;;;30:1;27;20:12;5:2;2462:112:2;;;:::i;:::-;;;;;;;;;;;;;;;;688:228:0;;8:9:-1;5:2;;;30:1;27;20:12;5:2;688:228:0;;;;;;13:3:-1;8;5:12;2:2;;;30:1;27;20:12;2:2;688:228:0;;;;;;;;21:11:-1;5:28;;2:2;;;46:1;43;36:12;2:2;688:228:0;;35:9:-1;28:4;12:14;8:25;5:40;2:2;;;58:1;55;48:12;2:2;688:228:0;;;;;;100:9:-1;95:1;81:12;77:20;67:8;63:35;60:50;39:11;25:12;22:29;11:107;8:2;;;131:1;128;121:12;8:2;688:228:0;;-1:-1:-1;688:228:0;-1:-1:-1;688:228:0;;;;;;;;;;;;;;;;-1:-1:-1;;;;;688:228:0;;:::i;:::-;;;;-1:-1:-1;;;;;688:228:0;;;;;;;;;;;;;;1733:441:2;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;-1:-1;1733:441:2;;:::i;2376:80::-;;8:9:-1;5:2;;;30:1;27;20:12;5:2;2376:80:2;;;:::i;:::-;;;;;;;;;;;;;;;;;;;370:25:1;;8:9:-1;5:2;;;30:1;27;20:12;5:2;370:25:1;;;:::i;1093:634:2:-;;8:9:-1;5:2;;;30:1;27;20:12;5:2;1093:634:2;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;-1:-1;;;;;;1093:634:2;;;;;;;;:::i;765:238::-;;8:9:-1;5:2;;;30:1;27;20:12;5:2;765:238:2;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;-1:-1;;;;;;765:238:2;;;;;;;;;;:::i;401:21:1:-;;8:9:-1;5:2;;;30:1;27;20:12;5:2;401:21:1;;;:::i;2580:105:2:-;;8:9:-1;5:2;;;30:1;27;20:12;5:2;2580:105:2;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;-1:-1;2580:105:2;-1:-1:-1;;;;;2580:105:2;;:::i;1423:137:7:-;;8:9:-1;5:2;;;30:1;27;20:12;5:2;1423:137:7;;;:::i;447:32:2:-;;8:9:-1;5:2;;;30:1;27;20:12;5:2;447:32:2;;;:::i;1262:795:1:-;;8:9:-1;5:2;;;30:1;27;20:12;5:2;1262:795:1;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;1262:795:1;;;;;;;;;;;;;;21:11:-1;5:28;;2:2;;;46:1;43;36:12;2:2;1262:795:1;;35:9:-1;28:4;12:14;8:25;5:40;2:2;;;58:1;55;48:12;2:2;1262:795:1;;;;;;100:9:-1;95:1;81:12;77:20;67:8;63:35;60:50;39:11;25:12;22:29;11:107;8:2;;;131:1;128;121:12;8:2;1262:795:1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;30:3:-1;22:6;14;1:33;99:1;81:16;;74:27;;;;-1:-1;1262:795:1;;-1:-1:-1;1262:795:1;;-1:-1:-1;;;;;1262:795:1:i;659:77:7:-;;8:9:-1;5:2;;;30:1;27;20:12;5:2;659:77:7;;;:::i;979:90::-;;8:9:-1;5:2;;;30:1;27;20:12;5:2;979:90:7;;;:::i;:::-;;;;;;;;;;;;;;;;;;51:43:5;;8:9:-1;5:2;;;30:1;27;20:12;5:2;51:43:5;;;:::i;2287:83:2:-;;8:9:-1;5:2;;;30:1;27;20:12;5:2;2287:83:2;;;:::i;2931:205::-;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;-1:-1;;;;;;2931:205:2;;;;;;;;:::i;289:143:4:-;;8:9:-1;5:2;;;30:1;27;20:12;5:2;289:143:4;;;:::i;429:46:1:-;;8:9:-1;5:2;;;30:1;27;20:12;5:2;429:46:1;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;-1:-1;429:46:1;;:::i;586:325:4:-;;8:9:-1;5:2;;;30:1;27;20:12;5:2;586:325:4;;;;;;13:3:-1;8;5:12;2:2;;;30:1;27;20:12;2:2;-1:-1;;;;;;586:325:4;;;;;;;;;;;;;;;;;;:::i;98:39:5:-;;8:9:-1;5:2;;;30:1;27;20:12;5:2;98:39:5;;;:::i;598:33:3:-;;8:9:-1;5:2;;;30:1;27;20:12;5:2;598:33:3;;;:::i;277:115::-;;8:9:-1;5:2;;;30:1;27;20:12;5:2;277:115:3;;;:::i;2097:290:1:-;;8:9:-1;5:2;;;30:1;27;20:12;5:2;2097:290:1;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;-1:-1;2097:290:1;-1:-1:-1;;;;;2097:290:1;;:::i;1731:107:7:-;;8:9:-1;5:2;;;30:1;27;20:12;5:2;1731:107:7;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;-1:-1;1731:107:7;-1:-1:-1;;;;;1731:107:7;;:::i;344:20:1:-;;8:9:-1;5:2;;;30:1;27;20:12;5:2;344:20:1;;;:::i;2180:101:2:-;2242:32;;;;;;;;;;;;;;;;;2180:101;:::o;1009:78::-;1054:26;;;-1:-1:-1;;;1054:26:2;;;;;;;;;;;;-1:-1:-1;;;1054:26:2;;;;;;;;;;;;;;2462:112;2532:35;2462:112;:::o;688:228:0:-;883:26;;;-1:-1:-1;;;883:26:0;;;;;;;;;;;;-1:-1:-1;;;883:26:0;;;;;;859:12;;883:26;;;;;;;1733:441:2;1807:10;1792:12;1868:15;1807:10;1868:9;:15::i;:::-;1910:13;;1852:31;;-1:-1:-1;1910:25:2;;1928:6;1910:25;:17;:25;:::i;:::-;1894:13;:41;1994:10;;;;;:33;;;2021:6;2008:9;:19;1994:33;1973:99;;;;;-1:-1:-1;;;1973:99:2;;;;;;;;;;;;-1:-1:-1;;;1973:99:2;;;;;;;;;;;;;;;2123:5;;-1:-1:-1;;;;;2114:53:2;;;;2123:5;2114:53;2136:6;2144:5;2151:15;2130:4;2151:9;:15::i;:::-;2114:53;;;;;;;;;;;;;;;;;;;;;;;;;;1733:441;;;:::o;2376:80::-;519:2;2376:80;:::o;370:25:1:-;;;-1:-1:-1;;;;;370:25:1;;:::o;1093:634:2:-;863:9:7;:7;:9::i;:::-;855:18;;;;;;1234:1:2;1225:6;:10;:34;;;;-1:-1:-1;;;;;;1239:20:2;;;;1225:34;1204:116;;;;-1:-1:-1;;;1204:116:2;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;1356:14;1373:15;1383:4;1373:9;:15::i;:::-;1414:13;;1356:32;;-1:-1:-1;1414:25:2;;1432:6;1414:25;:17;:25;:::i;:::-;1398:13;:41;1596:29;1612:4;1618:6;1596:15;:29::i;:::-;1675:5;;-1:-1:-1;;;;;1667:53:2;;;;1675:5;1667:53;1688:6;1696;1704:15;1682:4;1704:9;:15::i;765:238::-;848:13;;;;847:14;839:62;;;;-1:-1:-1;;;839:62:2;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;911:13;:20;;-1:-1:-1;;911:20:2;927:4;911:20;;;941:5;:14;;-1:-1:-1;;;;;941:14:2;;-1:-1:-1;;;;;;941:14:2;;;;;;965:31;984:11;965:18;:31::i;:::-;765:238;;:::o;401:21:1:-;;;-1:-1:-1;;;;;401:21:1;;:::o;2580:105:2:-;-1:-1:-1;;;;;2663:15:2;;;2580:105::o;1423:137:7:-;863:9;:7;:9::i;:::-;855:18;;;;;;1521:1;1505:6;;1484:40;;-1:-1:-1;;;;;1505:6:7;;;;1484:40;;1521:1;;1484:40;1551:1;1534:19;;-1:-1:-1;;;;;;1534:19:7;;;1423:137::o;447:32:2:-;;;;:::o;1262:795:1:-;1359:14;1389:9;1408;1427:7;1448:3;:10;1462:2;1448:16;1444:66;;1495:3;1480:19;;;;;;;1444:66;-1:-1:-1;;;1562:2:1;1553:12;;1547:19;1599:2;1590:12;;1584:19;1640:2;1631:12;;1625:19;1646:3;1621:29;1740:2;1736:6;;1732:44;;;1763:2;1758:7;1732:44;1789:1;:7;;1794:2;1789:7;;:18;;;;;1800:1;:7;;1805:2;1800:7;;1789:18;1785:68;;;1838:3;1823:19;;;;;;;1785:68;1920:24;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;1920:24:1;;;;;;;;;;;;;;8:9:-1;5:2;;;45:16;42:1;39;24:38;77:16;74:1;67:27;5:2;-1:-1;;1920:24:1;;-1:-1:-1;;1920:24:1;;;-1:-1:-1;;;;;;;2005:22:1;;1997:53;;;;;-1:-1:-1;;;1997:53:1;;;;;;;;;;;;-1:-1:-1;;;1997:53:1;;;;;;;;;;;;;;;1262:795;;;;;;;;:::o;659:77:7:-;697:7;723:6;-1:-1:-1;;;;;723:6:7;659:77;:::o;979:90::-;1019:4;1056:6;-1:-1:-1;;;;;1056:6:7;1042:10;:20;;979:90::o;51:43:5:-;;;;;;;;;;;;;;-1:-1:-1;;;51:43:5;;;;:::o;2287:83:2:-;2351:12;;;;;;;;;;;;-1:-1:-1;;;2351:12:2;;;;2287:83;:::o;2931:205::-;3000:4;3033:5;3020:9;:18;3016:61;;-1:-1:-1;3061:5:2;3054:12;;3016:61;3093:36;3107:10;3119:2;3123:5;3093:13;:36::i;:::-;3086:43;2931:205;-1:-1:-1;;;2931:205:2:o;289:143:4:-;391:34;;;;;;;;;;;;;;;;;374:52;;;;;;;;;;;;;;;36:153:-1;66:2;61:3;58:11;36:153;;176:10;;164:23;;-1:-1;;139:12;;;;98:2;89:12;;;;114;36:153;;;274:1;267:3;263:2;259:12;254:3;250:22;246:30;315:4;311:9;305:3;299:10;295:26;356:4;350:3;344:10;340:21;389:7;380;377:20;372:3;365:33;3:399;;;374:52:4;;;;;;;;;;;49:4:-1;39:7;30;26:21;22:32;13:7;6:49;374:52:4;;;355:77;;;;;;289:143;:::o;429:46:1:-;;;;;; ;;;;;;;;;:::o;586:325:4:-;756:17;797:107;828:66;851:7;860:15;877:4;883:10;828:22;:66::i;:::-;797:17;:107::i;:::-;785:119;586:325;-1:-1:-1;;;;;586:325:4:o;98:39:5:-;132:5;98:39;:::o;598:33:3:-;;;;:::o;277:115::-;365:20;;;;;;;;;;;;;;;;;348:38;;;;;;;;;;;;;;;66:2:-1;61:3;58:11;36:153;;176:10;;164:23;;-1:-1;;139:12;;;;98:2;89:12;;;;114;36:153;;2097:290:1;863:9:7;:7;:9::i;:::-;855:18;;;;;;-1:-1:-1;;;;;2191:24:1;;2170:121;;;;-1:-1:-1;;;2170:121:1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;2324:10;;2306:41;;-1:-1:-1;;;;;2306:41:1;;;;2324:10;;2306:41;;2324:10;;2306:41;2357:10;:23;;-1:-1:-1;;;;;;2357:23:1;-1:-1:-1;;;;;2357:23:1;;;;;;;;;;2097:290::o;1731:107:7:-;863:9;:7;:9::i;:::-;855:18;;;;;;1803:28;1822:8;1803:18;:28::i;:::-;1731:107;:::o;344:20:1:-;;;-1:-1:-1;;;;;344:20:1;;:::o;1211:145:6:-;1269:7;1301:1;1296;:6;;1288:15;;;;;;-1:-1:-1;1325:5:6;;;1211:145::o;1439:::-;1497:7;1528:5;;;1551:6;;;;1543:15;;;;;3953:357:2;646:6;;:11;638:34;;;;;-1:-1:-1;;;638:34:2;;;;;;;;;;;;-1:-1:-1;;;638:34:2;;;;;;;;;;;;;;;691:1;682:6;:10;4114:47;;4065:4;;4044:18;;4094:16;;-1:-1:-1;;;;;4114:13:2;;;4065:4;;4134:6;;4044:18;4114:47;4044:18;4114:47;4134:6;4114:13;4065:4;4114:47;;;;;;;14:1:-1;21;16:31;;;;75:4;69:11;64:16;;144:4;140:9;133:4;115:16;111:27;107:43;104:1;100:51;94:4;87:65;169:16;166:1;159:27;225:16;222:1;215:4;212:1;208:12;193:49;7:242;;16:31;36:4;31:9;;7:242;;4079:82:2;;;;4176:7;4171:133;;4255:3;4249:10;4242:4;4237:3;4233:14;4226:34;4208:86;-1:-1:-1;;722:1:2;713:6;:10;-1:-1:-1;;;3953:357:2:o;1982:183:7:-;-1:-1:-1;;;;;2055:22:7;;2047:31;;;;;;2114:6;;;2093:38;;-1:-1:-1;;;;;2093:38:7;;;;2114:6;;;2093:38;;;2141:6;:17;;-1:-1:-1;;;;;;2141:17:7;-1:-1:-1;;;;;2141:17:7;;;;;;;;;;1982:183::o;1302:478:0:-;1437:20;;;-1:-1:-1;;;1437:20:0;;-1:-1:-1;;;;;1437:20:0;;;;;;;;1400:4;;;;1437;;:14;;:20;;;;;;;;;;;;;;:4;:20;;;5:2:-1;;;;30:1;27;20:12;5:2;1437:20:0;;;;8:9:-1;5:2;;;45:16;42:1;39;24:38;77:16;74:1;67:27;5:2;1437:20:0;;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;-1:-1;1437:20:0;1484:18;;;-1:-1:-1;;;1484:18:0;;-1:-1:-1;;;;;1484:18:0;;;;;;;;1437:20;;-1:-1:-1;1467:14:0;;1484:4;;:14;;:18;;;;;1437:20;;1484:18;;;;;;;:4;:18;;;5:2:-1;;;;30:1;27;20:12;5:2;1484:18:0;;;;8:9:-1;5:2;;;45:16;42:1;39;24:38;77:16;74:1;67:27;5:2;1484:18:0;;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;-1:-1;1484:18:0;;-1:-1:-1;1512:26:0;1522:4;1528:2;1532:5;1512:9;:26::i;:::-;1578:5;;1690:20;;;-1:-1:-1;;;1690:20:0;;-1:-1:-1;;;;;1553:199:0;;;1690:20;;;;;;;;1553:199;;;;1578:5;;;;1553:199;;1631:5;;1650:6;;1670;;1690:4;;:14;;:20;;;;;;;;;;;;;;;:4;:20;;;5:2:-1;;;;30:1;27;20:12;5:2;1690:20:0;;;;8:9:-1;5:2;;;45:16;42:1;39;24:38;77:16;74:1;67:27;5:2;1690:20:0;;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;-1:-1;1690:20:0;1724:18;;;-1:-1:-1;;;1724:18:0;;-1:-1:-1;;;;;1724:18:0;;;;;;;;:4;;:14;;:18;;;;;1690:20;;1724:18;;;;;;;:4;:18;;;5:2:-1;;;;30:1;27;20:12;5:2;1724:18:0;;;;8:9:-1;5:2;;;45:16;42:1;39;24:38;77:16;74:1;67:27;5:2;1724:18:0;;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;-1:-1;1724:18:0;1553:199;;;;;;1724:18;1553:199;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;1769:4:0;;1302:478;-1:-1:-1;;;;;1302:478:0:o;917:1095:4:-;1086:14;1112:18;391:34;;;;;;;;;;;;;;;;;374:52;;;;;;;;;;;;;;;36:153:-1;66:2;61:3;58:11;36:153;;176:10;;164:23;;-1:-1;;139:12;;;;98:2;89:12;;;;114;36:153;;;299:10;344;;263:2;259:12;;;254:3;250:22;-1:-1;;246:30;311:9;;295:26;;;340:21;;377:20;365:33;;374:52:4;;;;;;;26:21:-1;;;-1:-1;;22:32;6:49;;374:52:4;;;355:77;;;;;;;;;1511:26;;-1:-1:-1;;;;;1625:56:4;;;;1592:15;;;1568:127;;;;-1:-1:-1;1726:15:4;;1719:40;;;;-1:-1:-1;;;1810:2:4;1798:15;;1791:29;;;;1868:3;1856:16;;1849:36;-1:-1:-1;1969:3:4;1951:22;;;917:1095::o;984:188:3:-;1078:14;1115:50;1134:10;1146:18;;1115;:50::i;3364:260:2:-;-1:-1:-1;;;;;3473:26:2;;3494:4;3473:26;;3465:58;;;;;-1:-1:-1;;;3465:58:2;;;;;;;;;;;;-1:-1:-1;;;3465:58:2;;;;;;;;;;;;;;;3533:34;3549:9;3560:6;3533:15;:34::i;:::-;3599:9;-1:-1:-1;;;;;3582:35:2;3591:6;-1:-1:-1;;;;;3582:35:2;;3610:6;3582:35;;;;;;;;;;;;;;;;;;3364:260;;;:::o;1690:614:3:-;1918:2;1912:9;-1:-1:-1;;;1935:128:3;;2112:1;2100:14;;2093:34;;;;2181:2;2169:15;;2162:35;;;;2285:2;2267:21;;;1844:454::o

Swarm Source

bzzr://5f23be7574e70cfc01d0cfd6803b871f92465e9ae4a10fe95ed31ccb810bda3e

Block Transaction Gas Used Reward
view all blocks produced

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

OVERVIEW

Polygon is a protocol and a framework for building and connecting Ethereum-compatible blockchain networks. Aggregating scalable solutions on Ethereum supporting a multi-chain Ethereum ecosystem.

Loading...
Loading

Validator Index Block Amount
View All Withdrawals

Transaction Hash Block Value Eth2 PubKey Valid
View All Deposits
0x0000000000000000000000000000000000001010
Net Worth in USD
$4,284,245,001.51

Net Worth in POL
Polygon PoS Chain LogoPolygon PoS Chain LogoPolygon PoS Chain Logo 40,872,507,224.793267

Token Allocations
BTTC 82.43%
POL 17.57%
ETH 0.00%
Others 0.00%
Chain Token Portfolio % Price Amount Value
BTTC82.43%9,971,906,557,775,900$3,531,621,137.29
BTTC$618.660.321$198.59
BTTC$0.280303100$28.03
POL
Polygon (POL)
17.57%$0.1048227,179,718,378.7832$752,590,559.07
POL$0.9982956,566.1526$6,554.96
POL$13,290.299$3,290.3
POL$1763.1528$763.15
POL$1,998.070.242$483.53
POL$0.01134810,200$115.75
POL$0.0045718,000$36.57
POL$0.0000047,266,900$29.87
POL$0.042616494$21.05
POL$0.00022970,000$16.06
POL$0.1051154.5954$5.74
POL$0.0000014,400,000$4.25
POL$0.08773440$3.51
POL$123.940.0239$2.97
POL$11.420.21$2.4
POL$0.02841383.9053$2.38
POL$17.160.1277$2.19
POL$11.2102$1.21
POL$0.00002447,405$1.11
POL$0.007375101$0.7448
POL$0.5149961$0.5149
POL$0.00000769,568.6893$0.4563
POL$76,1140.00000307$0.2336
POL$0.1050311.5477$0.1625
ETH$2,001.869.7859$19,589.99
ETH$0.1049043,122.9212$327.61
ETH$1180.1172$180.12
ETH$0.0213118,160.0868$173.9
ETH$0.999689104.0646$104.03
ETH$8.40.1908$1.6
ETH$0.00001645,864.5105$0.7465
BSC$619.171.3503$836.09
BSC$0.999961163.6778$163.67
BSC$1,998.070.0695$138.92
BSC$0.999679103.0982$103.07
BSC5,138,695,382.0245$30.17
BSC$18.001$8
BSC$1.524.987$7.58
BSC16,354,239.0005$5.8
BSC$0.001769235.1884$0.416
BSC$0.0003321,222.4949$0.4055
BSC$0.002696100$0.2696
BSC$54.760.00224$0.1226
WORLD$0.4071681.435$33.16
WORLD$15.9745$5.97
BASE$2,001.820.0091002$18.22
BASE$0.019895160$3.18
ARB$12.2984$2.3
ARB$2,001.170.001$2
ARB$10.4887$0.4887
LINEA$2,001.860.00069901$1.4
OP$0.4061970.4212$0.171
AVAX$9.320.00150933$0.014069
GNO$10.005$0.005
Loading...
Loading
Loading...
Loading
Loading...
Loading
[ Download: CSV Export  ]
[ 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.

`; } let ensZeroWidthWarningHtml = ""; if ($("#hdnIsEnsContainZeroWidthChars").val() == "true") { ensZeroWidthWarningHtml = `
${zeroWidthWarningMessage} Check the actual text at ENS.
`; } const ensOnL2NoteHtml = ensOnL2Note != "" ? `
  • ${ensOnL2Note}
  • ` : ""; const contentHtml = `
    Additional Info
    Full Name:
    ${ensNameForkIconSrc}


    Note:
    • Name tag is displayed due to forward and reverse resolution. Find out more.
    • A Domain Name is not necessarily held by a person popularly associated with the name.
    • ${ensOnL2NoteHtml}
    ${ensUnicodeWarningHtml} ${ensZeroWidthWarningHtml}
    `; $('#ensName').popover({ html: true, content: contentHtml, trigger: 'manual', placement: 'right' }); $('#ensName').click(function (event) { $("#udName").popover('hide') $("#ensName").popover('toggle'); event.stopPropagation(); }); $('#ensName').on('shown.bs.popover', async () => { //disable tooltip when hovering over ens name in the main page $("[rel='tooltipEns']").each(function () { $(this).tooltip('hide'); $(this).tooltip('disable'); }); //call ajax here to get result if (!otherENSNamesHtml) { const resolvedAddressesModel = await getEnsResolvedAddress($("#hdnAddress").val(), primaryDomainNameLabel); otherENSNamesHtml = generateEnsPopoverGrid(resolvedAddressesModel.d); if (!otherENSNamesHtml) { otherENSNamesHtml = "There are no other names resolving to this address." } } $(".popOverEnsOwnedAddressTable").html(otherENSNamesHtml); $("#divENSDisplayName").html(ensDisplayName); // append more copy button for ENS let domainName = $("#hdnEnsText").val(); const copyEnsButtonHtml = ` `; $("#spanCopyENSAddress").html(copyEnsButtonHtml); $("[data-bs-toggle='tooltip']").tooltip(); }); $('#ensName').on('hidden.bs.popover', () => { $("[rel='tooltipEns']").each(function () { $(this).tooltip('enable'); }); }); $('#ensName').on('hide.bs.popover', () => { $("[data-bs-toggle='tooltip']").tooltip('hide'); }); $(document).click(function (e) { const popoverElement = document.getElementById('popover-ens-preview'); const popoverTrigger = document.getElementById('ensName'); if (!popoverTrigger.contains(e.target) && (!popoverElement || !popoverElement.contains(e.target))) { $("#ensName").popover('hide'); } }) } async function getEnsResolvedAddress(address, currentEnsText) { try { const requestModel = { "lookupAddress": address, "primaryDomainName": currentEnsText, "provider": ensNameProvider }; const response = await $.ajax({ url: "/name-lookup-search.aspx/GetOtherDomainNameForAddress", type: "POST", contentType: "application/json", dataType: "json", data: JSON.stringify({ requestModel: requestModel }) }) return response; } catch { return ""; } } function generateEnsPopoverGrid(model) { if (!model || model.DomainNames.length == 0) { return ""; } let listOtherENSNames = ""; model.DomainNames.forEach(x => listOtherENSNames += x.Name); let moreOtherENSNames = ""; if (model.Total > 5) { moreOtherENSNames = `More ` } const result = `
    Other names resolving to this address:
    ${listOtherENSNames} ${moreOtherENSNames}
    `; return result; } function removeSpecificDomain(url, domain) { return url.replace(new RegExp(domain + '$'), ''); } // ===== UD name tag const displayUDName = ''; const primaryUDName = ''; const showUDPublicNote = 'false'; let otherUDNamesHtml = ""; function initUDNamePopOver() { //required to allow bootstrap popover to support table $.fn.popover.Constructor.Default.allowList.table = []; $.fn.popover.Constructor.Default.allowList.tr = []; $.fn.popover.Constructor.Default.allowList.td = []; $.fn.popover.Constructor.Default.allowList.th = []; $.fn.popover.Constructor.Default.allowList.div = []; $.fn.popover.Constructor.Default.allowList.tbody = []; $.fn.popover.Constructor.Default.allowList.thead = []; //allowList my inline styling for bootstrap $.fn.popover.Constructor.Default.allowList['*'].push('style') let unicodeWarningHtml = ""; if ($("#hdnIsUDContainUnicodeChars").val() == "true") { unicodeWarningHtml = `
    ${unicodeWarningMessage} Check the actual text at Unstoppable Domains.
    `; } let zeroWidthWarningHtml = ""; if ($("#hdnIsUDContainZeroWidthChars").val() == "true") { zeroWidthWarningHtml = `
    ${unicodeWarningMessage} Check the actual text at Unstoppable Domains.
    `; } const contentHtml = `
    Additional Info
    Full Name:
    Unstoppable Domains Name


    Note:
    • Name tag is displayed due to forward and reverse resolution. Find out more
    • A Domain Name is not necessarily held by a person popularly associated with the name.
    ${unicodeWarningHtml} ${zeroWidthWarningHtml}
    `; $('#udName').popover({ html: true, content: contentHtml, trigger: 'manual' }); $('#udName').click(function (event) { $("#ensName").popover('hide'); $("#udName").popover('toggle'); event.stopPropagation(); }); $('#udName').on('shown.bs.popover', async () => { //disable tooltip when hovering over SID name in the main page $("[rel='tooltipUDName']").each(function () { $(this).tooltip('hide'); $(this).tooltip('disable'); }); //call ajax here to get result if (!otherUDNamesHtml) { const resolvedAddressesModel = await getUDNamesResolvedAddress($("#hdnAddress").val(), primaryUDName); //format the ajax to otherUDNamesHtml otherUDNamesHtml = generateUDPopoverGrid(resolvedAddressesModel.d); if (!otherUDNamesHtml) { otherUDNamesHtml = "There are no other names resolving to this address." } } $(".popoverUDNamesOwnedByAddress").html(otherUDNamesHtml); $("#divDisplayUDName").html(displayUDName); if (showUDPublicNote == true) { $("#noteUD").html('The Unstoppable Domains NFT is minted on the Ethereum blockchain. View and verify its details on Etherscan.'); $("#noteUD").show(); } $("[data-bs-toggle='tooltip']").tooltip(); }); $('#udName').on('hidden.bs.popover', () => { $("[rel='tooltipUDName']").each(function () { $(this).tooltip('enable'); }); }); $('#udName').on('hide.bs.popover', () => { $("[data-bs-toggle='tooltip']").tooltip('hide'); }); // Hide Unstoppable Domains Name popover when click outside the popover popup. $(document).click(function () { $("#udName").popover('hide') }); } async function getUDNamesResolvedAddress(address, primaryUDName) { try { const requestModel = { "lookupAddress": address, "primaryDomainName": primaryUDName, "provider": "UD" }; const response = await $.ajax({ url: "/name-lookup-search.aspx/GetOtherDomainNameForAddress", type: "POST", contentType: "application/json", dataType: "json", data: JSON.stringify({ requestModel: requestModel }) }) return response; } catch { return ""; } } function generateUDPopoverGrid(model) { if (!model || model.DomainNames.length == 0) { return ""; } let listOtherUDNames = ""; model.DomainNames.forEach(x => listOtherUDNames += x.Name); let moreOtherUDNames = ""; if (model.Total > 5) { moreOtherUDNames = `More `; } const result = `
    Other names resolving to this address:
    ${listOtherUDNames} ${moreOtherUDNames}
    `; return result; } // ===== end UD name tag const tooltipForTokenHolding = 'More than 201 tokens found, listing and displaying the total balance of the first 100 tokens only. Click on the Coins icon to see the full list and balance.'; var adjustPosition = 0; $(document).ready(function () { switchAmountToValue(document.getElementById("headerAmountValue"), 'Value (USD)', 'Amount', true); switchAmountToValue(document.getElementById("headerIntAmountValue"), 'Value (USD)', 'Amount', true); switchMethodColumn(document.getElementById("headerMethod"), 'Method', 'Action', true); onDocumentReady(); $("[rel='tooltip']").tooltip(); $("[data-bs-toggle-second='tooltip']").tooltip({ trigger: 'hover' }); $("[rel='tooltipEns']").each(function () { $(this).tooltip({ title: $(this).attr("tooltip-title") }); }); if (hash != '') { activaTab(hash); }; onAddressDocReady(); // Note: this is causing "Copied" tooltip not showing when copy button is clicked in V3, and seems like not applicable to v3, comment out first in case there is issue //$('[data-bs-toggle="tooltip"]').click(function () { // $('[data-bs-toggle="tooltip"]').tooltip("hide"); //}); document.getElementById("copyaddressbutton").classList.remove("disabled"); if ($("#txtSearchContract").length) { initialiseKeyupOnDocReady(); } if (!!$('#ensName')[0]) { initEnsNamePopOver(); } if (!!$("#udName")[0]) { initUDNamePopOver(); } handleToggle(); if (window.matchMedia("(max-width: 767px)").matches) { // Mobile adjustPosition = 90; } else { // Others adjustPosition = 50; } if (tooltipForTokenHolding) { const dropdownMenuBalance = document.getElementById("dropdownMenuBalance"); if (dropdownMenuBalance) { const dropdownWrapper = dropdownMenuBalance.closest(".dropdown"); if (dropdownWrapper) { dropdownWrapper.setAttribute("title", tooltipForTokenHolding); new bootstrap.Tooltip(dropdownWrapper); } } } }); function displayAudit() { $('html, body').animate({ scrollTop: $("#auditReportId").offset().top - adjustPosition }); } var cThemeMode = getCookie('displaymode'); function handleToggle() { var className = document.getElementsByClassName('editor'); var classNameCount = className.length; for (var j = 0; j t.innerWidth()) { if (mb + d > tb) { t.css('padding-bottom', ((mb + d) - tb)); } } else { t.css('overflow', 'visible'); } }).on('hidden.bs.dropdown', function () { $(this).css({ 'padding-bottom': '', 'overflow': '' }); }); var btn_ERC20_sort = { count: 0, reminder_count: 2, list: [], default_list: [], ERC20_sort_start: function (count) { if (document.getElementsByClassName('list-custom-divider-ERC20')[0]) { var self = this if (count != undefined) { self.count = count } var before_el = document.getElementsByClassName('list-custom-divider-ERC20')[0] var parent_el = before_el.parentNode var element_selector = parent_el.querySelectorAll(".list-custom-ERC20"); if (self.list.length == 0) { element_selector.forEach(function (e) { self.list.push(e); self.default_list.push(e); }); } $(".list-custom-ERC20").remove() var type = self.count % self.reminder_count self.sortList(type, parent_el, before_el); self.count++ } }, sortList: function (type, parent_el, before_el) { var self = this var sorted_list = [] var icon_el = $(before_el).find('button').find('i') switch (type) { case 1: icon_el.attr("class", "fad fa-sort-up") sorted_list = self.sortUsdAsc() break; default: icon_el.attr("class", "fad fa-sort-down") sorted_list = self.sortUsdDesc() } for (var i = sorted_list.length - 1; i >= 0; i--) { before_el.insertAdjacentElement('afterend', sorted_list[i]) } }, sortUsdAsc: function () { var self = this var sort_list = self.list sort_list.sort(function (a, b) { var target_a_value = self.formatCurrencyToNumber(a.querySelector('.list-usd-value').textContent.trim() || -1); var target_b_value = self.formatCurrencyToNumber(b.querySelector('.list-usd-value').textContent.trim() || -1); if (target_a_value == -1 || target_b_value == -1) { return 1; } if (target_a_value target_b_value) { return 1; } return 0 }); return sort_list }, sortUsdDesc: function () { var self = this var sort_list = self.list sort_list.sort(function (a, b) { var target_a_value = self.formatCurrencyToNumber(a.querySelector('.list-usd-value').textContent.trim() || -1); var target_b_value = self.formatCurrencyToNumber(b.querySelector('.list-usd-value').textContent.trim() || -1); if (target_a_value target_b_value) { return -1; } return 0 }); return sort_list }, formatCurrencyToNumber: function (strCurrency) { if (typeof strCurrency == "number") return strCurrency else return Number(strCurrency.replace(/[^0-9.-]+/g, "")); }, } function hrefTokenHolding() { var location = "/tokenholdings?a=0x0000000000000000000000000000000000001010" var queryString = $("input.form-control.form-control-xs.search.mb-3")[0].value if (queryString) { location += "&q=" + queryString } window.location.href = location } $(document).ready(function () { $("#btn_ERC20_sort").on("click", function (event) { event.preventDefault(); setTimeout(function () { btn_ERC20_sort.ERC20_sort_start() }, 10) }) btn_ERC20_sort.ERC20_sort_start() var mainAddress = $("#hdnAddress").val(); // user search for method filters var searchFuncTimeOut; $("#ContentPlaceHolder1_inputMethodName").on("keyup", function ($event) { if (searchFuncTimeOut) { clearTimeout(searchFuncTimeOut) } var searchTerm = $(this).val(); searchFuncTimeOut = setTimeout(function () { searchFunctions(searchTerm); }, 350); }); var isSearchFunctions = false; $("#dropdownMethod").on("click", function (e) { if (isSearchFunctions === false) { searchFunctions(''); isSearchFunctions = true; } }); const litDefaultMethodFilterHtml = ''; function searchFunctions(searchTerm) { if (searchTerm === '' || searchTerm.length > 3) { const curPath = encodeURIComponent(window.location.search); $.ajax({ type: 'Get', url: `/functionSearchHandler.ashx?ca=${mainAddress}&func=${searchTerm ?? ''}&curPath=${curPath}`, success: function (response) { $("#searchFunctionResult").html(''); if (response && response.length > 0) { for (var i = 0; i ${response[i].name} ${response[i].methodId} ` ); } $("[data-bs-toggle='tooltip']").tooltip(); } else { $("#searchFunctionResult").append( `` ); } $("#inputMethodSpinner").hide(); }, error: function (XMLHttpRequest, textStatus, errorThrown) { $("#searchFunctionResult").html(''); $("#inputMethodSpinner").hide(); } }); } else { $("#inputMethodSpinner").hide(); $("#searchFunctionResult").html(litDefaultMethodFilterHtml); } } // Resize window for analytic tab let isBusy = false; $(window).resize(function () { isBusy = true; if (isBusy) { let analyticFrame = document.getElementById('analytics_pageiframe'); if (analyticFrame && analyticFrame.contentWindow != undefined) { let navtab = analyticFrame.contentWindow.document.getElementsByClassName("nav_tabs1"); let hIframe = "0px"; if (navtab != null && navtab != undefined && navtab.length > 0) { let navH = Number(navtab[0].scrollHeight); hIframe = (Number(analyticFrame.contentWindow.document.getElementsByClassName("tab-content")[0].scrollHeight) + navH + 20) + 'px'; } else { hIframe = analyticFrame.contentWindow.document.body.scrollHeight + 'px'; } analyticFrame.style.height = hIframe } } }); // detect tooltip for token holding dropdown if ($(".addresses-tooltip-over").length > 0) { if (!isMobile()) { $(".addresses-tooltip-over").attr("data-bs-trigger", "hover"); let tooltip = bootstrap.Tooltip.getInstance(".addresses-tooltip-over"); if (tooltip !== null) { tooltip.dispose(); tooltip = new bootstrap.Tooltip($(".addresses-tooltip-over")); tooltip._config.trigger = 'hover'; tooltip.update(); } } } // Quick export transaction csv const quickExportCsvData = '[{"Txhash":"0xca35525542318b5be83cc99a77a96b6271a43345b0d4bb48f6f6febb0bfa3a65","Status":"Error in Main Txn : execution reverted","Method":"Transfer","Blockno":"83018723","DateTime":"2026-02-15 12:11:09","Sender":"0x082489A616aB4D46d1947eE3F912e080815b08DA","SenderLable":"Binance 53","Receiver":"0x0000000000000000000000000000000000001010","ReceiverLable":"Polygon: POL Token","Amount":"3.8638356 POL","Value":"$0.41","TxnFee":"0.02354817"},{"Txhash":"0xe7e457e4c0e2507570102d0c21ca753d2650dde71b5a80b3a1f70adda8f36c5d","Status":"Success","Method":"Transfer","Blockno":"83018532","DateTime":"2026-02-15 12:04:47","Sender":"0x65a329b1F561BD45B1E922fa19950CdC39fb9cce","SenderLable":null,"Receiver":"0x0000000000000000000000000000000000001010","ReceiverLable":"Polygon: POL Token","Amount":"34.68207 POL","Value":"$3.64","TxnFee":"0.09135556"},{"Txhash":"0x3412c6780906ddf2f955e6dca0fc39a92cb43eb95c6757cbaa719653c3a2d946","Status":"Success","Method":"Transfer","Blockno":"83018524","DateTime":"2026-02-15 12:04:31","Sender":"0x65a329b1F561BD45B1E922fa19950CdC39fb9cce","SenderLable":null,"Receiver":"0x0000000000000000000000000000000000001010","ReceiverLable":"Polygon: POL Token","Amount":"80.92482999 POL","Value":"$8.48","TxnFee":"0.09371919"},{"Txhash":"0x0c365768cf6210f87ca05d032805275ad0cbdbbeeb75b583ef5f940acd90e969","Status":"Success","Method":"Transfer","Blockno":"83007771","DateTime":"2026-02-15 06:06:05","Sender":"0x9A50c8340e298f215120922d676E05B22d50Eb98","SenderLable":null,"Receiver":"0x0000000000000000000000000000000000001010","ReceiverLable":"Polygon: POL Token","Amount":"0 POL","Value":"$0.00","TxnFee":"0.02385781"},{"Txhash":"0x08a01c6d09dc45cdc7745d29f19bf74774c7feda1aa3ba6d2fcaca15cd1a6ec2","Status":"Success","Method":"Transfer","Blockno":"83007757","DateTime":"2026-02-15 06:05:37","Sender":"0x9A50c8340e298f215120922d676E05B22d50Eb98","SenderLable":null,"Receiver":"0x0000000000000000000000000000000000001010","ReceiverLable":"Polygon: POL Token","Amount":"0 POL","Value":"$0.00","TxnFee":"0.02328255"},{"Txhash":"0xb0ad3ba9133e34758ba6834dd891c433ce156aadd346c1631722f7a8bc7b833c","Status":"Success","Method":"Withdraw","Blockno":"82997431","DateTime":"2026-02-15 00:21:25","Sender":"0xE69f81b825d7Dc31ee9becef4DbEab5cf30e3Abb","SenderLable":"Binance: Internal 2","Receiver":"0x0000000000000000000000000000000000001010","ReceiverLable":"Polygon: POL Token","Amount":"50 POL","Value":"$5.24","TxnFee":"0.03424103"},{"Txhash":"0x06f838c99819515a9efc5b36032e8c46c6f2a10becc0718cf9aeb71669bcb391","Status":"Success","Method":"Transfer","Blockno":"82996463","DateTime":"2026-02-14 23:49:09","Sender":"0xE14586e9659ad97EFD260699950C0dAa9F4Fd9a5","SenderLable":null,"Receiver":"0x0000000000000000000000000000000000001010","ReceiverLable":"Polygon: POL Token","Amount":"0 POL","Value":"$0.00","TxnFee":"0.01502617"},{"Txhash":"0xe051c6279e39f4e847b7bdccbbb14f7dda15fe77fade216e915b1d2def42c1cd","Status":"Success","Method":"Transfer","Blockno":"82996445","DateTime":"2026-02-14 23:48:33","Sender":"0xE14586e9659ad97EFD260699950C0dAa9F4Fd9a5","SenderLable":null,"Receiver":"0x0000000000000000000000000000000000001010","ReceiverLable":"Polygon: POL Token","Amount":"0 POL","Value":"$0.00","TxnFee":"0.01503781"},{"Txhash":"0x62dc621097c700d98741488869ffd1cd2d659de1d3891905e220ee00e5da9ebc","Status":"Success","Method":"Transfer","Blockno":"82996255","DateTime":"2026-02-14 23:42:13","Sender":"0xE14586e9659ad97EFD260699950C0dAa9F4Fd9a5","SenderLable":null,"Receiver":"0x0000000000000000000000000000000000001010","ReceiverLable":"Polygon: POL Token","Amount":"0 POL","Value":"$0.00","TxnFee":"0.01345868"},{"Txhash":"0x9674ce312a2dada169d061060e35a73fb3b28cdbce1e76cbf36cc8aa3a822d93","Status":"Success","Method":"Transfer","Blockno":"82996142","DateTime":"2026-02-14 23:38:27","Sender":"0xE14586e9659ad97EFD260699950C0dAa9F4Fd9a5","SenderLable":null,"Receiver":"0x0000000000000000000000000000000000001010","ReceiverLable":"Polygon: POL Token","Amount":"0 POL","Value":"$0.00","TxnFee":"0.01419692"},{"Txhash":"0xde2c0200c859e947d004ab6dcb043153611477b54b378d280c0b6430c38adea6","Status":"Success","Method":"Transfer","Blockno":"82987492","DateTime":"2026-02-14 18:50:07","Sender":"0x661374A3fA20FCaDe108209A7ddEC42F782Aa0Ba","SenderLable":null,"Receiver":"0x0000000000000000000000000000000000001010","ReceiverLable":"Polygon: POL Token","Amount":"0 POL","Value":"$0.00","TxnFee":"0.02100955"},{"Txhash":"0x6d7a96ba8382e49ea3d43d3af2e5b75ca01b5ae5a8475dfde71995c45c6f4966","Status":"Success","Method":"Withdraw","Blockno":"82987285","DateTime":"2026-02-14 18:43:13","Sender":"0xEBb58C59A43C990E3DBea45b0468D2031CEDb96e","SenderLable":null,"Receiver":"0x0000000000000000000000000000000000001010","ReceiverLable":"Polygon: POL Token","Amount":"0.07021886 POL","Value":"$0.01","TxnFee":"0.02739788"},{"Txhash":"0x5f8b6bc69ba3fc71c0951c0909eebffb0bf7daf99da8a648e9487f452d0b53d8","Status":"Success","Method":"Transfer","Blockno":"82983835","DateTime":"2026-02-14 16:48:13","Sender":"0xE68e711a82c6ed11f227F931DcFCE3F21a1d335A","SenderLable":null,"Receiver":"0x0000000000000000000000000000000000001010","ReceiverLable":"Polygon: POL Token","Amount":"38.33865 POL","Value":"$4.02","TxnFee":"0.14910364"},{"Txhash":"0x089a99915018d47e2bda3b0788800a889b40d2335e59ca4f32ceef6d6ca6ba4b","Status":"Success","Method":"Transfer","Blockno":"82983827","DateTime":"2026-02-14 16:47:57","Sender":"0xE68e711a82c6ed11f227F931DcFCE3F21a1d335A","SenderLable":null,"Receiver":"0x0000000000000000000000000000000000001010","ReceiverLable":"Polygon: POL Token","Amount":"89.45684999 POL","Value":"$9.38","TxnFee":"0.15029541"},{"Txhash":"0x1ed102b0b19e0147c3b0762fb88735f601486e622e907ab241cf3e4f7327ac95","Status":"Success","Method":"Transfer","Blockno":"82983613","DateTime":"2026-02-14 16:40:49","Sender":"0x228b9B45EEF6411454041c17b31dD79e345C768d","SenderLable":null,"Receiver":"0x0000000000000000000000000000000000001010","ReceiverLable":"Polygon: POL Token","Amount":"0 POL","Value":"$0.00","TxnFee":"0.10568185"},{"Txhash":"0x4cd026e02ae1979a0f810e3c8c9091c86f3818f89edabc800f4f102ec3b08814","Status":"Success","Method":"Transfer","Blockno":"82979671","DateTime":"2026-02-14 14:29:25","Sender":"0x36555814674834805a4092aB84f2b6165215E281","SenderLable":null,"Receiver":"0x0000000000000000000000000000000000001010","ReceiverLable":"Polygon: POL Token","Amount":"0 POL","Value":"$0.00","TxnFee":"0.13168537"},{"Txhash":"0x77f1ce6dd95638ad8f11a69408af38c373e4bb789b1f9d36079ae5e6e1db7d90","Status":"Success","Method":"Transfer","Blockno":"82979634","DateTime":"2026-02-14 14:28:11","Sender":"0x36555814674834805a4092aB84f2b6165215E281","SenderLable":null,"Receiver":"0x0000000000000000000000000000000000001010","ReceiverLable":"Polygon: POL Token","Amount":"0 POL","Value":"$0.00","TxnFee":"0.13574911"},{"Txhash":"0x23f1f513c8b1f03a8e41cb0050a430260142bd0053a22824e9453d4a0d9eef81","Status":"Success","Method":"Transfer","Blockno":"82979515","DateTime":"2026-02-14 14:24:13","Sender":"0x36555814674834805a4092aB84f2b6165215E281","SenderLable":null,"Receiver":"0x0000000000000000000000000000000000001010","ReceiverLable":"Polygon: POL Token","Amount":"0 POL","Value":"$0.00","TxnFee":"0.11370277"},{"Txhash":"0x1f1093bdfc08debcab21f8e8f85af1895c8ccb9cd8bc1a7966f7137ea94c3ea0","Status":"Success","Method":"Transfer","Blockno":"82979277","DateTime":"2026-02-14 14:16:17","Sender":"0x36555814674834805a4092aB84f2b6165215E281","SenderLable":null,"Receiver":"0x0000000000000000000000000000000000001010","ReceiverLable":"Polygon: POL Token","Amount":"0 POL","Value":"$0.00","TxnFee":"0.1242735"},{"Txhash":"0xc956cfaf0b0bbfb3da835153e8bd17e0d7d412c20304f273e7f61dbdf2133327","Status":"Success","Method":"Transfer","Blockno":"82968379","DateTime":"2026-02-14 08:13:01","Sender":"0xE14586e9659ad97EFD260699950C0dAa9F4Fd9a5","SenderLable":null,"Receiver":"0x0000000000000000000000000000000000001010","ReceiverLable":"Polygon: POL Token","Amount":"0 POL","Value":"$0.00","TxnFee":"0.01490148"},{"Txhash":"0xed257a07252583ca8788a2ec00b096b413441afb6c1851f8c6c8f1f464649478","Status":"Success","Method":"Transfer","Blockno":"82968367","DateTime":"2026-02-14 08:12:37","Sender":"0xE14586e9659ad97EFD260699950C0dAa9F4Fd9a5","SenderLable":null,"Receiver":"0x0000000000000000000000000000000000001010","ReceiverLable":"Polygon: POL Token","Amount":"0 POL","Value":"$0.00","TxnFee":"0.01539095"},{"Txhash":"0xead78de8a913e89c8700ef3d7b4c6fa7d4f5c2765dd61ee7f42f36747ac0fd83","Status":"Success","Method":"Transfer","Blockno":"82965605","DateTime":"2026-02-14 06:40:33","Sender":"0xa857dFB740396db406d91aEA65256da4d21721e4","SenderLable":null,"Receiver":"0x0000000000000000000000000000000000001010","ReceiverLable":"Polygon: POL Token","Amount":"9.8 POL","Value":"$1.03","TxnFee":"0.05014324"},{"Txhash":"0xb59cb6affa094fc86ac13d7d13a325d57c8681e76705367d93769812f5f6c000","Status":"Success","Method":"Transfer","Blockno":"82963722","DateTime":"2026-02-14 05:37:47","Sender":"0xdb74D41Acc78450Ffd975a7214f207e9Ca21B329","SenderLable":null,"Receiver":"0x0000000000000000000000000000000000001010","ReceiverLable":"Polygon: POL Token","Amount":"38.70969 POL","Value":"$4.06","TxnFee":"0.03417253"},{"Txhash":"0x09a501a019186578d26a25a3a75ae9b7c28bd582b80046f45a0296c4c76f3167","Status":"Success","Method":"Transfer","Blockno":"82963720","DateTime":"2026-02-14 05:37:43","Sender":"0xdb74D41Acc78450Ffd975a7214f207e9Ca21B329","SenderLable":null,"Receiver":"0x0000000000000000000000000000000000001010","ReceiverLable":"Polygon: POL Token","Amount":"90.32260999 POL","Value":"$9.47","TxnFee":"0.03458966"},{"Txhash":"0x4789d72ce7e6f877a9afd2f22991ae928e5acd4bf387742874007ffe99c118c9","Status":"Success","Method":"Transfer","Blockno":"82959944","DateTime":"2026-02-14 03:31:51","Sender":"0x4840185A018ee75D0299380971418049FC95213f","SenderLable":null,"Receiver":"0x0000000000000000000000000000000000001010","ReceiverLable":"Polygon: POL Token","Amount":"38.70969 POL","Value":"$4.06","TxnFee":"0.11952963"}]'; const quickExportCsvTitle = 'Transaction Hash,Status,Method,Blockno,"DateTime (UTC)",From,From_Nametag,To,To_Nametag,Amount,Value (USD),Txn Fee'; let isExportFinish = true; if ($("#btnExportQuickTableToCSV").length > 0 && quickExportCsvData) { $("#btnExportQuickTableToCSV").click(function () { if (isExportFinish == true) { isExportFinish = false; $("#btnExportQuickTableToCSV").append(''); let lstTxsObj = JSON.parse(quickExportCsvData); if (lstTxsObj.length > 0) { let csvRows = []; csvRows.push(quickExportCsvTitle.replace(/"/g, "")); for (let i = 0; i 0 && quickExportInternalTxsData) { $("#ContentPlaceHolder1_btnQuickExportInternalTxs").click(function () { if (isExportFinish == true) { isExportFinish = false; $("#ContentPlaceHolder1_btnQuickExportInternalTxs").append(''); let lstTxsObj = JSON.parse(quickExportInternalTxsData); if (lstTxsObj.length > 0) { let csvRows = []; csvRows.push(quickExportInternalTxsTitle.replace(/"/g, "")); for (let i = 0; i { if (x.startsWith("F")) { file = x.replace("F", ""); } else if (x.startsWith("L")) { line = x.replace("L", ""); } }) var editorId = "editor" + file var editorElem = $("#" + editorId); if (!editorElem.length) { return; } if (!line) { return; } var editor = ace.edit(editorId); editor.resize(true); editor.scrollToLine(line, true, true, function () { }); editor.gotoLine(line); var Range = ace.require('ace/range').Range $(document).scrollTop($("#" + editorId).offset().top - 95); //document.getElementById(editorId).scrollIntoView(); editor.session.addMarker(new Range(line - 1, 0, line - 1, 1), "myMarker", "fullLine"); //window.onbeforeunload = function () { $(document).scrollTop($("#" + editorId).offset().top); }; } setTimeout(function () { editorGoToLine(); }, 500); }); $("body,html").click(function (evt) { let elm = $(evt.target).attr("id"); let isClickedMode = elm === "darkModaBtn" || elm === "darkModaBtnIcon"; if (isClickedMode) { let isClickedSunMode = false; let clrBorder = "#112641"; if (elm === "darkModaBtn") isClickedSunMode = $(evt.target).find("#darkModaBtnIcon").hasClass("fa-moon"); if (elm === "darkModaBtnIcon") isClickedSunMode = $(evt.target).hasClass("fa-moon"); if (isClickedSunMode) { clrBorder = "#fff"; } let iframes = document.getElementById('analytics_pageiframe'); let heatcell = iframes.contentWindow.document.getElementsByClassName("ch-day").length; for (let i = 0; i