Contract 0x34C1b299A74588D6Abdc1b85A53345A48428a521 2

 
 
Txn Hash Method
Block
From
To
Value [Txn Fee]
0xd5ee95bdee22c4c5190f5fe15b2855cc89795ac7e0f84b35c5366e052b5ae656Approve287497632022-05-25 11:05:258 hrs 41 mins ago0xde3568fa8459154419b6c9e2b8f509340bfcf307 IN  0x34c1b299a74588d6abdc1b85a53345a48428a5210 MATIC0.001410750002 30.000000046
0x18280e5f6c3b65d3524e95c28fb0ce723135efa2950cd347598c82396f0dd962Approve287372422022-05-25 3:34:5016 hrs 12 mins ago0xdd3c7daf175266eec1b830544bd5e40f1649cc61 IN  0x34c1b299a74588d6abdc1b85a53345a48428a5210 MATIC0.001434073692 30.600753077
0x014e200b3e46c2ab63c4e079b12fa85783b3f57d388a3e1019d2ebf9839d7587Transfer286803372022-05-23 18:01:002 days 1 hr ago0x1bbba6d0093ce0e319cce9aa3e336dce9e707d40 IN  0x34c1b299a74588d6abdc1b85a53345a48428a5210 MATIC0.001063831536 30.150536676
0xedfcf36bba1ee1d1880604360ab2049252b84e9da5eb70fd6cc85b30df3ab68dTransfer286802742022-05-23 17:58:502 days 1 hr ago0xa388c7ccbebb91adebe7323027d5eee27bc5384f IN  0x34c1b299a74588d6abdc1b85a53345a48428a5210 MATIC0.001105619978 31.334882056
0xffbedaa28bb850ccfc4df981b43826f794b40bb7f025e1374673f17bb9bcee9cTransfer286802222022-05-23 17:57:022 days 1 hr ago0x68b8e0e10a7ce44e494f7eb6d2bfbf421b6c64af IN  0x34c1b299a74588d6abdc1b85a53345a48428a5210 MATIC0.001070795069 30.347893358
0x7babea527e468171badfe09c0dcd7a858d6e20d134e3e6ec7cba7fd8a1514429Transfer286801402022-05-23 17:54:142 days 1 hr ago0x065747f8bc2bf9b9327fd41cee07a56d0b37d0f8 IN  0x34c1b299a74588d6abdc1b85a53345a48428a5210 MATIC0.001645102548 31.40467602
0xc2f6693afe51c458c00dca2c9ef7ce1bff88e5a3b79b94038b90d509f56c2ad3Withdraw286691362022-05-23 11:31:282 days 8 hrs ago0xbf06f8d30e2fad6d7d20af162c7865d8d0820799 IN  0x34c1b299a74588d6abdc1b85a53345a48428a5210 MATIC0.001054038305 30.387127897
0x43d98d17124060be1a2b53fcc4289fdaee9b3a3f4ee1d6d6b3923d60635c1010Approve286376212022-05-22 17:14:393 days 2 hrs ago0xf39b070faea177651e431512a1dee8941547f5a5 IN  0x34c1b299a74588d6abdc1b85a53345a48428a5210 MATIC0.0023512550
0x3cf113eacd2f0929f2047336b2cf8a00241af76991ca96c30cca7d43e25f7de8Approve286095532022-05-22 0:38:433 days 19 hrs ago0x9fefd9c859a300b6a4e058bcab3624dab3f150f6 IN  0x34c1b299a74588d6abdc1b85a53345a48428a5210 MATIC0.0031977 68.000000014
0x94885406aa69abe86dc01340275e51641874e566ee8aee7825fd6c3fd1608f31Approve285532832022-05-20 15:32:535 days 4 hrs ago0xd77b98baaa984b0faf786bf48e8f1cdd4e3f7eb7 IN  0x34c1b299a74588d6abdc1b85a53345a48428a5210 MATIC0.001566721975 33.316788415
0x592b61765bf26b28505de63facb0229124e00c2d0e9cfa0caffe403747a20993Transfer285525292022-05-20 15:06:575 days 4 hrs ago0xdd77c9426847a4a80385594fef23176c4b9fd888 IN  0x34c1b299a74588d6abdc1b85a53345a48428a5210 MATIC0.012591792845 240.374787069
0x07e120ec22bb1e45e3a48099d006a5f17f6e6228d1851557ad6d009c3f180207Approve285512032022-05-20 14:18:175 days 5 hrs ago0xa1cfa49f18f59c132c8c64cc53bc6d9ef93f35f2 IN  0x34c1b299a74588d6abdc1b85a53345a48428a5210 MATIC0.001485125886 31.581624384
0xa9f23b1229771f53edd7d5b92e99dd9ee2c39b4a2398b64c36af9d08aa485078Approve285341212022-05-20 3:57:325 days 15 hrs ago0x802889b1025ed8472765dda52797f5f8dc4a5ccf IN  0x34c1b299a74588d6abdc1b85a53345a48428a5210 MATIC0.000815648748 30.069999958
0x6effa53eb45d164d759475a1abaf85c4e690b455299ec80501f6f6959aab65ddApprove285341172022-05-20 3:57:245 days 15 hrs ago0x802889b1025ed8472765dda52797f5f8dc4a5ccf IN  0x34c1b299a74588d6abdc1b85a53345a48428a5210 MATIC0.001414041748 30.069999964
0x045f4618c3587a1bf39ec5ccfad462acae84b149ea0b7c1e8eba92f757a9bdb1Approve285157982022-05-19 17:09:596 days 2 hrs ago0x86c5671e8e09186a22a9c38cce81a364b3601422 IN  0x34c1b299a74588d6abdc1b85a53345a48428a5210 MATIC0.001838390526 39.093897435
0x0e13d48d43fbb864e3f12fbfb8febeed213122ada150ac51fc68da750b83de60Withdraw285090582022-05-19 13:11:206 days 6 hrs ago0xbf06f8d30e2fad6d7d20af162c7865d8d0820799 IN  0x34c1b299a74588d6abdc1b85a53345a48428a5210 MATIC0.001198462879 34.55077925
0xa930684e9a84ae55822c7f272228a926f19f5c38c3cc564af441421bd4036676Transfer285045582022-05-19 10:29:496 days 9 hrs ago0x2fb8bd9d8d50acc377e2629d124c7dcd0388ab24 IN  0x34c1b299a74588d6abdc1b85a53345a48428a5210 MATIC0.001740706723 33.229740451
0x726136c2dd9cdc9055a299fb67618072ead81b965ae60ac216c2256c278e69a3Approve284949702022-05-19 4:33:496 days 15 hrs ago0xd131f1bcdd547e067af447dd3c36c99d6be9fdeb IN  0x34c1b299a74588d6abdc1b85a53345a48428a5210 MATIC0.001800327424 38.416000006
0x4fd696d7746c8d933c0970c6c2e2278cfb600e864fb3753ea2ea0b8cf2c4d444Approve284949272022-05-19 4:32:236 days 15 hrs ago0x5a165e14e2a1a0a3b6a268dd3f41dc5efa6db207 IN  0x34c1b299a74588d6abdc1b85a53345a48428a5210 MATIC0.001446556798 30.761441757
0xf8fc7e245c9cb8dcb7c1d1970172e4475292938c53c9ebb950596bc7407e66bdApprove284854682022-05-18 23:00:146 days 20 hrs ago0x2708598128f77ed9f8381bb90a76c1f4a25f11a0 IN  0x34c1b299a74588d6abdc1b85a53345a48428a5210 MATIC0.00141403149 30.069781819
0x151bb8b8713cee31afd548126535fbeb84e8612afa7c941a11698774260c9cf5Approve284763442022-05-18 17:33:227 days 2 hrs ago0xf7d792f4c937f6b4f1f34a44878c501740b202c6 IN  0x34c1b299a74588d6abdc1b85a53345a48428a5210 MATIC0.002532336871 54.035867017
0x08c81f0b01cb48e1281b4ff067d88d79abdf8a000f8f38b4209e8caab5644fd6Withdraw284755842022-05-18 17:03:027 days 2 hrs ago0xbf06f8d30e2fad6d7d20af162c7865d8d0820799 IN  0x34c1b299a74588d6abdc1b85a53345a48428a5210 MATIC0.001217271905 35.09302924
0x7d6e2c13b2cbe9251f7a9b297f284135292d78fe9a9e5524fd1ca09da62661a9Transfer284746362022-05-18 16:30:267 days 3 hrs ago0x8f3393d5f35a5a19134052f3781a994b1c500b0f IN  0x34c1b299a74588d6abdc1b85a53345a48428a5210 MATIC0.003566582777 88.977716226
0xe46f71b032259426e56b1f0785eb6f053c116dbe56b03d320fd7ab31f105ee05Transfer284742962022-05-18 16:16:347 days 3 hrs ago0x33f474ad5f82364211923009f6d21e3573a3bba1 IN  0x34c1b299a74588d6abdc1b85a53345a48428a5210 MATIC0.007464833764 211.564271754
0x526f3e107d73962349c9d1e64c552f1acd2cced158eb84a75c0d23da48b9507aTransfer284742722022-05-18 16:15:467 days 3 hrs ago0xf67b9b7b0d69e521f697102ff8231985b61a958e IN  0x34c1b299a74588d6abdc1b85a53345a48428a5210 MATIC0.007898388322 223.851840005
[ Download CSV Export 
Parent Txn Hash Block From To Value
Loading

Contract Source Code Verified (Exact Match)

Contract Name:
Comp

Compiler Version
v0.5.17+commit.d19bba13

Optimization Enabled:
Yes with 1000000 runs

Other Settings:
default evmVersion, None license
/**
 *Submitted for verification at polygonscan.com on 2021-06-30
*/

pragma solidity ^0.5.16;
pragma experimental ABIEncoderV2;

contract Comp {
    /// @notice EIP-20 token name for this token
    string public constant name = "EASY V2";

    /// @notice EIP-20 token symbol for this token
    string public constant symbol = "EZ";

    /// @notice EIP-20 token decimals for this token
    uint8 public constant decimals = 18;

    /// @notice Total number of tokens in circulation
    uint96 public totalSupply = 0;

    /// @notice Allowance amounts on behalf of others
    mapping (address => mapping (address => uint96)) internal allowances;

    /// @notice Official record of token balances for each account
    mapping (address => uint96) internal balances;

    /// @notice A record of each accounts delegate
    mapping (address => address) public delegates;

    //Matic Child chain manager gateway
    address public gateway;

    /// @notice A checkpoint for marking number of votes from a given block
    struct Checkpoint {
        uint32 fromBlock;
        uint96 votes;
    }

    /// @notice A record of votes checkpoints for each account, by index
    mapping (address => mapping (uint32 => Checkpoint)) public checkpoints;

    /// @notice The number of checkpoints for each account
    mapping (address => uint32) public numCheckpoints;

    /// @notice The EIP-712 typehash for the contract's domain
    bytes32 public constant DOMAIN_TYPEHASH = keccak256("EIP712Domain(string name,uint256 chainId,address verifyingContract)");

    /// @notice The EIP-712 typehash for the delegation struct used by the contract
    bytes32 public constant DELEGATION_TYPEHASH = keccak256("Delegation(address delegatee,uint256 nonce,uint256 expiry)");

    /// @notice A record of states for signing / validating signatures
    mapping (address => uint) public nonces;

    /// @notice An event thats emitted when an account changes its delegate
    event DelegateChanged(address indexed delegator, address indexed fromDelegate, address indexed toDelegate);

    /// @notice An event thats emitted when a delegate account's vote balance changes
    event DelegateVotesChanged(address indexed delegate, uint previousBalance, uint newBalance);

    /// @notice The standard EIP-20 transfer event
    event Transfer(address indexed from, address indexed to, uint256 amount);

    /// @notice The standard EIP-20 approval event
    event Approval(address indexed owner, address indexed spender, uint256 amount);

    /**
     * @notice Construct a new Easy token
     * @param gateway_ Matic child chain Manager gateway
     */
    constructor(address gateway_) public {
        gateway = gateway_;
    }

    /**
     * @notice called when token is deposited on root chain
     * @dev Should be callable only by ChildChainManager
     * Should handle deposit by minting the required amount for user
     * Make sure minting is done only by this function
     * @param user user address for whom deposit is being done
     * @param depositData abi encoded amount
     */
    function deposit(address user, bytes calldata depositData)
        external
    {
        require(msg.sender == gateway,  "Invalid access");
        uint256 rawAmount = abi.decode(depositData, (uint256));
        uint96 amount = safe96(rawAmount, "Easify:deposit: amount exceeds 96 bits");

        _mint(user, amount);
    }

    /**
     * @notice called when user wants to withdraw tokens back to root chain
     * @dev Should burn user's tokens. This transaction will be verified when exiting on root chain
     * @param rawAmount amount of tokens to withdraw
     */
    function withdraw(uint256 rawAmount) external {
        uint96 amount = safe96(rawAmount, "Easify:withdraw: amount exceeds 96 bits");
        _burn(msg.sender, amount);
    }

    /**
     * @notice Get the number of tokens `spender` is approved to spend on behalf of `account`
     * @param account The address of the account holding the funds
     * @param spender The address of the account spending the funds
     * @return The number of tokens approved
     */
    function allowance(address account, address spender) external view returns (uint) {
        return allowances[account][spender];
    }

    /**
     * @notice Approve `spender` to transfer up to `amount` from `src`
     * @dev This will overwrite the approval amount for `spender`
     *  and is subject to issues noted [here](https://eips.ethereum.org/EIPS/eip-20#approve)
     * @param spender The address of the account which may transfer tokens
     * @param rawAmount The number of tokens that are approved (2^256-1 means infinite)
     * @return Whether or not the approval succeeded
     */
    function approve(address spender, uint rawAmount) external returns (bool) {
        uint96 amount;
        if (rawAmount == uint(-1)) {
            amount = uint96(-1);
        } else {
            amount = safe96(rawAmount, "Easify:approve: amount exceeds 96 bits");
        }

        allowances[msg.sender][spender] = amount;

        emit Approval(msg.sender, spender, amount);
        return true;
    }

    /**
     * @notice Get the number of tokens held by the `account`
     * @param account The address of the account to get the balance of
     * @return The number of tokens held
     */
    function balanceOf(address account) external view returns (uint) {
        return balances[account];
    }

    /**
     * @notice Transfer `amount` tokens from `msg.sender` to `dst`
     * @param dst The address of the destination account
     * @param rawAmount The number of tokens to transfer
     * @return Whether or not the transfer succeeded
     */
    function transfer(address dst, uint rawAmount) external returns (bool) {
        uint96 amount = safe96(rawAmount, "Easify:transfer: amount exceeds 96 bits");
        _transferTokens(msg.sender, dst, amount);
        return true;
    }

    /**
     * @notice Transfer `amount` tokens from `src` to `dst`
     * @param src The address of the source account
     * @param dst The address of the destination account
     * @param rawAmount The number of tokens to transfer
     * @return Whether or not the transfer succeeded
     */
    function transferFrom(address src, address dst, uint rawAmount) external returns (bool) {
        address spender = msg.sender;
        uint96 spenderAllowance = allowances[src][spender];
        uint96 amount = safe96(rawAmount, "Easify:approve: amount exceeds 96 bits");

        if (spender != src && spenderAllowance != uint96(-1)) {
            uint96 newAllowance = sub96(spenderAllowance, amount, "Easify:transferFrom: transfer amount exceeds spender allowance");
            allowances[src][spender] = newAllowance;

            emit Approval(src, spender, newAllowance);
        }

        _transferTokens(src, dst, amount);
        return true;
    }

    /**
     * @notice Delegate votes from `msg.sender` to `delegatee`
     * @param delegatee The address to delegate votes to
     */
    function delegate(address delegatee) public {
        return _delegate(msg.sender, delegatee);
    }

    /**
     * @notice Delegates votes from signatory to `delegatee`
     * @param delegatee The address to delegate votes to
     * @param nonce The contract state required to match the signature
     * @param expiry The time at which to expire the signature
     * @param v The recovery byte of the signature
     * @param r Half of the ECDSA signature pair
     * @param s Half of the ECDSA signature pair
     */
    function delegateBySig(address delegatee, uint nonce, uint expiry, uint8 v, bytes32 r, bytes32 s) public {
        bytes32 domainSeparator = keccak256(abi.encode(DOMAIN_TYPEHASH, keccak256(bytes(name)), getChainId(), address(this)));
        bytes32 structHash = keccak256(abi.encode(DELEGATION_TYPEHASH, delegatee, nonce, expiry));
        bytes32 digest = keccak256(abi.encodePacked("\x19\x01", domainSeparator, structHash));
        address signatory = ecrecover(digest, v, r, s);
        require(signatory != address(0), "Easify:delegateBySig: invalid signature");
        require(nonce == nonces[signatory]++, "Easify:delegateBySig: invalid nonce");
        require(now <= expiry, "Easify:delegateBySig: signature expired");
        return _delegate(signatory, delegatee);
    }

    /**
     * @notice Gets the current votes balance for `account`
     * @param account The address to get votes balance
     * @return The number of current votes for `account`
     */
    function getCurrentVotes(address account) external view returns (uint96) {
        uint32 nCheckpoints = numCheckpoints[account];
        return nCheckpoints > 0 ? checkpoints[account][nCheckpoints - 1].votes : 0;
    }

    /**
     * @notice Determine the prior number of votes for an account as of a block number
     * @dev Block number must be a finalized block or else this function will revert to prevent misinformation.
     * @param account The address of the account to check
     * @param blockNumber The block number to get the vote balance at
     * @return The number of votes the account had as of the given block
     */
    function getPriorVotes(address account, uint blockNumber) public view returns (uint96) {
        require(blockNumber < block.number, "Easify:getPriorVotes: not yet determined");

        uint32 nCheckpoints = numCheckpoints[account];
        if (nCheckpoints == 0) {
            return 0;
        }

        // First check most recent balance
        if (checkpoints[account][nCheckpoints - 1].fromBlock <= blockNumber) {
            return checkpoints[account][nCheckpoints - 1].votes;
        }

        // Next check implicit zero balance
        if (checkpoints[account][0].fromBlock > blockNumber) {
            return 0;
        }

        uint32 lower = 0;
        uint32 upper = nCheckpoints - 1;
        while (upper > lower) {
            uint32 center = upper - (upper - lower) / 2; // ceil, avoiding overflow
            Checkpoint memory cp = checkpoints[account][center];
            if (cp.fromBlock == blockNumber) {
                return cp.votes;
            } else if (cp.fromBlock < blockNumber) {
                lower = center;
            } else {
                upper = center - 1;
            }
        }
        return checkpoints[account][lower].votes;
    }

    function _delegate(address delegator, address delegatee) internal {
        address currentDelegate = delegates[delegator];
        uint96 delegatorBalance = balances[delegator];
        delegates[delegator] = delegatee;

        emit DelegateChanged(delegator, currentDelegate, delegatee);

        _moveDelegates(currentDelegate, delegatee, delegatorBalance);
    }

    function _transferTokens(address src, address dst, uint96 amount) internal {
        require(src != address(0), "Easify:_transferTokens: cannot transfer from the zero address");
        require(dst != address(0), "Easify:_transferTokens: cannot transfer to the zero address");

        balances[src] = sub96(balances[src], amount, "Easify:_transferTokens: transfer amount exceeds balance");
        balances[dst] = add96(balances[dst], amount, "Easify:_transferTokens: transfer amount overflows");
        emit Transfer(src, dst, amount);

        _moveDelegates(delegates[src], delegates[dst], amount);
    }

    function _mint(address account, uint96 amount) internal {
        require(account != address(0), "Easify: mint to the zero address");

        totalSupply = add96(totalSupply, amount, "Easify:_mint: mint amount overflows");
        balances[account] = add96(balances[account], amount, "Easify:_mint: mint amount overflows");
        emit Transfer(address(0), account, amount);
    }

    function _burn(address account, uint96 amount) internal {
        require(account != address(0), "Easify: burn from the zero address");

        balances[account] = sub96(balances[account], amount, "Easify: burn amount exceeds balance");
        totalSupply = sub96(totalSupply, amount, "Easify: burn amount exceeds total supply");
        emit Transfer(account, address(0), amount);
    }

    function _moveDelegates(address srcRep, address dstRep, uint96 amount) internal {
        if (srcRep != dstRep && amount > 0) {
            if (srcRep != address(0)) {
                uint32 srcRepNum = numCheckpoints[srcRep];
                uint96 srcRepOld = srcRepNum > 0 ? checkpoints[srcRep][srcRepNum - 1].votes : 0;
                uint96 srcRepNew = sub96(srcRepOld, amount, "Easify:_moveVotes: vote amount underflows");
                _writeCheckpoint(srcRep, srcRepNum, srcRepOld, srcRepNew);
            }

            if (dstRep != address(0)) {
                uint32 dstRepNum = numCheckpoints[dstRep];
                uint96 dstRepOld = dstRepNum > 0 ? checkpoints[dstRep][dstRepNum - 1].votes : 0;
                uint96 dstRepNew = add96(dstRepOld, amount, "Easify:_moveVotes: vote amount overflows");
                _writeCheckpoint(dstRep, dstRepNum, dstRepOld, dstRepNew);
            }
        }
    }

    function _writeCheckpoint(address delegatee, uint32 nCheckpoints, uint96 oldVotes, uint96 newVotes) internal {
      uint32 blockNumber = safe32(block.number, "Easify:_writeCheckpoint: block number exceeds 32 bits");

      if (nCheckpoints > 0 && checkpoints[delegatee][nCheckpoints - 1].fromBlock == blockNumber) {
          checkpoints[delegatee][nCheckpoints - 1].votes = newVotes;
      } else {
          checkpoints[delegatee][nCheckpoints] = Checkpoint(blockNumber, newVotes);
          numCheckpoints[delegatee] = nCheckpoints + 1;
      }

      emit DelegateVotesChanged(delegatee, oldVotes, newVotes);
    }

    function safe32(uint n, string memory errorMessage) internal pure returns (uint32) {
        require(n < 2**32, errorMessage);
        return uint32(n);
    }

    function safe96(uint n, string memory errorMessage) internal pure returns (uint96) {
        require(n < 2**96, errorMessage);
        return uint96(n);
    }

    function add96(uint96 a, uint96 b, string memory errorMessage) internal pure returns (uint96) {
        uint96 c = a + b;
        require(c >= a, errorMessage);
        return c;
    }

    function sub96(uint96 a, uint96 b, string memory errorMessage) internal pure returns (uint96) {
        require(b <= a, errorMessage);
        return a - b;
    }

    function getChainId() internal pure returns (uint) {
        uint256 chainId;
        assembly { chainId := chainid() }
        return chainId;
    }
}

Contract Security Audit

Contract ABI

[{"inputs":[{"internalType":"address","name":"gateway_","type":"address"}],"payable":false,"stateMutability":"nonpayable","type":"constructor"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"owner","type":"address"},{"indexed":true,"internalType":"address","name":"spender","type":"address"},{"indexed":false,"internalType":"uint256","name":"amount","type":"uint256"}],"name":"Approval","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"delegator","type":"address"},{"indexed":true,"internalType":"address","name":"fromDelegate","type":"address"},{"indexed":true,"internalType":"address","name":"toDelegate","type":"address"}],"name":"DelegateChanged","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"delegate","type":"address"},{"indexed":false,"internalType":"uint256","name":"previousBalance","type":"uint256"},{"indexed":false,"internalType":"uint256","name":"newBalance","type":"uint256"}],"name":"DelegateVotesChanged","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"from","type":"address"},{"indexed":true,"internalType":"address","name":"to","type":"address"},{"indexed":false,"internalType":"uint256","name":"amount","type":"uint256"}],"name":"Transfer","type":"event"},{"constant":true,"inputs":[],"name":"DELEGATION_TYPEHASH","outputs":[{"internalType":"bytes32","name":"","type":"bytes32"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"DOMAIN_TYPEHASH","outputs":[{"internalType":"bytes32","name":"","type":"bytes32"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[{"internalType":"address","name":"account","type":"address"},{"internalType":"address","name":"spender","type":"address"}],"name":"allowance","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"internalType":"address","name":"spender","type":"address"},{"internalType":"uint256","name":"rawAmount","type":"uint256"}],"name":"approve","outputs":[{"internalType":"bool","name":"","type":"bool"}],"payable":false,"stateMutability":"nonpayable","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":true,"inputs":[{"internalType":"address","name":"","type":"address"},{"internalType":"uint32","name":"","type":"uint32"}],"name":"checkpoints","outputs":[{"internalType":"uint32","name":"fromBlock","type":"uint32"},{"internalType":"uint96","name":"votes","type":"uint96"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"decimals","outputs":[{"internalType":"uint8","name":"","type":"uint8"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"internalType":"address","name":"delegatee","type":"address"}],"name":"delegate","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"internalType":"address","name":"delegatee","type":"address"},{"internalType":"uint256","name":"nonce","type":"uint256"},{"internalType":"uint256","name":"expiry","type":"uint256"},{"internalType":"uint8","name":"v","type":"uint8"},{"internalType":"bytes32","name":"r","type":"bytes32"},{"internalType":"bytes32","name":"s","type":"bytes32"}],"name":"delegateBySig","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[{"internalType":"address","name":"","type":"address"}],"name":"delegates","outputs":[{"internalType":"address","name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"internalType":"address","name":"user","type":"address"},{"internalType":"bytes","name":"depositData","type":"bytes"}],"name":"deposit","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[],"name":"gateway","outputs":[{"internalType":"address","name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[{"internalType":"address","name":"account","type":"address"}],"name":"getCurrentVotes","outputs":[{"internalType":"uint96","name":"","type":"uint96"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[{"internalType":"address","name":"account","type":"address"},{"internalType":"uint256","name":"blockNumber","type":"uint256"}],"name":"getPriorVotes","outputs":[{"internalType":"uint96","name":"","type":"uint96"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"name","outputs":[{"internalType":"string","name":"","type":"string"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[{"internalType":"address","name":"","type":"address"}],"name":"nonces","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[{"internalType":"address","name":"","type":"address"}],"name":"numCheckpoints","outputs":[{"internalType":"uint32","name":"","type":"uint32"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"symbol","outputs":[{"internalType":"string","name":"","type":"string"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"totalSupply","outputs":[{"internalType":"uint96","name":"","type":"uint96"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"internalType":"address","name":"dst","type":"address"},{"internalType":"uint256","name":"rawAmount","type":"uint256"}],"name":"transfer","outputs":[{"internalType":"bool","name":"","type":"bool"}],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"internalType":"address","name":"src","type":"address"},{"internalType":"address","name":"dst","type":"address"},{"internalType":"uint256","name":"rawAmount","type":"uint256"}],"name":"transferFrom","outputs":[{"internalType":"bool","name":"","type":"bool"}],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"internalType":"uint256","name":"rawAmount","type":"uint256"}],"name":"withdraw","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"}]

6080604052600080546001600160601b03191690553480156200002157600080fd5b50604051620029413803806200294183398101604081905262000044916200007d565b600480546001600160a01b0319166001600160a01b0392909216919091179055620000d2565b80516200007781620000b8565b92915050565b6000602082840312156200009057600080fd5b60006200009e84846200006a565b949350505050565b60006001600160a01b03821662000077565b620000c381620000a6565b8114620000cf57600080fd5b50565b61285f80620000e26000396000f3fe608060405234801561001057600080fd5b50600436106101825760003560e01c806370a08231116100d8578063b4b5ea571161008c578063dd62ed3e11610066578063dd62ed3e14610314578063e7a324dc14610327578063f1127ed81461032f57610182565b8063b4b5ea57146102db578063c3cda520146102ee578063cf2c52cb1461030157610182565b80637ecebe00116100bd5780637ecebe00146102ad57806395d89b41146102c0578063a9059cbb146102c857610182565b806370a0823114610287578063782d6fe11461029a57610182565b806323b872dd1161013a578063587cde1e11610114578063587cde1e146102415780635c19a95c146102545780636fcfff451461026757610182565b806323b872dd146102045780632e1a7d4d14610217578063313ce5671461022c57610182565b8063116191b61161016b578063116191b6146101c557806318160ddd146101da57806320606b70146101ef57610182565b806306fdde0314610187578063095ea7b3146101a5575b600080fd5b61018f610350565b60405161019c91906123ed565b60405180910390f35b6101b86101b3366004611d33565b610389565b60405161019c9190612343565b6101cd6104ae565b60405161019c9190612335565b6101e26104ca565b60405161019c91906124d3565b6101f76104de565b60405161019c9190612351565b6101b8610212366004611c90565b6104f5565b61022a610225366004611e1a565b610699565b005b6102346106cd565b60405161019c91906124b7565b6101cd61024f366004611c30565b6106d2565b61022a610262366004611c30565b6106fa565b61027a610275366004611c30565b610707565b60405161019c919061248e565b6101f7610295366004611c30565b61071f565b6101e26102a8366004611d33565b610755565b6101f76102bb366004611c30565b610a40565b61018f610a52565b6101b86102d6366004611d33565b610a8b565b6101e26102e9366004611c30565b610ac7565b61022a6102fc366004611d63565b610b75565b61022a61030f366004611cdd565b610dfa565b6101f7610322366004611c56565b610e92565b6101f7610ed8565b61034261033d366004611dea565b610ee4565b60405161019c92919061249c565b6040518060400160405280600781526020017f454153592056320000000000000000000000000000000000000000000000000081525081565b6000807fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff8314156103db57507fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff610400565b6103fd836040518060600160405280602681526020016127f760269139610f1f565b90505b33600081815260016020908152604080832073ffffffffffffffffffffffffffffffffffffffff891680855292529182902080547fffffffffffffffffffffffffffffffffffffffff000000000000000000000000166bffffffffffffffffffffffff861617905590519091907f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b9259061049a9085906124c5565b60405180910390a360019150505b92915050565b60045473ffffffffffffffffffffffffffffffffffffffff1681565b6000546bffffffffffffffffffffffff1681565b6040516104ea9061231f565b604051809103902081565b73ffffffffffffffffffffffffffffffffffffffff831660009081526001602090815260408083203380855290835281842054825160608101909352602680845291936bffffffffffffffffffffffff90911692859261055f92889291906127f790830139610f1f565b90508673ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff16141580156105ab57506bffffffffffffffffffffffff82811614155b1561067f5760006105d583836040518060600160405280603e815260200161265b603e9139610f71565b73ffffffffffffffffffffffffffffffffffffffff8981166000818152600160209081526040808320948a16808452949091529081902080547fffffffffffffffffffffffffffffffffffffffff000000000000000000000000166bffffffffffffffffffffffff86161790555192935090917f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925906106759085906124c5565b60405180910390a3505b61068a878783610fd4565b600193505050505b9392505050565b60006106bd8260405180606001604052806027815260200161272760279139610f1f565b90506106c93382611240565b5050565b601281565b60036020526000908152604090205473ffffffffffffffffffffffffffffffffffffffff1681565b6107043382611404565b50565b60066020526000908152604090205463ffffffff1681565b73ffffffffffffffffffffffffffffffffffffffff166000908152600260205260409020546bffffffffffffffffffffffff1690565b6000438210610799576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016107909061246e565b60405180910390fd5b73ffffffffffffffffffffffffffffffffffffffff831660009081526006602052604090205463ffffffff16806107d45760009150506104a8565b73ffffffffffffffffffffffffffffffffffffffff8416600090815260056020908152604080832063ffffffff7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff8601811685529252909120541683106108ac5773ffffffffffffffffffffffffffffffffffffffff841660009081526005602090815260408083207fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff9490940163ffffffff168352929052205464010000000090046bffffffffffffffffffffffff1690506104a8565b73ffffffffffffffffffffffffffffffffffffffff8416600090815260056020908152604080832083805290915290205463ffffffff168310156108f45760009150506104a8565b60007fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff82015b8163ffffffff168163ffffffff1611156109e857600282820363ffffffff16048103610944611ba4565b5073ffffffffffffffffffffffffffffffffffffffff8716600090815260056020908152604080832063ffffffff8581168552908352928190208151808301909252549283168082526401000000009093046bffffffffffffffffffffffff1691810191909152908714156109c3576020015194506104a89350505050565b805163ffffffff168711156109da578193506109e1565b6001820392505b505061091a565b5073ffffffffffffffffffffffffffffffffffffffff8516600090815260056020908152604080832063ffffffff909416835292905220546bffffffffffffffffffffffff6401000000009091041691505092915050565b60076020526000908152604090205481565b6040518060400160405280600281526020017f455a00000000000000000000000000000000000000000000000000000000000081525081565b600080610ab08360405180606001604052806027815260200161260c60279139610f1f565b9050610abd338583610fd4565b5060019392505050565b73ffffffffffffffffffffffffffffffffffffffff811660009081526006602052604081205463ffffffff1680610aff576000610692565b73ffffffffffffffffffffffffffffffffffffffff831660009081526005602090815260408083207fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff850163ffffffff16845290915290205464010000000090046bffffffffffffffffffffffff169392505050565b6000604051610b839061231f565b60408051918290038220828201909152600782527f45415359205632000000000000000000000000000000000000000000000000006020909201919091527f8302a7ce4b69a8225815a92c493ad5b28225389d72d572f7033b464a82524b15610bea6114b8565b30604051602001610bfe949392919061239d565b6040516020818303038152906040528051906020012090506000604051610c249061232a565b604051908190038120610c3f918a908a908a9060200161235f565b60405160208183030381529060405280519060200120905060008282604051602001610c6c9291906122ee565b604051602081830303815290604052805190602001209050600060018288888860405160008152602001604052604051610ca994939291906123d2565b6020604051602081039080840390855afa158015610ccb573d6000803e3d6000fd5b50506040517fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0015191505073ffffffffffffffffffffffffffffffffffffffff8116610d43576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016107909061240e565b73ffffffffffffffffffffffffffffffffffffffff811660009081526007602052604090208054600181019091558914610da9576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016107909061241e565b87421115610de3576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016107909061242e565b610ded818b611404565b505050505b505050505050565b60045473ffffffffffffffffffffffffffffffffffffffff163314610e4b576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016107909061245e565b6000610e5982840184611e1a565b90506000610e7f8260405180606001604052806026815260200161279a60269139610f1f565b9050610e8b85826114bc565b5050505050565b73ffffffffffffffffffffffffffffffffffffffff91821660009081526001602090815260408083209390941682529190915220546bffffffffffffffffffffffff1690565b6040516104ea9061232a565b600560209081526000928352604080842090915290825290205463ffffffff81169064010000000090046bffffffffffffffffffffffff1682565b6000816c010000000000000000000000008410610f69576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161079091906123ed565b509192915050565b6000836bffffffffffffffffffffffff16836bffffffffffffffffffffffff1611158290610fcc576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161079091906123ed565b505050900390565b73ffffffffffffffffffffffffffffffffffffffff8316611021576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610790906123fe565b73ffffffffffffffffffffffffffffffffffffffff821661106e576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016107909061243e565b73ffffffffffffffffffffffffffffffffffffffff83166000908152600260209081526040918290205482516060810190935260378084526110cb936bffffffffffffffffffffffff90921692859291906127c090830139610f71565b73ffffffffffffffffffffffffffffffffffffffff848116600090815260026020908152604080832080547fffffffffffffffffffffffffffffffffffffffff000000000000000000000000166bffffffffffffffffffffffff96871617905592861682529082902054825160608101909352603180845261115d94919091169285929091906126f69083013961165a565b73ffffffffffffffffffffffffffffffffffffffff8381166000818152600260205260409081902080547fffffffffffffffffffffffffffffffffffffffff000000000000000000000000166bffffffffffffffffffffffff95909516949094179093559151908516907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef906111f49085906124c5565b60405180910390a373ffffffffffffffffffffffffffffffffffffffff80841660009081526003602052604080822054858416835291205461123b929182169116836116b5565b505050565b73ffffffffffffffffffffffffffffffffffffffff821661128d576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016107909061244e565b73ffffffffffffffffffffffffffffffffffffffff82166000908152600260209081526040918290205482516060810190935260238084526112ea936bffffffffffffffffffffffff909216928592919061277790830139610f71565b73ffffffffffffffffffffffffffffffffffffffff8316600090815260026020908152604080832080547fffffffffffffffffffffffffffffffffffffffff000000000000000000000000166bffffffffffffffffffffffff9586161790559154825160608101909352602880845261137394919091169285929091906126ce90830139610f71565b600080547fffffffffffffffffffffffffffffffffffffffff000000000000000000000000166bffffffffffffffffffffffff9290921691909117815560405173ffffffffffffffffffffffffffffffffffffffff8416907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef906113f89085906124c5565b60405180910390a35050565b73ffffffffffffffffffffffffffffffffffffffff808316600081815260036020818152604080842080546002845282862054949093528787167fffffffffffffffffffffffff000000000000000000000000000000000000000084168117909155905191909516946bffffffffffffffffffffffff9092169391928592917f3134e8a2e6d97e929a7e54011ea5485d7d196dd5f0ba4d4ef95803e8e3fc257f9190a46114b28284836116b5565b50505050565b4690565b73ffffffffffffffffffffffffffffffffffffffff8216611509576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016107909061247e565b6000546040805160608101909152602380825261153e926bffffffffffffffffffffffff169184916125e9602083013961165a565b600080547fffffffffffffffffffffffffffffffffffffffff000000000000000000000000166bffffffffffffffffffffffff92831617815573ffffffffffffffffffffffffffffffffffffffff84168152600260209081526040918290205482516060810190935260238084526115c694919091169285929091906125e99083013961165a565b73ffffffffffffffffffffffffffffffffffffffff831660008181526002602052604080822080547fffffffffffffffffffffffffffffffffffffffff000000000000000000000000166bffffffffffffffffffffffff959095169490941790935591519091907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef906113f89085906124c5565b6000838301826bffffffffffffffffffffffff80871690831610156116ac576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161079091906123ed565b50949350505050565b8173ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff16141580156116ff57506000816bffffffffffffffffffffffff16115b1561123b5773ffffffffffffffffffffffffffffffffffffffff8316156118025773ffffffffffffffffffffffffffffffffffffffff831660009081526006602052604081205463ffffffff1690816117595760006117c9565b73ffffffffffffffffffffffffffffffffffffffff851660009081526005602090815260408083207fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff860163ffffffff16845290915290205464010000000090046bffffffffffffffffffffffff165b905060006117f0828560405180606001604052806029815260200161274e60299139610f71565b90506117fe868484846118f8565b5050505b73ffffffffffffffffffffffffffffffffffffffff82161561123b5773ffffffffffffffffffffffffffffffffffffffff821660009081526006602052604081205463ffffffff1690816118575760006118c7565b73ffffffffffffffffffffffffffffffffffffffff841660009081526005602090815260408083207fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff860163ffffffff16845290915290205464010000000090046bffffffffffffffffffffffff165b905060006118ee82856040518060600160405280602881526020016126336028913961165a565b9050610df2858484845b600061191c4360405180606001604052806035815260200161269960359139611b62565b905060008463ffffffff16118015611990575073ffffffffffffffffffffffffffffffffffffffff8516600090815260056020908152604080832063ffffffff7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff8901811685529252909120548282169116145b15611a2f5773ffffffffffffffffffffffffffffffffffffffff851660009081526005602090815260408083207fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff880163ffffffff168452909152902080547fffffffffffffffffffffffffffffffff000000000000000000000000ffffffff166401000000006bffffffffffffffffffffffff851602179055611b0b565b60408051808201825263ffffffff80841682526bffffffffffffffffffffffff808616602080850191825273ffffffffffffffffffffffffffffffffffffffff8b166000818152600583528781208c871682528352878120965187549451909516640100000000027fffffffffffffffffffffffffffffffff000000000000000000000000ffffffff9587167fffffffffffffffffffffffffffffffffffffffffffffffffffffffff00000000958616179590951694909417909555938252600690935292909220805460018801909316929091169190911790555b8473ffffffffffffffffffffffffffffffffffffffff167fdec2bacdd2f05b59de34da9b523dff8be42e5e38e818c82fdb0bae774387a7248484604051611b539291906124e1565b60405180910390a25050505050565b6000816401000000008410610f69576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161079091906123ed565b604080518082019091526000808252602082015290565b80356104a8816125b9565b80356104a8816125cd565b60008083601f840112611be357600080fd5b50813567ffffffffffffffff811115611bfb57600080fd5b602083019150836001820283011115611c1357600080fd5b9250929050565b80356104a8816125d6565b80356104a8816125df565b600060208284031215611c4257600080fd5b6000611c4e8484611bbb565b949350505050565b60008060408385031215611c6957600080fd5b6000611c758585611bbb565b9250506020611c8685828601611bbb565b9150509250929050565b600080600060608486031215611ca557600080fd5b6000611cb18686611bbb565b9350506020611cc286828701611bbb565b9250506040611cd386828701611bc6565b9150509250925092565b600080600060408486031215611cf257600080fd5b6000611cfe8686611bbb565b935050602084013567ffffffffffffffff811115611d1b57600080fd5b611d2786828701611bd1565b92509250509250925092565b60008060408385031215611d4657600080fd5b6000611d528585611bbb565b9250506020611c8685828601611bc6565b60008060008060008060c08789031215611d7c57600080fd5b6000611d888989611bbb565b9650506020611d9989828a01611bc6565b9550506040611daa89828a01611bc6565b9450506060611dbb89828a01611c25565b9350506080611dcc89828a01611bc6565b92505060a0611ddd89828a01611bc6565b9150509295509295509295565b60008060408385031215611dfd57600080fd5b6000611e098585611bbb565b9250506020611c8685828601611c1a565b600060208284031215611e2c57600080fd5b6000611c4e8484611bc6565b611e418161250e565b82525050565b611e4181612519565b611e418161251e565b611e41611e658261251e565b61251e565b6000611e75826124fc565b611e7f8185612500565b9350611e8f818560208601612565565b611e9881612591565b9093019392505050565b6000611eaf603d83612500565b7f4561736966793a5f7472616e73666572546f6b656e733a2063616e6e6f74207481527f72616e736665722066726f6d20746865207a65726f2061646472657373000000602082015260400192915050565b6000611f0e600283612509565b7f1901000000000000000000000000000000000000000000000000000000000000815260020192915050565b6000611f47602783612500565b7f4561736966793a64656c656761746542795369673a20696e76616c696420736981527f676e617475726500000000000000000000000000000000000000000000000000602082015260400192915050565b6000611fa6602383612500565b7f4561736966793a64656c656761746542795369673a20696e76616c6964206e6f81527f6e63650000000000000000000000000000000000000000000000000000000000602082015260400192915050565b6000612005602783612500565b7f4561736966793a64656c656761746542795369673a207369676e61747572652081527f6578706972656400000000000000000000000000000000000000000000000000602082015260400192915050565b6000612064603b83612500565b7f4561736966793a5f7472616e73666572546f6b656e733a2063616e6e6f74207481527f72616e7366657220746f20746865207a65726f20616464726573730000000000602082015260400192915050565b60006120c3602283612500565b7f4561736966793a206275726e2066726f6d20746865207a65726f20616464726581527f7373000000000000000000000000000000000000000000000000000000000000602082015260400192915050565b6000612122604383612509565b7f454950373132446f6d61696e28737472696e67206e616d652c75696e7432353681527f20636861696e49642c6164647265737320766572696679696e67436f6e74726160208201527f6374290000000000000000000000000000000000000000000000000000000000604082015260430192915050565b60006121a7600e83612500565b7f496e76616c696420616363657373000000000000000000000000000000000000815260200192915050565b60006121e0602883612500565b7f4561736966793a6765745072696f72566f7465733a206e6f742079657420646581527f7465726d696e6564000000000000000000000000000000000000000000000000602082015260400192915050565b600061223f603a83612509565b7f44656c65676174696f6e28616464726573732064656c6567617465652c75696e81527f74323536206e6f6e63652c75696e7432353620657870697279290000000000006020820152603a0192915050565b600061229e602083612500565b7f4561736966793a206d696e7420746f20746865207a65726f2061646472657373815260200192915050565b611e418161253a565b611e4181612543565b611e418161255a565b611e4181612549565b60006122f982611f01565b91506123058285611e59565b6020820191506123158284611e59565b5060200192915050565b60006104a882612115565b60006104a882612232565b602081016104a88284611e38565b602081016104a88284611e47565b602081016104a88284611e50565b6080810161236d8287611e50565b61237a6020830186611e38565b6123876040830185611e50565b6123946060830184611e50565b95945050505050565b608081016123ab8287611e50565b6123b86020830186611e50565b6123c56040830185611e50565b6123946060830184611e38565b608081016123e08287611e50565b61237a60208301866122d3565b602080825281016106928184611e6a565b602080825281016104a881611ea2565b602080825281016104a881611f3a565b602080825281016104a881611f99565b602080825281016104a881611ff8565b602080825281016104a881612057565b602080825281016104a8816120b6565b602080825281016104a88161219a565b602080825281016104a8816121d3565b602080825281016104a881612291565b602081016104a882846122ca565b604081016124aa82856122ca565b61069260208301846122e5565b602081016104a882846122d3565b602081016104a882846122dc565b602081016104a882846122e5565b604081016124ef82856122dc565b61069260208301846122dc565b5190565b90815260200190565b919050565b60006104a882612521565b151590565b90565b73ffffffffffffffffffffffffffffffffffffffff1690565b63ffffffff1690565b60ff1690565b6bffffffffffffffffffffffff1690565b60006104a882612549565b60005b83811015612580578181015183820152602001612568565b838111156114b25750506000910152565b601f017fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe01690565b6125c28161250e565b811461070457600080fd5b6125c28161251e565b6125c28161253a565b6125c28161254356fe4561736966793a5f6d696e743a206d696e7420616d6f756e74206f766572666c6f77734561736966793a7472616e736665723a20616d6f756e74206578636565647320393620626974734561736966793a5f6d6f7665566f7465733a20766f746520616d6f756e74206f766572666c6f77734561736966793a7472616e7366657246726f6d3a207472616e7366657220616d6f756e742065786365656473207370656e64657220616c6c6f77616e63654561736966793a5f7772697465436865636b706f696e743a20626c6f636b206e756d626572206578636565647320333220626974734561736966793a206275726e20616d6f756e74206578636565647320746f74616c20737570706c794561736966793a5f7472616e73666572546f6b656e733a207472616e7366657220616d6f756e74206f766572666c6f77734561736966793a77697468647261773a20616d6f756e74206578636565647320393620626974734561736966793a5f6d6f7665566f7465733a20766f746520616d6f756e7420756e646572666c6f77734561736966793a206275726e20616d6f756e7420657863656564732062616c616e63654561736966793a6465706f7369743a20616d6f756e74206578636565647320393620626974734561736966793a5f7472616e73666572546f6b656e733a207472616e7366657220616d6f756e7420657863656564732062616c616e63654561736966793a617070726f76653a20616d6f756e7420657863656564732039362062697473a365627a7a72315820b26a00528e8e8e39db96c7f3c10fa572032595b6c9b826413b4801e6c6ff45546c6578706572696d656e74616cf564736f6c63430005110040000000000000000000000000a6fa4fb5f76172d178d61b04b0ecd319c5d1c0aa

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

000000000000000000000000a6fa4fb5f76172d178d61b04b0ecd319c5d1c0aa

-----Decoded View---------------
Arg [0] : gateway_ (address): 0xa6fa4fb5f76172d178d61b04b0ecd319c5d1c0aa

-----Encoded View---------------
1 Constructor Arguments found :
Arg [0] : 000000000000000000000000a6fa4fb5f76172d178d61b04b0ecd319c5d1c0aa


Block Transaction Gas Used Reward
Age Block Fee Address BC Fee Address Voting Power Jailed Incoming
Block Uncle Number Difficulty Gas Used Reward
Loading
Loading
Make sure to use the "Vote Down" button for any spammy posts, and the "Vote Up" for interesting conversations.