ETH Price: $3,059.37 (+1.83%)
Gas: 6 Gwei

Token

ERC20 ***
 

Overview

Max Total Supply

9,047.28459 ERC20 ***

Holders

292

Market

Onchain Market Cap

$0.00

Circulating Supply Market Cap

-

Other Info

Token Contract (WITH 6 Decimals)

Balance
0.052118 ERC20 ***

Value
$0.00
0x8a2f5d6d822611bdab08d306aa8f3e3942177417
Loading...
Loading
Loading...
Loading
Loading...
Loading

Click here to update the token information / general information
# Exchange Pair Price  24H Volume % Volume

Contract Source Code Verified (Exact Match)

Contract Name:
WrapperLock

Compiler Version
v0.4.24+commit.e67f0147

Optimization Enabled:
Yes with 200 runs

Other Settings:
default evmVersion

Contract Source Code (Solidity)

/**
 *Submitted for verification at Etherscan.io on 2019-07-15
*/

pragma solidity 0.4.24;

/**
 * @dev Collection of functions related to the address type,
 */
library Address {
    /**
     * @dev Returns true if `account` is a contract.
     *
     * This test is non-exhaustive, and there may be false-negatives: during the
     * execution of a contract's constructor, its address will be reported as
     * not containing a contract.
     *
     * > It is unsafe to assume that an address for which this function returns
     * false is an externally-owned account (EOA) and not a contract.
     */
    function isContract(address account) internal view returns (bool) {
        // This method relies in extcodesize, which returns 0 for contracts in
        // construction, since the code is only stored at the end of the
        // constructor execution.

        uint256 size;
        // solhint-disable-next-line no-inline-assembly
        assembly { size := extcodesize(account) }
        return size > 0;
    }
}


/**
 * @title ERC20Basic
 * @dev Simpler version of ERC20 interface
 * @dev see https://github.com/ethereum/EIPs/issues/179
 */
contract ERC20Basic {
  function totalSupply() public view returns (uint256);
  function balanceOf(address who) public view returns (uint256);
  function transfer(address to, uint256 value) public returns (bool);
  event Transfer(address indexed from, address indexed to, uint256 value);
}

/**
 * @title Basic token
 * @dev Basic version of StandardToken, with no allowances.
 */
contract BasicToken is ERC20Basic {
  using SafeMath for uint256;

  mapping(address => uint256) balances;

  uint256 totalSupply_;

  /**
  * @dev total number of tokens in existence
  */
  function totalSupply() public view returns (uint256) {
    return totalSupply_;
  }

  /**
  * @dev transfer token for a specified address
  * @param _to The address to transfer to.
  * @param _value The amount to be transferred.
  */
  function transfer(address _to, uint256 _value) public returns (bool) {
    require(_to != address(0));
    require(_value <= balances[msg.sender]);

    // SafeMath.sub will throw if there is not enough balance.
    balances[msg.sender] = balances[msg.sender].sub(_value);
    balances[_to] = balances[_to].add(_value);
    Transfer(msg.sender, _to, _value);
    return true;
  }

  /**
  * @dev Gets the balance of the specified address.
  * @param _owner The address to query the the balance of.
  * @return An uint256 representing the amount owned by the passed address.
  */
  function balanceOf(address _owner) public view returns (uint256 balance) {
    return balances[_owner];
  }

}


/**
 * @title SafeERC20
 * @dev Wrappers around ERC20 operations that throw on failure (when the token
 * contract returns false). Tokens that return no value (and instead revert or
 * throw on failure) are also supported, non-reverting calls are assumed to be
 * successful.
 * To use this library you can add a `using SafeERC20 for ERC20;` statement to your contract,
 * which allows you to call the safe operations as `token.safeTransfer(...)`, etc.
 */
library SafeERC20 {
    using SafeMath for uint256;
    using Address for address;

    function safeTransfer(IERC20 token, address to, uint256 value) internal {
        callOptionalReturn(token, abi.encodeWithSelector(bytes4(0xa9059cbb), to, value));
    }

    function safeTransferFrom(IERC20 token, address from, address to, uint256 value) internal {
        callOptionalReturn(token, abi.encodeWithSelector(bytes4(0x23b872dd), from, to, value));
    }

    function safeApprove(IERC20 token, address spender, uint256 value) internal {
        // safeApprove should only be called when setting an initial allowance,
        // or when resetting it to zero. To increase and decrease it, use
        // 'safeIncreaseAllowance' and 'safeDecreaseAllowance'
        // solhint-disable-next-line max-line-length
        require((value == 0) || (token.allowance(address(this), spender) == 0),
            "SafeERC20: approve from non-zero to non-zero allowance"
        );
        callOptionalReturn(token, abi.encodeWithSelector(token.approve.selector, spender, value));
    }

    function safeIncreaseAllowance(IERC20 token, address spender, uint256 value) internal {
        uint256 newAllowance = token.allowance(address(this), spender).add(value);
        callOptionalReturn(token, abi.encodeWithSelector(token.approve.selector, spender, newAllowance));
    }

    function safeDecreaseAllowance(IERC20 token, address spender, uint256 value) internal {
        uint256 newAllowance = token.allowance(address(this), spender).sub(value);
        callOptionalReturn(token, abi.encodeWithSelector(token.approve.selector, spender, newAllowance));
    }

    /**
     * @dev Imitates a Solidity high-level call (i.e. a regular function call to a contract), relaxing the requirement
     * on the return value: the return value is optional (but if data is returned, it must not be false).
     * @param token The token targeted by the call.
     * @param data The call data (encoded using abi.encode or one of its variants).
     */
    function callOptionalReturn(IERC20 token, bytes memory data) private {
        // We need to perform a low level call here, to bypass Solidity's return data size checking mechanism, since
        // we're implementing it ourselves.

        // A Solidity high level call has three parts:
        //  1. The target address is checked to verify it contains contract code
        //  2. The call itself is made, and success asserted
        //  3. The return value is decoded, which in turn checks the size of the returned data.
        // solhint-disable-next-line max-line-length
        require(address(token).isContract(), "SafeERC20: call to non-contract");

        // call returns only success in 0.4.24
        // solhint-disable-next-line avoid-low-level-calls
        bool success = address(token).call(data);
        require(success, "SafeERC20: low-level call failed");
    }
}

/**
 * @dev Interface of the ERC20 standard as defined in the EIP. Does not include
 * the optional functions; to access them see `ERC20Detailed`.
 */
interface IERC20 {
    /**
     * @dev Returns the amount of tokens in existence.
     */
    function totalSupply() external view returns (uint256);

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

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

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

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

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

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

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


/**
 * @title SafeMath
 * @dev Math operations with safety checks that throw on error
 */
library SafeMath {

  /**
  * @dev Multiplies two numbers, throws on overflow.
  */
  function mul(uint256 a, uint256 b) internal pure returns (uint256) {
    if (a == 0) {
      return 0;
    }
    uint256 c = a * b;
    assert(c / a == b);
    return c;
  }

  /**
  * @dev Integer division of two numbers, truncating the quotient.
  */
  function div(uint256 a, uint256 b) internal pure returns (uint256) {
    // assert(b > 0); // Solidity automatically throws when dividing by 0
    uint256 c = a / b;
    // assert(a == b * c + a % b); // There is no case in which this doesn't hold
    return c;
  }

  /**
  * @dev Substracts two numbers, throws on overflow (i.e. if subtrahend is greater than minuend).
  */
  function sub(uint256 a, uint256 b) internal pure returns (uint256) {
    assert(b <= a);
    return a - b;
  }

  /**
  * @dev Adds two numbers, throws on overflow.
  */
  function add(uint256 a, uint256 b) internal pure returns (uint256) {
    uint256 c = a + b;
    assert(c >= a);
    return c;
  }
}

/**
 * @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 public owner;


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


  /**
   * @dev The Ownable constructor sets the original `owner` of the contract to the sender
   * account.
   */
  function Ownable() public {
    owner = msg.sender;
  }

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

  /**
   * @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 {
    require(newOwner != address(0));
    OwnershipTransferred(owner, newOwner);
    owner = newOwner;
  }

}

/*

  Copyright Ethfinex Inc 2018

  Licensed under the Apache License, Version 2.0
  http://www.apache.org/licenses/LICENSE-2.0

*/


contract WrapperLock is BasicToken, Ownable {
    using SafeERC20 for IERC20;
    using SafeMath for uint256;

    address public TRANSFER_PROXY_VEFX = 0xdcDb42C9a256690bd153A7B409751ADFC8Dd5851;
    address public TRANSFER_PROXY_V2 = 0x95e6f48254609a6ee006f7d493c8e5fb97094cef;
    mapping (address => bool) public isSigner;

    string public name;
    string public symbol;
    uint public decimals;
    address public originalToken;

    mapping (address => uint256) public depositLock;
    mapping (address => uint256) public balances;

    function WrapperLock(address _originalToken, string _name, string _symbol, uint _decimals) Ownable() {
        originalToken = _originalToken;
        name = _name;
        symbol = _symbol;
        decimals = _decimals;
        isSigner[msg.sender] = true;
    }

    // @dev method only for testing, needs to be commented out when deploying
    // function addProxy(address _addr) public {
    //     TRANSFER_PROXY_VEFX = _addr;
    // }

    function deposit(uint _value, uint _forTime) public returns (bool success) {
        require(_forTime >= 1);
        require(now + _forTime * 1 hours >= depositLock[msg.sender]);
        IERC20(originalToken).safeTransferFrom(msg.sender, address(this), _value);
        balances[msg.sender] = balances[msg.sender].add(_value);
        totalSupply_ = totalSupply_.add(_value);
        depositLock[msg.sender] = now + _forTime * 1 hours;
        return true;
    }

    function withdraw(
        uint _value,
        uint8 v,
        bytes32 r,
        bytes32 s,
        uint signatureValidUntilBlock
    )
        public
        returns
        (bool success)
    {
        require(balanceOf(msg.sender) >= _value);
        if (now <= depositLock[msg.sender]) {
            require(block.number < signatureValidUntilBlock);
            require(isValidSignature(keccak256(msg.sender, address(this), signatureValidUntilBlock), v, r, s));
        }
        balances[msg.sender] = balances[msg.sender].sub(_value);
        totalSupply_ = totalSupply_.sub(_value);
        depositLock[msg.sender] = 0;
        IERC20(originalToken).safeTransfer(msg.sender, _value);
        return true;
    }

    function withdrawBalanceDifference() public onlyOwner returns (bool success) {
        require(IERC20(originalToken).balanceOf(address(this)).sub(totalSupply_) > 0);
        IERC20(originalToken).safeTransfer(msg.sender, IERC20(originalToken).balanceOf(address(this)).sub(totalSupply_));

        return true;
    }

    function withdrawDifferentToken(address _differentToken) public onlyOwner returns (bool) {
        require(_differentToken != originalToken);
        require(IERC20(_differentToken).balanceOf(address(this)) > 0);
        IERC20(_differentToken).safeTransfer(msg.sender, IERC20(_differentToken).balanceOf(address(this)));
        return true;
    }

    function transfer(address _to, uint256 _value) public returns (bool) {
        return false;
    }

    function transferFrom(address _from, address _to, uint _value) public {
        require(isSigner[_to] || isSigner[_from]);
        assert(msg.sender == TRANSFER_PROXY_VEFX || msg.sender == TRANSFER_PROXY_V2);
        balances[_to] = balances[_to].add(_value);
        depositLock[_to] = depositLock[_to] > now ? depositLock[_to] : now + 1 hours;
        balances[_from] = balances[_from].sub(_value);
        Transfer(_from, _to, _value);
    }

    function allowance(address _owner, address _spender) public constant returns (uint) {
        if (_spender == TRANSFER_PROXY_VEFX || _spender == TRANSFER_PROXY_V2) {
            return 2**256 - 1;
        }
    }

    function balanceOf(address _owner) public constant returns (uint256) {
        return balances[_owner];
    }

    function isValidSignature(
        bytes32 hash,
        uint8 v,
        bytes32 r,
        bytes32 s
    )
        public
        constant
        returns (bool)
    {
        return isSigner[ecrecover(
            keccak256("\x19Ethereum Signed Message:\n32", hash),
            v,
            r,
            s
        )];
    }

    function addSigner(address _newSigner) public {
        require(isSigner[msg.sender]);
        isSigner[_newSigner] = true;
    }

    function keccak(address _sender, address _wrapper, uint _validTill) public constant returns(bytes32) {
        return keccak256(_sender, _wrapper, _validTill);
    }

}

Contract Security Audit

Contract ABI

[{"constant":true,"inputs":[],"name":"name","outputs":[{"name":"","type":"string"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[],"name":"withdrawBalanceDifference","outputs":[{"name":"success","type":"bool"}],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[],"name":"originalToken","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"totalSupply","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"_value","type":"uint256"},{"name":"v","type":"uint8"},{"name":"r","type":"bytes32"},{"name":"s","type":"bytes32"},{"name":"signatureValidUntilBlock","type":"uint256"}],"name":"withdraw","outputs":[{"name":"success","type":"bool"}],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"name":"_from","type":"address"},{"name":"_to","type":"address"},{"name":"_value","type":"uint256"}],"name":"transferFrom","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[{"name":"","type":"address"}],"name":"balances","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"decimals","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"TRANSFER_PROXY_VEFX","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[{"name":"_owner","type":"address"}],"name":"balanceOf","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[{"name":"_sender","type":"address"},{"name":"_wrapper","type":"address"},{"name":"_validTill","type":"uint256"}],"name":"keccak","outputs":[{"name":"","type":"bytes32"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[{"name":"","type":"address"}],"name":"isSigner","outputs":[{"name":"","type":"bool"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[{"name":"hash","type":"bytes32"},{"name":"v","type":"uint8"},{"name":"r","type":"bytes32"},{"name":"s","type":"bytes32"}],"name":"isValidSignature","outputs":[{"name":"","type":"bool"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"owner","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"symbol","outputs":[{"name":"","type":"string"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"_to","type":"address"},{"name":"_value","type":"uint256"}],"name":"transfer","outputs":[{"name":"","type":"bool"}],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[],"name":"TRANSFER_PROXY_V2","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[{"name":"","type":"address"}],"name":"depositLock","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"_differentToken","type":"address"}],"name":"withdrawDifferentToken","outputs":[{"name":"","type":"bool"}],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[{"name":"_owner","type":"address"},{"name":"_spender","type":"address"}],"name":"allowance","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"_value","type":"uint256"},{"name":"_forTime","type":"uint256"}],"name":"deposit","outputs":[{"name":"success","type":"bool"}],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"name":"_newSigner","type":"address"}],"name":"addSigner","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"name":"newOwner","type":"address"}],"name":"transferOwnership","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"inputs":[{"name":"_originalToken","type":"address"},{"name":"_name","type":"string"},{"name":"_symbol","type":"string"},{"name":"_decimals","type":"uint256"}],"payable":false,"stateMutability":"nonpayable","type":"constructor"},{"anonymous":false,"inputs":[{"indexed":true,"name":"previousOwner","type":"address"},{"indexed":true,"name":"newOwner","type":"address"}],"name":"OwnershipTransferred","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"name":"from","type":"address"},{"indexed":true,"name":"to","type":"address"},{"indexed":false,"name":"value","type":"uint256"}],"name":"Transfer","type":"event"}]

608060405260038054600160a060020a031990811673dcdb42c9a256690bd153a7b409751adfc8dd585117909155600480549091167395e6f48254609a6ee006f7d493c8e5fb97094cef1790553480156200005957600080fd5b50604051620012923803806200129283398101604090815281516020808401519284015160608501516002805433600160a060020a03199182161790915560098054909116600160a060020a0386161790559385018051939590949101929091620000ca9160069186019062000107565b508151620000e090600790602085019062000107565b506008555050336000908152600560205260409020805460ff1916600117905550620001ac565b828054600181600116156101000203166002900490600052602060002090601f016020900481019282601f106200014a57805160ff19168380011785556200017a565b828001600101855582156200017a579182015b828111156200017a5782518255916020019190600101906200015d565b50620001889291506200018c565b5090565b620001a991905b8082111562000188576000815560010162000193565b90565b6110d680620001bc6000396000f3006080604052600436106101325763ffffffff7c010000000000000000000000000000000000000000000000000000000060003504166306fdde0381146101375780630b82d33d146101c15780630e7c1cb5146101ea57806318160ddd1461021b5780631d6f757d1461024257806323b872dd1461026957806327e235e314610295578063313ce567146102b657806345164b3e146102cb57806370a08231146102e057806374f1d6ce146103015780637df73e271461032b5780638b257d3d1461034c5780638da5cb5b1461037057806395d89b4114610385578063a9059cbb1461039a578063ad93640f146103be578063cc891023146103d3578063dc42f2ed146103f4578063dd62ed3e14610415578063e2bbb1581461043c578063eb12d61e14610457578063f2fde38b14610478575b600080fd5b34801561014357600080fd5b5061014c610499565b6040805160208082528351818301528351919283929083019185019080838360005b8381101561018657818101518382015260200161016e565b50505050905090810190601f1680156101b35780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b3480156101cd57600080fd5b506101d6610527565b604080519115158252519081900360200190f35b3480156101f657600080fd5b506101ff61065b565b60408051600160a060020a039092168252519081900360200190f35b34801561022757600080fd5b5061023061066a565b60408051918252519081900360200190f35b34801561024e57600080fd5b506101d660043560ff60243516604435606435608435610670565b34801561027557600080fd5b50610293600160a060020a036004358116906024351660443561076b565b005b3480156102a157600080fd5b50610230600160a060020a03600435166108f2565b3480156102c257600080fd5b50610230610904565b3480156102d757600080fd5b506101ff61090a565b3480156102ec57600080fd5b50610230600160a060020a0360043516610919565b34801561030d57600080fd5b50610230600160a060020a0360043581169060243516604435610934565b34801561033757600080fd5b506101d6600160a060020a0360043516610976565b34801561035857600080fd5b506101d660043560ff6024351660443560643561098b565b34801561037c57600080fd5b506101ff610a4e565b34801561039157600080fd5b5061014c610a5d565b3480156103a657600080fd5b506101d6600160a060020a0360043516602435610ab8565b3480156103ca57600080fd5b506101ff610ac1565b3480156103df57600080fd5b50610230600160a060020a0360043516610ad0565b34801561040057600080fd5b506101d6600160a060020a0360043516610ae2565b34801561042157600080fd5b50610230600160a060020a0360043581169060243516610c37565b34801561044857600080fd5b506101d6600435602435610c71565b34801561046357600080fd5b50610293600160a060020a0360043516610d29565b34801561048457600080fd5b50610293600160a060020a0360043516610d6b565b6006805460408051602060026001851615610100026000190190941693909304601f8101849004840282018401909252818152929183018282801561051f5780601f106104f45761010080835404028352916020019161051f565b820191906000526020600020905b81548152906001019060200180831161050257829003601f168201915b505050505081565b600254600090600160a060020a0316331461054157600080fd5b6001546009546040805160e060020a6370a0823102815230600482015290516000936105d4939092600160a060020a03909116916370a082319160248082019260209290919082900301818987803b15801561059c57600080fd5b505af11580156105b0573d6000803e3d6000fd5b505050506040513d60208110156105c657600080fd5b50519063ffffffff610e0016565b116105de57600080fd5b6001546009546040805160e060020a6370a08231028152306004820152905161065593339361063c939192600160a060020a03909116916370a082319160248083019260209291908290030181600087803b15801561059c57600080fd5b600954600160a060020a0316919063ffffffff610e1216565b50600190565b600954600160a060020a031681565b60015490565b60008561067c33610919565b101561068757600080fd5b336000908152600a602052604090205442116106f0574382116106a957600080fd5b604080516c010000000000000000000000003381028252300260148201526028810184905290519081900360480190206106e59086868661098b565b15156106f057600080fd5b336000908152600b6020526040902054610710908763ffffffff610e0016565b336000908152600b6020526040902055600154610733908763ffffffff610e0016565b600155336000818152600a602052604081205560095461075f91600160a060020a039091169088610e12565b50600195945050505050565b600160a060020a03821660009081526005602052604090205460ff16806107aa5750600160a060020a03831660009081526005602052604090205460ff165b15156107b557600080fd5b600354600160a060020a03163314806107d85750600454600160a060020a031633145b15156107e057fe5b600160a060020a0382166000908152600b6020526040902054610809908263ffffffff610e9716565b600160a060020a0383166000908152600b6020908152604080832093909355600a90522054421061083e5742610e1001610858565b600160a060020a0382166000908152600a60205260409020545b600160a060020a038084166000908152600a60209081526040808320949094559186168152600b9091522054610894908263ffffffff610e0016565b600160a060020a038085166000818152600b602090815260409182902094909455805185815290519286169391927fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef929181900390910190a3505050565b600b6020526000908152604090205481565b60085481565b600354600160a060020a031681565b600160a060020a03166000908152600b602052604090205490565b604080516c01000000000000000000000000600160a060020a038087168202835285160260148201526028810183905290519081900360480190209392505050565b60056020526000908152604090205460ff1681565b604080517f19457468657265756d205369676e6564204d6573736167653a0a3332000000008152601c8101869052815190819003603c018120600080835260208381018086529290925260ff87168385015260608301869052608083018590529251600592849260019260a080840193601f19830192908190039091019086865af1158015610a1e573d6000803e3d6000fd5b505060408051601f190151600160a060020a03168352602083019390935250016000205460ff1695945050505050565b600254600160a060020a031681565b6007805460408051602060026001851615610100026000190190941693909304601f8101849004840282018401909252818152929183018282801561051f5780601f106104f45761010080835404028352916020019161051f565b60005b92915050565b600454600160a060020a031681565b600a6020526000908152604090205481565b600254600090600160a060020a03163314610afc57600080fd5b600954600160a060020a0383811691161415610b1757600080fd5b6040805160e060020a6370a082310281523060048201529051600091600160a060020a038516916370a082319160248082019260209290919082900301818787803b158015610b6557600080fd5b505af1158015610b79573d6000803e3d6000fd5b505050506040513d6020811015610b8f57600080fd5b505111610b9b57600080fd5b6040805160e060020a6370a082310281523060048201529051610c2f913391600160a060020a038616916370a082319160248083019260209291908290030181600087803b158015610bec57600080fd5b505af1158015610c00573d6000803e3d6000fd5b505050506040513d6020811015610c1657600080fd5b5051600160a060020a038516919063ffffffff610e1216565b506001919050565b600354600090600160a060020a0383811691161480610c635750600454600160a060020a038381169116145b15610abb5750600019610abb565b60006001821015610c8157600080fd5b336000908152600a602052604090205442610e108402011015610ca357600080fd5b600954610cc190600160a060020a031633308663ffffffff610ead16565b336000908152600b6020526040902054610ce1908463ffffffff610e9716565b336000908152600b6020526040902055600154610d04908463ffffffff610e9716565b6001908155336000908152600a6020526040902042610e108502019055905092915050565b3360009081526005602052604090205460ff161515610d4757600080fd5b600160a060020a03166000908152600560205260409020805460ff19166001179055565b600254600160a060020a03163314610d8257600080fd5b600160a060020a0381161515610d9757600080fd5b600254604051600160a060020a038084169216907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e090600090a36002805473ffffffffffffffffffffffffffffffffffffffff1916600160a060020a0392909216919091179055565b600082821115610e0c57fe5b50900390565b60408051600160a060020a038416602482015260448082018490528251808303909101815260649091019091526020810180517bffffffffffffffffffffffffffffffffffffffffffffffffffffffff167fa9059cbb00000000000000000000000000000000000000000000000000000000179052610e92908490610f3b565b505050565b600082820183811015610ea657fe5b9392505050565b60408051600160a060020a0380861660248301528416604482015260648082018490528251808303909101815260849091019091526020810180517bffffffffffffffffffffffffffffffffffffffffffffffffffffffff167f23b872dd00000000000000000000000000000000000000000000000000000000179052610f35908590610f3b565b50505050565b6000610f4f83600160a060020a03166110a2565b1515610fbc57604080517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601f60248201527f5361666545524332303a2063616c6c20746f206e6f6e2d636f6e747261637400604482015290519081900360640190fd5b82600160a060020a03168260405180828051906020019080838360005b83811015610ff1578181015183820152602001610fd9565b50505050905090810190601f16801561101e5780820380516001836020036101000a031916815260200191505b509150506000604051808303816000865af192505050801515610e9257604080517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820181905260248201527f5361666545524332303a206c6f772d6c6576656c2063616c6c206661696c6564604482015290519081900360640190fd5b6000903b11905600a165627a7a72305820925245f3db4b38614db74a60c0a285dfdd978739a0cb0163c70c460b4feb5dcc0029000000000000000000000000dac17f958d2ee523a2206206994597c13d831ec7000000000000000000000000000000000000000000000000000000000000008000000000000000000000000000000000000000000000000000000000000000c00000000000000000000000000000000000000000000000000000000000000006000000000000000000000000000000000000000000000000000000000000000b555344545772617070657200000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000055553445457000000000000000000000000000000000000000000000000000000

Deployed Bytecode

0x6080604052600436106101325763ffffffff7c010000000000000000000000000000000000000000000000000000000060003504166306fdde0381146101375780630b82d33d146101c15780630e7c1cb5146101ea57806318160ddd1461021b5780631d6f757d1461024257806323b872dd1461026957806327e235e314610295578063313ce567146102b657806345164b3e146102cb57806370a08231146102e057806374f1d6ce146103015780637df73e271461032b5780638b257d3d1461034c5780638da5cb5b1461037057806395d89b4114610385578063a9059cbb1461039a578063ad93640f146103be578063cc891023146103d3578063dc42f2ed146103f4578063dd62ed3e14610415578063e2bbb1581461043c578063eb12d61e14610457578063f2fde38b14610478575b600080fd5b34801561014357600080fd5b5061014c610499565b6040805160208082528351818301528351919283929083019185019080838360005b8381101561018657818101518382015260200161016e565b50505050905090810190601f1680156101b35780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b3480156101cd57600080fd5b506101d6610527565b604080519115158252519081900360200190f35b3480156101f657600080fd5b506101ff61065b565b60408051600160a060020a039092168252519081900360200190f35b34801561022757600080fd5b5061023061066a565b60408051918252519081900360200190f35b34801561024e57600080fd5b506101d660043560ff60243516604435606435608435610670565b34801561027557600080fd5b50610293600160a060020a036004358116906024351660443561076b565b005b3480156102a157600080fd5b50610230600160a060020a03600435166108f2565b3480156102c257600080fd5b50610230610904565b3480156102d757600080fd5b506101ff61090a565b3480156102ec57600080fd5b50610230600160a060020a0360043516610919565b34801561030d57600080fd5b50610230600160a060020a0360043581169060243516604435610934565b34801561033757600080fd5b506101d6600160a060020a0360043516610976565b34801561035857600080fd5b506101d660043560ff6024351660443560643561098b565b34801561037c57600080fd5b506101ff610a4e565b34801561039157600080fd5b5061014c610a5d565b3480156103a657600080fd5b506101d6600160a060020a0360043516602435610ab8565b3480156103ca57600080fd5b506101ff610ac1565b3480156103df57600080fd5b50610230600160a060020a0360043516610ad0565b34801561040057600080fd5b506101d6600160a060020a0360043516610ae2565b34801561042157600080fd5b50610230600160a060020a0360043581169060243516610c37565b34801561044857600080fd5b506101d6600435602435610c71565b34801561046357600080fd5b50610293600160a060020a0360043516610d29565b34801561048457600080fd5b50610293600160a060020a0360043516610d6b565b6006805460408051602060026001851615610100026000190190941693909304601f8101849004840282018401909252818152929183018282801561051f5780601f106104f45761010080835404028352916020019161051f565b820191906000526020600020905b81548152906001019060200180831161050257829003601f168201915b505050505081565b600254600090600160a060020a0316331461054157600080fd5b6001546009546040805160e060020a6370a0823102815230600482015290516000936105d4939092600160a060020a03909116916370a082319160248082019260209290919082900301818987803b15801561059c57600080fd5b505af11580156105b0573d6000803e3d6000fd5b505050506040513d60208110156105c657600080fd5b50519063ffffffff610e0016565b116105de57600080fd5b6001546009546040805160e060020a6370a08231028152306004820152905161065593339361063c939192600160a060020a03909116916370a082319160248083019260209291908290030181600087803b15801561059c57600080fd5b600954600160a060020a0316919063ffffffff610e1216565b50600190565b600954600160a060020a031681565b60015490565b60008561067c33610919565b101561068757600080fd5b336000908152600a602052604090205442116106f0574382116106a957600080fd5b604080516c010000000000000000000000003381028252300260148201526028810184905290519081900360480190206106e59086868661098b565b15156106f057600080fd5b336000908152600b6020526040902054610710908763ffffffff610e0016565b336000908152600b6020526040902055600154610733908763ffffffff610e0016565b600155336000818152600a602052604081205560095461075f91600160a060020a039091169088610e12565b50600195945050505050565b600160a060020a03821660009081526005602052604090205460ff16806107aa5750600160a060020a03831660009081526005602052604090205460ff165b15156107b557600080fd5b600354600160a060020a03163314806107d85750600454600160a060020a031633145b15156107e057fe5b600160a060020a0382166000908152600b6020526040902054610809908263ffffffff610e9716565b600160a060020a0383166000908152600b6020908152604080832093909355600a90522054421061083e5742610e1001610858565b600160a060020a0382166000908152600a60205260409020545b600160a060020a038084166000908152600a60209081526040808320949094559186168152600b9091522054610894908263ffffffff610e0016565b600160a060020a038085166000818152600b602090815260409182902094909455805185815290519286169391927fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef929181900390910190a3505050565b600b6020526000908152604090205481565b60085481565b600354600160a060020a031681565b600160a060020a03166000908152600b602052604090205490565b604080516c01000000000000000000000000600160a060020a038087168202835285160260148201526028810183905290519081900360480190209392505050565b60056020526000908152604090205460ff1681565b604080517f19457468657265756d205369676e6564204d6573736167653a0a3332000000008152601c8101869052815190819003603c018120600080835260208381018086529290925260ff87168385015260608301869052608083018590529251600592849260019260a080840193601f19830192908190039091019086865af1158015610a1e573d6000803e3d6000fd5b505060408051601f190151600160a060020a03168352602083019390935250016000205460ff1695945050505050565b600254600160a060020a031681565b6007805460408051602060026001851615610100026000190190941693909304601f8101849004840282018401909252818152929183018282801561051f5780601f106104f45761010080835404028352916020019161051f565b60005b92915050565b600454600160a060020a031681565b600a6020526000908152604090205481565b600254600090600160a060020a03163314610afc57600080fd5b600954600160a060020a0383811691161415610b1757600080fd5b6040805160e060020a6370a082310281523060048201529051600091600160a060020a038516916370a082319160248082019260209290919082900301818787803b158015610b6557600080fd5b505af1158015610b79573d6000803e3d6000fd5b505050506040513d6020811015610b8f57600080fd5b505111610b9b57600080fd5b6040805160e060020a6370a082310281523060048201529051610c2f913391600160a060020a038616916370a082319160248083019260209291908290030181600087803b158015610bec57600080fd5b505af1158015610c00573d6000803e3d6000fd5b505050506040513d6020811015610c1657600080fd5b5051600160a060020a038516919063ffffffff610e1216565b506001919050565b600354600090600160a060020a0383811691161480610c635750600454600160a060020a038381169116145b15610abb5750600019610abb565b60006001821015610c8157600080fd5b336000908152600a602052604090205442610e108402011015610ca357600080fd5b600954610cc190600160a060020a031633308663ffffffff610ead16565b336000908152600b6020526040902054610ce1908463ffffffff610e9716565b336000908152600b6020526040902055600154610d04908463ffffffff610e9716565b6001908155336000908152600a6020526040902042610e108502019055905092915050565b3360009081526005602052604090205460ff161515610d4757600080fd5b600160a060020a03166000908152600560205260409020805460ff19166001179055565b600254600160a060020a03163314610d8257600080fd5b600160a060020a0381161515610d9757600080fd5b600254604051600160a060020a038084169216907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e090600090a36002805473ffffffffffffffffffffffffffffffffffffffff1916600160a060020a0392909216919091179055565b600082821115610e0c57fe5b50900390565b60408051600160a060020a038416602482015260448082018490528251808303909101815260649091019091526020810180517bffffffffffffffffffffffffffffffffffffffffffffffffffffffff167fa9059cbb00000000000000000000000000000000000000000000000000000000179052610e92908490610f3b565b505050565b600082820183811015610ea657fe5b9392505050565b60408051600160a060020a0380861660248301528416604482015260648082018490528251808303909101815260849091019091526020810180517bffffffffffffffffffffffffffffffffffffffffffffffffffffffff167f23b872dd00000000000000000000000000000000000000000000000000000000179052610f35908590610f3b565b50505050565b6000610f4f83600160a060020a03166110a2565b1515610fbc57604080517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601f60248201527f5361666545524332303a2063616c6c20746f206e6f6e2d636f6e747261637400604482015290519081900360640190fd5b82600160a060020a03168260405180828051906020019080838360005b83811015610ff1578181015183820152602001610fd9565b50505050905090810190601f16801561101e5780820380516001836020036101000a031916815260200191505b509150506000604051808303816000865af192505050801515610e9257604080517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820181905260248201527f5361666545524332303a206c6f772d6c6576656c2063616c6c206661696c6564604482015290519081900360640190fd5b6000903b11905600a165627a7a72305820925245f3db4b38614db74a60c0a285dfdd978739a0cb0163c70c460b4feb5dcc0029

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

000000000000000000000000dac17f958d2ee523a2206206994597c13d831ec7000000000000000000000000000000000000000000000000000000000000008000000000000000000000000000000000000000000000000000000000000000c00000000000000000000000000000000000000000000000000000000000000006000000000000000000000000000000000000000000000000000000000000000b555344545772617070657200000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000055553445457000000000000000000000000000000000000000000000000000000

-----Decoded View---------------
Arg [0] : _originalToken (address): 0xdAC17F958D2ee523a2206206994597C13D831ec7
Arg [1] : _name (string): USDTWrapper
Arg [2] : _symbol (string): USDTW
Arg [3] : _decimals (uint256): 6

-----Encoded View---------------
8 Constructor Arguments found :
Arg [0] : 000000000000000000000000dac17f958d2ee523a2206206994597c13d831ec7
Arg [1] : 0000000000000000000000000000000000000000000000000000000000000080
Arg [2] : 00000000000000000000000000000000000000000000000000000000000000c0
Arg [3] : 0000000000000000000000000000000000000000000000000000000000000006
Arg [4] : 000000000000000000000000000000000000000000000000000000000000000b
Arg [5] : 5553445457726170706572000000000000000000000000000000000000000000
Arg [6] : 0000000000000000000000000000000000000000000000000000000000000005
Arg [7] : 5553445457000000000000000000000000000000000000000000000000000000


Deployed Bytecode Sourcemap

11233:4513:0:-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;11572:18;;8:9:-1;5:2;;;30:1;27;20:12;5:2;11572:18:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;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;11572:18:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;13481:320;;8:9:-1;5:2;;;30:1;27;20:12;5:2;13481:320:0;;;;;;;;;;;;;;;;;;;;;;11651:28;;8:9:-1;5:2;;;30:1;27;20:12;5:2;11651:28:0;;;;;;;;-1:-1:-1;;;;;11651:28:0;;;;;;;;;;;;;;1715:85;;8:9:-1;5:2;;;30:1;27;20:12;5:2;1715:85:0;;;;;;;;;;;;;;;;;;;;12732:741;;8:9:-1;5:2;;;30:1;27;20:12;5:2;-1:-1;12732:741:0;;;;;;;;;;;;;;;14277:451;;8:9:-1;5:2;;;30:1;27;20:12;5:2;-1:-1;14277:451:0;-1:-1:-1;;;;;14277:451:0;;;;;;;;;;;;;;11742:44;;8:9:-1;5:2;;;30:1;27;20:12;5:2;-1:-1;11742:44:0;-1:-1:-1;;;;;11742:44:0;;;;;11624:20;;8:9:-1;5:2;;;30:1;27;20:12;5:2;11624:20:0;;;;11352:79;;8:9:-1;5:2;;;30:1;27;20:12;5:2;11352:79:0;;;;14960:111;;8:9:-1;5:2;;;30:1;27;20:12;5:2;-1:-1;14960:111:0;-1:-1:-1;;;;;14960:111:0;;;;;15574:167;;8:9:-1;5:2;;;30:1;27;20:12;5:2;-1:-1;15574:167:0;-1:-1:-1;;;;;15574:167:0;;;;;;;;;;;;11522:41;;8:9:-1;5:2;;;30:1;27;20:12;5:2;-1:-1;11522:41:0;-1:-1:-1;;;;;11522:41:0;;;;;15079:347;;8:9:-1;5:2;;;30:1;27;20:12;5:2;-1:-1;15079:347:0;;;;;;;;;;;;;10286:20;;8:9:-1;5:2;;;30:1;27;20:12;5:2;10286:20:0;;;;11597;;8:9:-1;5:2;;;30:1;27;20:12;5:2;11597:20:0;;;;14169:100;;8:9:-1;5:2;;;30:1;27;20:12;5:2;-1:-1;14169:100:0;-1:-1:-1;;;;;14169:100:0;;;;;;;11438:77;;8:9:-1;5:2;;;30:1;27;20:12;5:2;11438:77:0;;;;11688:47;;8:9:-1;5:2;;;30:1;27;20:12;5:2;-1:-1;11688:47:0;-1:-1:-1;;;;;11688:47:0;;;;;13809:352;;8:9:-1;5:2;;;30:1;27;20:12;5:2;-1:-1;13809:352:0;-1:-1:-1;;;;;13809:352:0;;;;;14736:216;;8:9:-1;5:2;;;30:1;27;20:12;5:2;-1:-1;14736:216:0;-1:-1:-1;;;;;14736:216:0;;;;;;;;;;12254:470;;8:9:-1;5:2;;;30:1;27;20:12;5:2;-1:-1;12254:470:0;;;;;;;15434:132;;8:9:-1;5:2;;;30:1;27;20:12;5:2;-1:-1;15434:132:0;-1:-1:-1;;;;;15434:132:0;;;;;10906:173;;8:9:-1;5:2;;;30:1;27;20:12;5:2;-1:-1;10906:173:0;-1:-1:-1;;;;;10906:173:0;;;;;11572:18;;;;;;;;;;;;;;;-1:-1:-1;;11572:18:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::o;13481:320::-;10719:5;;13544:12;;-1:-1:-1;;;;;10719:5:0;10705:10;:19;10697:28;;;;;;13628:12;;13584:13;;13577:46;;;-1:-1:-1;;;;;13577:46:0;;13617:4;13577:46;;;;;;13644:1;;13577:64;;13628:12;;-1:-1:-1;;;;;13584:13:0;;;;13577:31;;:46;;;;;;;;;;;;;;;13644:1;13584:13;13577:46;;;5:2:-1;;;;30:1;27;20:12;5:2;13577:46:0;;;;8:9:-1;5:2;;;45:16;42:1;39;24:38;77:16;74:1;67:27;5:2;13577:46:0;;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;-1:-1;13577:46:0;;:64;:50;:64;:::i;:::-;:68;13569:77;;;;;;13755:12;;13711:13;;13704:46;;;-1:-1:-1;;;;;13704:46:0;;13744:4;13704:46;;;;;;13657:112;;13692:10;;13704:64;;13755:12;;-1:-1:-1;;;;;13711:13:0;;;;13704:31;;:46;;;;;;;;;;;;;;13711:13;;13704:46;;;5:2:-1;;;;30:1;27;20:12;13704:64:0;13664:13;;-1:-1:-1;;;;;13664:13:0;;13657:112;;:34;:112;:::i;:::-;-1:-1:-1;13789:4:0;13481:320;:::o;11651:28::-;;;-1:-1:-1;;;;;11651:28:0;;:::o;1715:85::-;1782:12;;1715:85;:::o;12732:741::-;12920:12;12983:6;12958:21;12968:10;12958:9;:21::i;:::-;:31;;12950:40;;;;;;13024:10;13012:23;;;;:11;:23;;;;;;13005:3;:30;13001:224;;13060:12;:39;-1:-1:-1;13052:48:0;;;;;;13140:62;;;;13150:10;13140:62;;;;13170:4;13140:62;;;;;;;;;;;;;;;;;;;;;13123:89;;13204:1;13207;13210;13123:16;:89::i;:::-;13115:98;;;;;;;;13267:10;13258:20;;;;:8;:20;;;;;;:32;;13283:6;13258:32;:24;:32;:::i;:::-;13244:10;13235:20;;;;:8;:20;;;;;:55;13316:12;;:24;;13333:6;13316:24;:16;:24;:::i;:::-;13301:12;:39;13363:10;13377:1;13351:23;;;:11;:23;;;;;:27;13396:13;;13389:54;;-1:-1:-1;;;;;13396:13:0;;;;13436:6;13389:34;:54::i;:::-;-1:-1:-1;13461:4:0;12732:741;;;;;;;:::o;14277:451::-;-1:-1:-1;;;;;14366:13:0;;;;;;:8;:13;;;;;;;;;:32;;-1:-1:-1;;;;;;14383:15:0;;;;;;:8;:15;;;;;;;;14366:32;14358:41;;;;;;;;14431:19;;-1:-1:-1;;;;;14431:19:0;14417:10;:33;;:68;;-1:-1:-1;14468:17:0;;-1:-1:-1;;;;;14468:17:0;14454:10;:31;14417:68;14410:76;;;;;;-1:-1:-1;;;;;14513:13:0;;;;;;:8;:13;;;;;;:25;;14531:6;14513:25;:17;:25;:::i;:::-;-1:-1:-1;;;;;14497:13:0;;;;;;:8;:13;;;;;;;;:41;;;;14568:11;:16;;;;14587:3;-1:-1:-1;14568:57:0;;14612:3;14618:7;14612:13;14568:57;;;-1:-1:-1;;;;;14593:16:0;;;;;;:11;:16;;;;;;14568:57;-1:-1:-1;;;;;14549:16:0;;;;;;;:11;:16;;;;;;;;:76;;;;14654:15;;;;;:8;:15;;;;;:27;;14674:6;14654:27;:19;:27;:::i;:::-;-1:-1:-1;;;;;14636:15:0;;;;;;;:8;:15;;;;;;;;;:45;;;;14692:28;;;;;;;;;;;14636:15;;14692:28;;;;;;;;;;;14277:451;;;:::o;11742:44::-;;;;;;;;;;;;;:::o;11624:20::-;;;;:::o;11352:79::-;;;-1:-1:-1;;;;;11352:79:0;;:::o;14960:111::-;-1:-1:-1;;;;;15047:16:0;15020:7;15047:16;;;:8;:16;;;;;;;14960:111::o;15574:167::-;15693:40;;;;-1:-1:-1;;;;;15693:40:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;15574:167;;;;;:::o;11522:41::-;;;;;;;;;;;;;;;:::o;15079:347::-;15307:51;;;;;;;;;;;;;;;;;;;;;;15245:4;15283:134;;;15307:51;15283:134;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;15274:8;;15245:4;;15283:134;;;;;;;-1:-1:-1;;15283:134:0;;;;;;;;;;;15245:4;15283:134;;;;8:9:-1;5:2;;;45:16;42:1;39;24:38;77:16;74:1;67:27;5:2;-1:-1;;15283:134:0;;;-1:-1:-1;;15283:134:0;;-1:-1:-1;;;;;15274:144:0;;;15283:134;15274:144;;;;;;-1:-1:-1;15274:144:0;-1:-1:-1;15274:144:0;;;;;15079:347;-1:-1:-1;;;;;15079:347:0:o;10286:20::-;;;-1:-1:-1;;;;;10286:20:0;;:::o;11597:::-;;;;;;;;;;;;;;;-1:-1:-1;;11597:20:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;14169:100;14232:4;14169:100;;;;;:::o;11438:77::-;;;-1:-1:-1;;;;;11438:77:0;;:::o;11688:47::-;;;;;;;;;;;;;:::o;13809:352::-;10719:5;;13892:4;;-1:-1:-1;;;;;10719:5:0;10705:10;:19;10697:28;;;;;;13936:13;;-1:-1:-1;;;;;13917:32:0;;;13936:13;;13917:32;;13909:41;;;;;;13969:48;;;-1:-1:-1;;;;;13969:48:0;;14011:4;13969:48;;;;;;14020:1;;-1:-1:-1;;;;;13969:33:0;;;;;:48;;;;;;;;;;;;;;;14020:1;13969:33;:48;;;5:2:-1;;;;30:1;27;20:12;5:2;13969:48:0;;;;8:9:-1;5:2;;;45:16;42:1;39;24:38;77:16;74:1;67:27;5:2;13969:48:0;;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;-1:-1;13969:48:0;:52;13961:61;;;;;;14082:48;;;-1:-1:-1;;;;;14082:48:0;;14124:4;14082:48;;;;;;14033:98;;14070:10;;-1:-1:-1;;;;;14082:33:0;;;;;:48;;;;;;;;;;;;;;-1:-1:-1;14082:33:0;:48;;;5:2:-1;;;;30:1;27;20:12;5:2;14082:48:0;;;;8:9:-1;5:2;;;45:16;42:1;39;24:38;77:16;74:1;67:27;5:2;14082:48:0;;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;-1:-1;14082:48:0;-1:-1:-1;;;;;14033:36:0;;;:98;;:36;:98;:::i;:::-;-1:-1:-1;14149:4:0;13809:352;;;:::o;14736:216::-;14847:19;;14814:4;;-1:-1:-1;;;;;14835:31:0;;;14847:19;;14835:31;;:64;;-1:-1:-1;14882:17:0;;-1:-1:-1;;;;;14870:29:0;;;14882:17;;14870:29;14835:64;14831:114;;;-1:-1:-1;;;14916:17:0;;12254:470;12315:12;12360:1;12348:13;;;12340:22;;;;;;12421:10;12409:23;;;;:11;:23;;;;;;12381:3;12398:7;12387:18;;12381:24;:51;;12373:60;;;;;;12451:13;;12444:73;;-1:-1:-1;;;;;12451:13:0;12483:10;12503:4;12510:6;12444:73;:38;:73;:::i;:::-;12560:10;12551:20;;;;:8;:20;;;;;;:32;;12576:6;12551:32;:24;:32;:::i;:::-;12537:10;12528:20;;;;:8;:20;;;;;:55;12609:12;;:24;;12626:6;12609:24;:16;:24;:::i;:::-;12594:12;:39;;;12656:10;12644:23;;;;:11;:23;;;;;12670:3;12687:7;12676:18;;12670:24;12644:50;;12594:12;-1:-1:-1;12254:470:0;;;;:::o;15434:132::-;15508:10;15499:20;;;;:8;:20;;;;;;;;15491:29;;;;;;;;-1:-1:-1;;;;;15531:20:0;;;;;:8;:20;;;;;:27;;-1:-1:-1;;15531:27:0;15554:4;15531:27;;;15434:132::o;10906:173::-;10719:5;;-1:-1:-1;;;;;10719:5:0;10705:10;:19;10697:28;;;;;;-1:-1:-1;;;;;10983:22:0;;;;10975:31;;;;;;11034:5;;11013:37;;-1:-1:-1;;;;;11013:37:0;;;;11034:5;;11013:37;;11034:5;;11013:37;11057:5;:16;;-1:-1:-1;;11057:16:0;-1:-1:-1;;;;;11057:16:0;;;;;;;;;;10906:173::o;9749:113::-;9807:7;9830:6;;;;9823:14;;;;-1:-1:-1;9851:5:0;;;9749:113::o;3236:171::-;3345:53;;;-1:-1:-1;;;;;3345:53:0;;;;;;;;;;;;;;;26:21:-1;;;22:32;;;6:49;;3345:53:0;;;;;;;;25:18:-1;;61:17;;3345:53:0;182:15:-1;3368:18:0;179:29:-1;160:49;;3319:80:0;;3338:5;;3319:18;:80::i;:::-;3236:171;;;:::o;9929:133::-;9987:7;10015:5;;;10034:6;;;;10027:14;;;;10055:1;9929:133;-1:-1:-1;;;9929:133:0:o;3415:195::-;3542:59;;;-1:-1:-1;;;;;3542:59:0;;;;;;;;;;;;;;;;;;;;;;26:21:-1;;;22:32;;;6:49;;3542:59:0;;;;;;;;25:18:-1;;61:17;;3542:59:0;182:15:-1;3565:18:0;179:29:-1;160:49;;3516:86:0;;3535:5;;3516:18;:86::i;:::-;3415:195;;;;:::o;5216:899::-;6004:12;5820:27;5828:5;-1:-1:-1;;;;;5820:25:0;;:27::i;:::-;5812:71;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;6027:5;-1:-1:-1;;;;;6019:19:0;6039:4;6019:25;;;;;;;;;;;;;23:1:-1;8:100;33:3;30:1;27:10;8:100;;;90:11;;;84:18;71:11;;;64:39;52:2;45:10;8:100;;;12:14;6019:25:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;6055:52:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;558:422;618:4;925:20;;964:8;;558:422::o

Swarm Source

bzzr://925245f3db4b38614db74a60c0a285dfdd978739a0cb0163c70c460b4feb5dcc
Loading...
Loading
Loading...
Loading
[ Download: CSV Export  ]
[ Download: CSV Export  ]

A token is a representation of an on-chain or off-chain asset. The token page shows information such as price, total supply, holders, transfers and social links. Learn more about this page in our Knowledge Base.