HYPE Price: $29.24 (-4.40%)
 

Overview

HYPE Balance

HyperEVM LogoHyperEVM LogoHyperEVM Logo0 HYPE

HYPE Value

$0.00

More Info

Private Name Tags

Multichain Info

No addresses found
Transaction Hash
Block
From
To
Deposit251817872026-01-21 19:13:4210 days ago1769022822IN
0xD1A252b2...8b05FF657
0 HYPE0.000025430.1288
Deposit242132102026-01-10 18:33:5921 days ago1768070039IN
0xD1A252b2...8b05FF657
0 HYPE0.000063620.3222
Deposit237277182026-01-05 5:55:0526 days ago1767592505IN
0xD1A252b2...8b05FF657
0 HYPE0.00038191.934
Deposit228928022025-12-26 17:46:3536 days ago1766771195IN
0xD1A252b2...8b05FF657
0 HYPE0.001656278.38741051
Deposit228242982025-12-25 23:03:3436 days ago1766703814IN
0xD1A252b2...8b05FF657
0 HYPE0.000059220.32222222
Deposit222796982025-12-19 18:14:1643 days ago1766168056IN
0xD1A252b2...8b05FF657
0 HYPE0.000039750.20130025
Deposit205797972025-11-30 9:45:4062 days ago1764495940IN
0xD1A252b2...8b05FF657
0 HYPE0.000020690.104813
Deposit202318742025-11-26 10:40:4066 days ago1764153640IN
0xD1A252b2...8b05FF657
0 HYPE0.000118480.6
Deposit200987672025-11-24 22:18:3567 days ago1764022715IN
0xD1A252b2...8b05FF657
0 HYPE0.000124970.6329
Deposit200644662025-11-24 12:56:1668 days ago1763988976IN
0xD1A252b2...8b05FF657
0 HYPE0.000025190.13708843
Deposit199523152025-11-23 6:17:4469 days ago1763878664IN
0xD1A252b2...8b05FF657
0 HYPE0.000022050.12
Deposit197134882025-11-20 13:01:0272 days ago1763643662IN
0xD1A252b2...8b05FF657
0 HYPE0.000026780.14575154
Deposit197130982025-11-20 12:54:3972 days ago1763643279IN
0xD1A252b2...8b05FF657
0 HYPE0.000063630.32222222
Deposit192557532025-11-15 7:55:4777 days ago1763193347IN
0xD1A252b2...8b05FF657
0 HYPE0.000026380.13359628
Deposit188186222025-11-10 8:29:4282 days ago1762763382IN
0xD1A252b2...8b05FF657
0 HYPE0.000063620.3222
Deposit184189972025-11-05 19:17:1287 days ago1762370232IN
0xD1A252b2...8b05FF657
0 HYPE0.001314797.15372605
Deposit183510472025-11-05 0:43:1687 days ago1762303396IN
0xD1A252b2...8b05FF657
0 HYPE0.000438662.22119907
Deposit177084232025-10-28 17:07:1195 days ago1761671231IN
0xD1A252b2...8b05FF657
0 HYPE0.000039520.21504187
Deposit177083382025-10-28 17:05:4895 days ago1761671148IN
0xD1A252b2...8b05FF657
0 HYPE0.000047080.23845051
Deposit170558332025-10-21 6:47:43102 days ago1761029263IN
0xD1A252b2...8b05FF657
0 HYPE0.000029620.15
Deposit170380832025-10-21 1:56:44102 days ago1761011804IN
0xD1A252b2...8b05FF657
0 HYPE0.0047306323.95259572
Deposit170130222025-10-20 19:05:54103 days ago1760987154IN
0xD1A252b2...8b05FF657
0 HYPE0.000029730.15055
Deposit169547712025-10-20 3:10:58103 days ago1760929858IN
0xD1A252b2...8b05FF657
0 HYPE0.000075220.38092606
Deposit169510202025-10-20 2:09:28103 days ago1760926168IN
0xD1A252b2...8b05FF657
0 HYPE0.000063620.32222222
Deposit169283512025-10-19 19:57:51103 days ago1760903871IN
0xD1A252b2...8b05FF657
0 HYPE0.000076930.3896
View all transactions

Latest 25 internal transactions (View All)

Advanced mode:
Parent Transaction Hash Block From To
251817872026-01-21 19:13:4210 days ago1769022822
0xD1A252b2...8b05FF657
0 HYPE
251817872026-01-21 19:13:4210 days ago1769022822
0xD1A252b2...8b05FF657
0 HYPE
251817872026-01-21 19:13:4210 days ago1769022822
0xD1A252b2...8b05FF657
0 HYPE
251817872026-01-21 19:13:4210 days ago1769022822
0xD1A252b2...8b05FF657
0 HYPE
251817872026-01-21 19:13:4210 days ago1769022822
0xD1A252b2...8b05FF657
0 HYPE
242132102026-01-10 18:33:5921 days ago1768070039
0xD1A252b2...8b05FF657
0 HYPE
242132102026-01-10 18:33:5921 days ago1768070039
0xD1A252b2...8b05FF657
0 HYPE
242132102026-01-10 18:33:5921 days ago1768070039
0xD1A252b2...8b05FF657
0 HYPE
242132102026-01-10 18:33:5921 days ago1768070039
0xD1A252b2...8b05FF657
0 HYPE
242132102026-01-10 18:33:5921 days ago1768070039
0xD1A252b2...8b05FF657
0 HYPE
237277182026-01-05 5:55:0526 days ago1767592505
0xD1A252b2...8b05FF657
0 HYPE
237277182026-01-05 5:55:0526 days ago1767592505
0xD1A252b2...8b05FF657
0 HYPE
237277182026-01-05 5:55:0526 days ago1767592505
0xD1A252b2...8b05FF657
0 HYPE
237277182026-01-05 5:55:0526 days ago1767592505
0xD1A252b2...8b05FF657
0 HYPE
237277182026-01-05 5:55:0526 days ago1767592505
0xD1A252b2...8b05FF657
0 HYPE
228928022025-12-26 17:46:3536 days ago1766771195
0xD1A252b2...8b05FF657
0 HYPE
228928022025-12-26 17:46:3536 days ago1766771195
0xD1A252b2...8b05FF657
0 HYPE
228928022025-12-26 17:46:3536 days ago1766771195
0xD1A252b2...8b05FF657
0 HYPE
228928022025-12-26 17:46:3536 days ago1766771195
0xD1A252b2...8b05FF657
0 HYPE
228928022025-12-26 17:46:3536 days ago1766771195
0xD1A252b2...8b05FF657
0 HYPE
228242982025-12-25 23:03:3436 days ago1766703814
0xD1A252b2...8b05FF657
0 HYPE
228242982025-12-25 23:03:3436 days ago1766703814
0xD1A252b2...8b05FF657
0 HYPE
228242982025-12-25 23:03:3436 days ago1766703814
0xD1A252b2...8b05FF657
0 HYPE
228242982025-12-25 23:03:3436 days ago1766703814
0xD1A252b2...8b05FF657
0 HYPE
228242982025-12-25 23:03:3436 days ago1766703814
0xD1A252b2...8b05FF657
0 HYPE
View All Internal Transactions
Cross-Chain Transactions
Loading...
Loading

Contract Source Code Verified (Exact Match)

Contract Name:
stkUSDXLBouncer

Compiler Version
v0.8.28+commit.7893614a

Optimization Enabled:
No with 200 runs

Other Settings:
cancun EvmVersion
// SPDX-License-Identifier: UNLICENSED
pragma solidity ^0.8.28;

import {Owned} from "lib/solmate/src/auth/Owned.sol";
import {ERC20} from "lib/solmate/src/tokens/ERC20.sol";
import {SafeTransferLib} from "lib/solmate/src/utils/SafeTransferLib.sol";

interface ITellerWithMultiAssetSupport {
    function authority() external view returns (address);
    function vault() external view returns (address);
    function deposit(address token, uint256 amount, uint256 minSharesOut) external returns (uint256 sharesOut);
}

contract stkUSDXLBouncer is Owned {

    using SafeTransferLib for ERC20;

    ITellerWithMultiAssetSupport public immutable teller;
    ERC20 public immutable usdxl;
    ERC20 public immutable vault;
    uint256 public depositLimit;


    error DepositLimitExceeded();
    error InvalidVault();

    event SetDepositLimit(uint256 newLimit);
    constructor(address _teller, address _usdxl, uint256 _depositLimit) Owned(msg.sender) {
        teller = ITellerWithMultiAssetSupport(_teller);
        usdxl = ERC20(_usdxl);
        vault = ERC20(teller.vault());
        if (address(vault) == address(0)) revert InvalidVault();
        depositLimit = _depositLimit; 
    }

    function setDepositLimit(uint256 _newLimit) external onlyOwner {
        depositLimit = _newLimit;
        emit SetDepositLimit(_newLimit);
    }
    modifier checkDepositLimit(uint256 _amount) {
        // Check that deposit is within limit
        if (usdxl.balanceOf(address(vault)) + _amount > depositLimit) revert DepositLimitExceeded();
        _;
    }

    function deposit(uint256 _amount, uint256 _minSharesOut) external checkDepositLimit(_amount) returns (uint256 sharesOut) {
        usdxl.safeTransferFrom(msg.sender, address(this), _amount);
        usdxl.safeApprove(address(vault), _amount);
        sharesOut = teller.deposit(address(usdxl), _amount, _minSharesOut);
        vault.safeTransfer(msg.sender, sharesOut);
    }

    function depositWithPermit(uint256 _amount, uint256 _deadline, uint8 _v, bytes32 _r, bytes32 _s, uint256 _minSharesOut) external checkDepositLimit(_amount) returns (uint256 sharesOut) {
        usdxl.permit(msg.sender, address(this), _amount, _deadline, _v, _r, _s);
        usdxl.safeTransferFrom(msg.sender, address(this), _amount);
        usdxl.safeApprove(address(vault), _amount);
        sharesOut = teller.deposit(address(usdxl), _amount, _minSharesOut);
        vault.safeTransfer(msg.sender, sharesOut);
    }
}

// SPDX-License-Identifier: AGPL-3.0-only
pragma solidity >=0.8.0;

/// @notice Simple single owner authorization mixin.
/// @author Solmate (https://github.com/transmissions11/solmate/blob/main/src/auth/Owned.sol)
abstract contract Owned {
    /*//////////////////////////////////////////////////////////////
                                 EVENTS
    //////////////////////////////////////////////////////////////*/

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

    /*//////////////////////////////////////////////////////////////
                            OWNERSHIP STORAGE
    //////////////////////////////////////////////////////////////*/

    address public owner;

    modifier onlyOwner() virtual {
        require(msg.sender == owner, "UNAUTHORIZED");

        _;
    }

    /*//////////////////////////////////////////////////////////////
                               CONSTRUCTOR
    //////////////////////////////////////////////////////////////*/

    constructor(address _owner) {
        owner = _owner;

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

    /*//////////////////////////////////////////////////////////////
                             OWNERSHIP LOGIC
    //////////////////////////////////////////////////////////////*/

    function transferOwnership(address newOwner) public virtual onlyOwner {
        owner = newOwner;

        emit OwnershipTransferred(msg.sender, newOwner);
    }
}

// SPDX-License-Identifier: AGPL-3.0-only
pragma solidity >=0.8.0;

/// @notice Modern and gas efficient ERC20 + EIP-2612 implementation.
/// @author Solmate (https://github.com/transmissions11/solmate/blob/main/src/tokens/ERC20.sol)
/// @author Modified from Uniswap (https://github.com/Uniswap/uniswap-v2-core/blob/master/contracts/UniswapV2ERC20.sol)
/// @dev Do not manually set balances without updating totalSupply, as the sum of all user balances must not exceed it.
abstract contract ERC20 {
    /*//////////////////////////////////////////////////////////////
                                 EVENTS
    //////////////////////////////////////////////////////////////*/

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

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

    /*//////////////////////////////////////////////////////////////
                            METADATA STORAGE
    //////////////////////////////////////////////////////////////*/

    string public name;

    string public symbol;

    uint8 public immutable decimals;

    /*//////////////////////////////////////////////////////////////
                              ERC20 STORAGE
    //////////////////////////////////////////////////////////////*/

    uint256 public totalSupply;

    mapping(address => uint256) public balanceOf;

    mapping(address => mapping(address => uint256)) public allowance;

    /*//////////////////////////////////////////////////////////////
                            EIP-2612 STORAGE
    //////////////////////////////////////////////////////////////*/

    uint256 internal immutable INITIAL_CHAIN_ID;

    bytes32 internal immutable INITIAL_DOMAIN_SEPARATOR;

    mapping(address => uint256) public nonces;

    /*//////////////////////////////////////////////////////////////
                               CONSTRUCTOR
    //////////////////////////////////////////////////////////////*/

    constructor(
        string memory _name,
        string memory _symbol,
        uint8 _decimals
    ) {
        name = _name;
        symbol = _symbol;
        decimals = _decimals;

        INITIAL_CHAIN_ID = block.chainid;
        INITIAL_DOMAIN_SEPARATOR = computeDomainSeparator();
    }

    /*//////////////////////////////////////////////////////////////
                               ERC20 LOGIC
    //////////////////////////////////////////////////////////////*/

    function approve(address spender, uint256 amount) public virtual returns (bool) {
        allowance[msg.sender][spender] = amount;

        emit Approval(msg.sender, spender, amount);

        return true;
    }

    function transfer(address to, uint256 amount) public virtual returns (bool) {
        balanceOf[msg.sender] -= amount;

        // Cannot overflow because the sum of all user
        // balances can't exceed the max uint256 value.
        unchecked {
            balanceOf[to] += amount;
        }

        emit Transfer(msg.sender, to, amount);

        return true;
    }

    function transferFrom(
        address from,
        address to,
        uint256 amount
    ) public virtual returns (bool) {
        uint256 allowed = allowance[from][msg.sender]; // Saves gas for limited approvals.

        if (allowed != type(uint256).max) allowance[from][msg.sender] = allowed - amount;

        balanceOf[from] -= amount;

        // Cannot overflow because the sum of all user
        // balances can't exceed the max uint256 value.
        unchecked {
            balanceOf[to] += amount;
        }

        emit Transfer(from, to, amount);

        return true;
    }

    /*//////////////////////////////////////////////////////////////
                             EIP-2612 LOGIC
    //////////////////////////////////////////////////////////////*/

    function permit(
        address owner,
        address spender,
        uint256 value,
        uint256 deadline,
        uint8 v,
        bytes32 r,
        bytes32 s
    ) public virtual {
        require(deadline >= block.timestamp, "PERMIT_DEADLINE_EXPIRED");

        // Unchecked because the only math done is incrementing
        // the owner's nonce which cannot realistically overflow.
        unchecked {
            address recoveredAddress = ecrecover(
                keccak256(
                    abi.encodePacked(
                        "\x19\x01",
                        DOMAIN_SEPARATOR(),
                        keccak256(
                            abi.encode(
                                keccak256(
                                    "Permit(address owner,address spender,uint256 value,uint256 nonce,uint256 deadline)"
                                ),
                                owner,
                                spender,
                                value,
                                nonces[owner]++,
                                deadline
                            )
                        )
                    )
                ),
                v,
                r,
                s
            );

            require(recoveredAddress != address(0) && recoveredAddress == owner, "INVALID_SIGNER");

            allowance[recoveredAddress][spender] = value;
        }

        emit Approval(owner, spender, value);
    }

    function DOMAIN_SEPARATOR() public view virtual returns (bytes32) {
        return block.chainid == INITIAL_CHAIN_ID ? INITIAL_DOMAIN_SEPARATOR : computeDomainSeparator();
    }

    function computeDomainSeparator() internal view virtual returns (bytes32) {
        return
            keccak256(
                abi.encode(
                    keccak256("EIP712Domain(string name,string version,uint256 chainId,address verifyingContract)"),
                    keccak256(bytes(name)),
                    keccak256("1"),
                    block.chainid,
                    address(this)
                )
            );
    }

    /*//////////////////////////////////////////////////////////////
                        INTERNAL MINT/BURN LOGIC
    //////////////////////////////////////////////////////////////*/

    function _mint(address to, uint256 amount) internal virtual {
        totalSupply += amount;

        // Cannot overflow because the sum of all user
        // balances can't exceed the max uint256 value.
        unchecked {
            balanceOf[to] += amount;
        }

        emit Transfer(address(0), to, amount);
    }

    function _burn(address from, uint256 amount) internal virtual {
        balanceOf[from] -= amount;

        // Cannot underflow because a user's balance
        // will never be larger than the total supply.
        unchecked {
            totalSupply -= amount;
        }

        emit Transfer(from, address(0), amount);
    }
}

// SPDX-License-Identifier: AGPL-3.0-only
pragma solidity >=0.8.0;

import {ERC20} from "../tokens/ERC20.sol";

/// @notice Safe ETH and ERC20 transfer library that gracefully handles missing return values.
/// @author Solmate (https://github.com/transmissions11/solmate/blob/main/src/utils/SafeTransferLib.sol)
/// @dev Use with caution! Some functions in this library knowingly create dirty bits at the destination of the free memory pointer.
library SafeTransferLib {
    /*//////////////////////////////////////////////////////////////
                             ETH OPERATIONS
    //////////////////////////////////////////////////////////////*/

    function safeTransferETH(address to, uint256 amount) internal {
        bool success;

        /// @solidity memory-safe-assembly
        assembly {
            // Transfer the ETH and store if it succeeded or not.
            success := call(gas(), to, amount, 0, 0, 0, 0)
        }

        require(success, "ETH_TRANSFER_FAILED");
    }

    /*//////////////////////////////////////////////////////////////
                            ERC20 OPERATIONS
    //////////////////////////////////////////////////////////////*/

    function safeTransferFrom(
        ERC20 token,
        address from,
        address to,
        uint256 amount
    ) internal {
        bool success;

        /// @solidity memory-safe-assembly
        assembly {
            // Get a pointer to some free memory.
            let freeMemoryPointer := mload(0x40)

            // Write the abi-encoded calldata into memory, beginning with the function selector.
            mstore(freeMemoryPointer, 0x23b872dd00000000000000000000000000000000000000000000000000000000)
            mstore(add(freeMemoryPointer, 4), and(from, 0xffffffffffffffffffffffffffffffffffffffff)) // Append and mask the "from" argument.
            mstore(add(freeMemoryPointer, 36), and(to, 0xffffffffffffffffffffffffffffffffffffffff)) // Append and mask the "to" argument.
            mstore(add(freeMemoryPointer, 68), amount) // Append the "amount" argument. Masking not required as it's a full 32 byte type.

            // We use 100 because the length of our calldata totals up like so: 4 + 32 * 3.
            // We use 0 and 32 to copy up to 32 bytes of return data into the scratch space.
            success := call(gas(), token, 0, freeMemoryPointer, 100, 0, 32)

            // Set success to whether the call reverted, if not we check it either
            // returned exactly 1 (can't just be non-zero data), or had no return data and token has code.
            if and(iszero(and(eq(mload(0), 1), gt(returndatasize(), 31))), success) {
                success := iszero(or(iszero(extcodesize(token)), returndatasize())) 
            }
        }

        require(success, "TRANSFER_FROM_FAILED");
    }

    function safeTransfer(
        ERC20 token,
        address to,
        uint256 amount
    ) internal {
        bool success;

        /// @solidity memory-safe-assembly
        assembly {
            // Get a pointer to some free memory.
            let freeMemoryPointer := mload(0x40)

            // Write the abi-encoded calldata into memory, beginning with the function selector.
            mstore(freeMemoryPointer, 0xa9059cbb00000000000000000000000000000000000000000000000000000000)
            mstore(add(freeMemoryPointer, 4), and(to, 0xffffffffffffffffffffffffffffffffffffffff)) // Append and mask the "to" argument.
            mstore(add(freeMemoryPointer, 36), amount) // Append the "amount" argument. Masking not required as it's a full 32 byte type.

            // We use 68 because the length of our calldata totals up like so: 4 + 32 * 2.
            // We use 0 and 32 to copy up to 32 bytes of return data into the scratch space.
            success := call(gas(), token, 0, freeMemoryPointer, 68, 0, 32)

            // Set success to whether the call reverted, if not we check it either
            // returned exactly 1 (can't just be non-zero data), or had no return data and token has code.
            if and(iszero(and(eq(mload(0), 1), gt(returndatasize(), 31))), success) {
                success := iszero(or(iszero(extcodesize(token)), returndatasize())) 
            }
        }

        require(success, "TRANSFER_FAILED");
    }

    function safeApprove(
        ERC20 token,
        address to,
        uint256 amount
    ) internal {
        bool success;

        /// @solidity memory-safe-assembly
        assembly {
            // Get a pointer to some free memory.
            let freeMemoryPointer := mload(0x40)

            // Write the abi-encoded calldata into memory, beginning with the function selector.
            mstore(freeMemoryPointer, 0x095ea7b300000000000000000000000000000000000000000000000000000000)
            mstore(add(freeMemoryPointer, 4), and(to, 0xffffffffffffffffffffffffffffffffffffffff)) // Append and mask the "to" argument.
            mstore(add(freeMemoryPointer, 36), amount) // Append the "amount" argument. Masking not required as it's a full 32 byte type.

            // We use 68 because the length of our calldata totals up like so: 4 + 32 * 2.
            // We use 0 and 32 to copy up to 32 bytes of return data into the scratch space.
            success := call(gas(), token, 0, freeMemoryPointer, 68, 0, 32)

            // Set success to whether the call reverted, if not we check it either
            // returned exactly 1 (can't just be non-zero data), or had no return data and token has code.
            if and(iszero(and(eq(mload(0), 1), gt(returndatasize(), 31))), success) {
                success := iszero(or(iszero(extcodesize(token)), returndatasize())) 
            }
        }

        require(success, "APPROVE_FAILED");
    }
}

Settings
{
  "evmVersion": "cancun",
  "libraries": {},
  "metadata": {
    "appendCBOR": true,
    "bytecodeHash": "ipfs",
    "useLiteralContent": false
  },
  "optimizer": {
    "enabled": false,
    "runs": 200
  },
  "outputSelection": {
    "*": {
      "*": [
        "evm.bytecode",
        "evm.deployedBytecode",
        "devdoc",
        "userdoc",
        "metadata",
        "abi"
      ]
    }
  },
  "remappings": [
    "ds-test/=lib/solmate/lib/ds-test/src/",
    "forge-std/=lib/forge-std/src/",
    "solmate/=lib/solmate/src/"
  ],
  "viaIR": false
}

Contract Security Audit

Contract ABI

API
[{"inputs":[{"internalType":"address","name":"_teller","type":"address"},{"internalType":"address","name":"_usdxl","type":"address"},{"internalType":"uint256","name":"_depositLimit","type":"uint256"}],"stateMutability":"nonpayable","type":"constructor"},{"inputs":[],"name":"DepositLimitExceeded","type":"error"},{"inputs":[],"name":"InvalidVault","type":"error"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"user","type":"address"},{"indexed":true,"internalType":"address","name":"newOwner","type":"address"}],"name":"OwnershipTransferred","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"uint256","name":"newLimit","type":"uint256"}],"name":"SetDepositLimit","type":"event"},{"inputs":[{"internalType":"uint256","name":"_amount","type":"uint256"},{"internalType":"uint256","name":"_minSharesOut","type":"uint256"}],"name":"deposit","outputs":[{"internalType":"uint256","name":"sharesOut","type":"uint256"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"depositLimit","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"uint256","name":"_amount","type":"uint256"},{"internalType":"uint256","name":"_deadline","type":"uint256"},{"internalType":"uint8","name":"_v","type":"uint8"},{"internalType":"bytes32","name":"_r","type":"bytes32"},{"internalType":"bytes32","name":"_s","type":"bytes32"},{"internalType":"uint256","name":"_minSharesOut","type":"uint256"}],"name":"depositWithPermit","outputs":[{"internalType":"uint256","name":"sharesOut","type":"uint256"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"owner","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"uint256","name":"_newLimit","type":"uint256"}],"name":"setDepositLimit","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"teller","outputs":[{"internalType":"contract ITellerWithMultiAssetSupport","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"newOwner","type":"address"}],"name":"transferOwnership","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"usdxl","outputs":[{"internalType":"contract ERC20","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"vault","outputs":[{"internalType":"contract ERC20","name":"","type":"address"}],"stateMutability":"view","type":"function"}]

60e060405234801561000f575f5ffd5b5060405161170e38038061170e833981810160405281019061003191906102dd565b33805f5f6101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055508073ffffffffffffffffffffffffffffffffffffffff165f73ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a3508273ffffffffffffffffffffffffffffffffffffffff1660808173ffffffffffffffffffffffffffffffffffffffff16815250508173ffffffffffffffffffffffffffffffffffffffff1660a08173ffffffffffffffffffffffffffffffffffffffff168152505060805173ffffffffffffffffffffffffffffffffffffffff1663fbfa77cf6040518163ffffffff1660e01b8152600401602060405180830381865afa15801561017f573d5f5f3e3d5ffd5b505050506040513d601f19601f820116820180604052508101906101a3919061032d565b73ffffffffffffffffffffffffffffffffffffffff1660c08173ffffffffffffffffffffffffffffffffffffffff16815250505f73ffffffffffffffffffffffffffffffffffffffff1660c05173ffffffffffffffffffffffffffffffffffffffff160361023d576040517fd03a632000000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b80600181905550505050610358565b5f5ffd5b5f73ffffffffffffffffffffffffffffffffffffffff82169050919050565b5f61027982610250565b9050919050565b6102898161026f565b8114610293575f5ffd5b50565b5f815190506102a481610280565b92915050565b5f819050919050565b6102bc816102aa565b81146102c6575f5ffd5b50565b5f815190506102d7816102b3565b92915050565b5f5f5f606084860312156102f4576102f361024c565b5b5f61030186828701610296565b935050602061031286828701610296565b9250506040610323868287016102c9565b9150509250925092565b5f602082840312156103425761034161024c565b5b5f61034f84828501610296565b91505092915050565b60805160a05160c0516113156103f95f395f8181610342015281816104500152818161057c0152818161060b015281816107ab015281816108d70152610a5801525f81816101c5015281816103060152818161040601528181610472015281816104f4015281816105cf015281816106c901528181610761015281816107cd015261084f01525f81816101e9015281816104b8015261081301526113155ff3fe608060405234801561000f575f5ffd5b5060043610610091575f3560e01c8063e2bbb15811610064578063e2bbb1581461010b578063e8b07ab71461013b578063ecf708581461016b578063f2fde38b14610189578063fbfa77cf146101a557610091565b806335bb300c1461009557806357edab4e146100b35780638da5cb5b146100d1578063bdc8144b146100ef575b5f5ffd5b61009d6101c3565b6040516100aa9190610d36565b60405180910390f35b6100bb6101e7565b6040516100c89190610d6f565b60405180910390f35b6100d961020b565b6040516100e69190610da8565b60405180910390f35b61010960048036038101906101049190610df8565b61022f565b005b61012560048036038101906101209190610e23565b6102fe565b6040516101329190610e70565b60405180910390f35b61015560048036038101906101509190610ef2565b6105c7565b6040516101629190610e70565b60405180910390f35b610173610926565b6040516101809190610e70565b60405180910390f35b6101a3600480360381019061019e9190610fa5565b61092c565b005b6101ad610a56565b6040516101ba9190610d36565b60405180910390f35b7f000000000000000000000000000000000000000000000000000000000000000081565b7f000000000000000000000000000000000000000000000000000000000000000081565b5f5f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b5f5f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff16146102bd576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016102b49061102a565b60405180910390fd5b806001819055507f854df3eb95564502c8bc871ebdd15310ee26270f955f6c6bd8cea68e75045bc0816040516102f39190610e70565b60405180910390a150565b5f82600154817f000000000000000000000000000000000000000000000000000000000000000073ffffffffffffffffffffffffffffffffffffffff166370a082317f00000000000000000000000000000000000000000000000000000000000000006040518263ffffffff1660e01b815260040161037d9190610da8565b602060405180830381865afa158015610398573d5f5f3e3d5ffd5b505050506040513d601f19601f820116820180604052508101906103bc919061105c565b6103c691906110b4565b11156103fe576040517f6adf7e2800000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b61044b3330867f000000000000000000000000000000000000000000000000000000000000000073ffffffffffffffffffffffffffffffffffffffff16610a7a909392919063ffffffff16565b6104b67f0000000000000000000000000000000000000000000000000000000000000000857f000000000000000000000000000000000000000000000000000000000000000073ffffffffffffffffffffffffffffffffffffffff16610b4e9092919063ffffffff16565b7f000000000000000000000000000000000000000000000000000000000000000073ffffffffffffffffffffffffffffffffffffffff16630efe6a8b7f000000000000000000000000000000000000000000000000000000000000000086866040518463ffffffff1660e01b8152600401610533939291906110e7565b6020604051808303815f875af115801561054f573d5f5f3e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610573919061105c565b91506105c033837f000000000000000000000000000000000000000000000000000000000000000073ffffffffffffffffffffffffffffffffffffffff16610c059092919063ffffffff16565b5092915050565b5f86600154817f000000000000000000000000000000000000000000000000000000000000000073ffffffffffffffffffffffffffffffffffffffff166370a082317f00000000000000000000000000000000000000000000000000000000000000006040518263ffffffff1660e01b81526004016106469190610da8565b602060405180830381865afa158015610661573d5f5f3e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610685919061105c565b61068f91906110b4565b11156106c7576040517f6adf7e2800000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b7f000000000000000000000000000000000000000000000000000000000000000073ffffffffffffffffffffffffffffffffffffffff1663d505accf33308b8b8b8b8b6040518863ffffffff1660e01b815260040161072c979695949392919061113a565b5f604051808303815f87803b158015610743575f5ffd5b505af1158015610755573d5f5f3e3d5ffd5b505050506107a633308a7f000000000000000000000000000000000000000000000000000000000000000073ffffffffffffffffffffffffffffffffffffffff16610a7a909392919063ffffffff16565b6108117f0000000000000000000000000000000000000000000000000000000000000000897f000000000000000000000000000000000000000000000000000000000000000073ffffffffffffffffffffffffffffffffffffffff16610b4e9092919063ffffffff16565b7f000000000000000000000000000000000000000000000000000000000000000073ffffffffffffffffffffffffffffffffffffffff16630efe6a8b7f00000000000000000000000000000000000000000000000000000000000000008a866040518463ffffffff1660e01b815260040161088e939291906110e7565b6020604051808303815f875af11580156108aa573d5f5f3e3d5ffd5b505050506040513d601f19601f820116820180604052508101906108ce919061105c565b915061091b33837f000000000000000000000000000000000000000000000000000000000000000073ffffffffffffffffffffffffffffffffffffffff16610c059092919063ffffffff16565b509695505050505050565b60015481565b5f5f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff16146109ba576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016109b19061102a565b60405180910390fd5b805f5f6101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055508073ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a350565b7f000000000000000000000000000000000000000000000000000000000000000081565b5f6040517f23b872dd00000000000000000000000000000000000000000000000000000000815273ffffffffffffffffffffffffffffffffffffffff8516600482015273ffffffffffffffffffffffffffffffffffffffff8416602482015282604482015260205f6064835f8a5af1915081601f3d1160015f511416151615610b06573d863b15171591505b5080610b47576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610b3e906111f1565b60405180910390fd5b5050505050565b5f6040517f095ea7b300000000000000000000000000000000000000000000000000000000815273ffffffffffffffffffffffffffffffffffffffff8416600482015282602482015260205f6044835f895af1915081601f3d1160015f511416151615610bbe573d853b15171591505b5080610bff576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610bf690611259565b60405180910390fd5b50505050565b5f6040517fa9059cbb00000000000000000000000000000000000000000000000000000000815273ffffffffffffffffffffffffffffffffffffffff8416600482015282602482015260205f6044835f895af1915081601f3d1160015f511416151615610c75573d853b15171591505b5080610cb6576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610cad906112c1565b60405180910390fd5b50505050565b5f73ffffffffffffffffffffffffffffffffffffffff82169050919050565b5f819050919050565b5f610cfe610cf9610cf484610cbc565b610cdb565b610cbc565b9050919050565b5f610d0f82610ce4565b9050919050565b5f610d2082610d05565b9050919050565b610d3081610d16565b82525050565b5f602082019050610d495f830184610d27565b92915050565b5f610d5982610d05565b9050919050565b610d6981610d4f565b82525050565b5f602082019050610d825f830184610d60565b92915050565b5f610d9282610cbc565b9050919050565b610da281610d88565b82525050565b5f602082019050610dbb5f830184610d99565b92915050565b5f5ffd5b5f819050919050565b610dd781610dc5565b8114610de1575f5ffd5b50565b5f81359050610df281610dce565b92915050565b5f60208284031215610e0d57610e0c610dc1565b5b5f610e1a84828501610de4565b91505092915050565b5f5f60408385031215610e3957610e38610dc1565b5b5f610e4685828601610de4565b9250506020610e5785828601610de4565b9150509250929050565b610e6a81610dc5565b82525050565b5f602082019050610e835f830184610e61565b92915050565b5f60ff82169050919050565b610e9e81610e89565b8114610ea8575f5ffd5b50565b5f81359050610eb981610e95565b92915050565b5f819050919050565b610ed181610ebf565b8114610edb575f5ffd5b50565b5f81359050610eec81610ec8565b92915050565b5f5f5f5f5f5f60c08789031215610f0c57610f0b610dc1565b5b5f610f1989828a01610de4565b9650506020610f2a89828a01610de4565b9550506040610f3b89828a01610eab565b9450506060610f4c89828a01610ede565b9350506080610f5d89828a01610ede565b92505060a0610f6e89828a01610de4565b9150509295509295509295565b610f8481610d88565b8114610f8e575f5ffd5b50565b5f81359050610f9f81610f7b565b92915050565b5f60208284031215610fba57610fb9610dc1565b5b5f610fc784828501610f91565b91505092915050565b5f82825260208201905092915050565b7f554e415554484f52495a454400000000000000000000000000000000000000005f82015250565b5f611014600c83610fd0565b915061101f82610fe0565b602082019050919050565b5f6020820190508181035f83015261104181611008565b9050919050565b5f8151905061105681610dce565b92915050565b5f6020828403121561107157611070610dc1565b5b5f61107e84828501611048565b91505092915050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52601160045260245ffd5b5f6110be82610dc5565b91506110c983610dc5565b92508282019050808211156110e1576110e0611087565b5b92915050565b5f6060820190506110fa5f830186610d99565b6111076020830185610e61565b6111146040830184610e61565b949350505050565b61112581610e89565b82525050565b61113481610ebf565b82525050565b5f60e08201905061114d5f83018a610d99565b61115a6020830189610d99565b6111676040830188610e61565b6111746060830187610e61565b611181608083018661111c565b61118e60a083018561112b565b61119b60c083018461112b565b98975050505050505050565b7f5452414e534645525f46524f4d5f4641494c45440000000000000000000000005f82015250565b5f6111db601483610fd0565b91506111e6826111a7565b602082019050919050565b5f6020820190508181035f830152611208816111cf565b9050919050565b7f415050524f56455f4641494c45440000000000000000000000000000000000005f82015250565b5f611243600e83610fd0565b915061124e8261120f565b602082019050919050565b5f6020820190508181035f83015261127081611237565b9050919050565b7f5452414e534645525f4641494c454400000000000000000000000000000000005f82015250565b5f6112ab600f83610fd0565b91506112b682611277565b602082019050919050565b5f6020820190508181035f8301526112d88161129f565b905091905056fea2646970667358221220fddd86b361d102359b1cc54ad8472edaf5f95c042dea75ef853eafd883def4ac64736f6c634300081c00330000000000000000000000009874a7f2c7b970be421383590e314efd324df188000000000000000000000000ca79db4b49f608ef54a5cb813fbed3a6387bc64500000000000000000000000000000000000000000000152d02c7e14af6800000

Deployed Bytecode

0x608060405234801561000f575f5ffd5b5060043610610091575f3560e01c8063e2bbb15811610064578063e2bbb1581461010b578063e8b07ab71461013b578063ecf708581461016b578063f2fde38b14610189578063fbfa77cf146101a557610091565b806335bb300c1461009557806357edab4e146100b35780638da5cb5b146100d1578063bdc8144b146100ef575b5f5ffd5b61009d6101c3565b6040516100aa9190610d36565b60405180910390f35b6100bb6101e7565b6040516100c89190610d6f565b60405180910390f35b6100d961020b565b6040516100e69190610da8565b60405180910390f35b61010960048036038101906101049190610df8565b61022f565b005b61012560048036038101906101209190610e23565b6102fe565b6040516101329190610e70565b60405180910390f35b61015560048036038101906101509190610ef2565b6105c7565b6040516101629190610e70565b60405180910390f35b610173610926565b6040516101809190610e70565b60405180910390f35b6101a3600480360381019061019e9190610fa5565b61092c565b005b6101ad610a56565b6040516101ba9190610d36565b60405180910390f35b7f000000000000000000000000ca79db4b49f608ef54a5cb813fbed3a6387bc64581565b7f0000000000000000000000009874a7f2c7b970be421383590e314efd324df18881565b5f5f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b5f5f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff16146102bd576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016102b49061102a565b60405180910390fd5b806001819055507f854df3eb95564502c8bc871ebdd15310ee26270f955f6c6bd8cea68e75045bc0816040516102f39190610e70565b60405180910390a150565b5f82600154817f000000000000000000000000ca79db4b49f608ef54a5cb813fbed3a6387bc64573ffffffffffffffffffffffffffffffffffffffff166370a082317f0000000000000000000000009992ed1214ea2bc91b0587b37c3e03d5e2a242c16040518263ffffffff1660e01b815260040161037d9190610da8565b602060405180830381865afa158015610398573d5f5f3e3d5ffd5b505050506040513d601f19601f820116820180604052508101906103bc919061105c565b6103c691906110b4565b11156103fe576040517f6adf7e2800000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b61044b3330867f000000000000000000000000ca79db4b49f608ef54a5cb813fbed3a6387bc64573ffffffffffffffffffffffffffffffffffffffff16610a7a909392919063ffffffff16565b6104b67f0000000000000000000000009992ed1214ea2bc91b0587b37c3e03d5e2a242c1857f000000000000000000000000ca79db4b49f608ef54a5cb813fbed3a6387bc64573ffffffffffffffffffffffffffffffffffffffff16610b4e9092919063ffffffff16565b7f0000000000000000000000009874a7f2c7b970be421383590e314efd324df18873ffffffffffffffffffffffffffffffffffffffff16630efe6a8b7f000000000000000000000000ca79db4b49f608ef54a5cb813fbed3a6387bc64586866040518463ffffffff1660e01b8152600401610533939291906110e7565b6020604051808303815f875af115801561054f573d5f5f3e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610573919061105c565b91506105c033837f0000000000000000000000009992ed1214ea2bc91b0587b37c3e03d5e2a242c173ffffffffffffffffffffffffffffffffffffffff16610c059092919063ffffffff16565b5092915050565b5f86600154817f000000000000000000000000ca79db4b49f608ef54a5cb813fbed3a6387bc64573ffffffffffffffffffffffffffffffffffffffff166370a082317f0000000000000000000000009992ed1214ea2bc91b0587b37c3e03d5e2a242c16040518263ffffffff1660e01b81526004016106469190610da8565b602060405180830381865afa158015610661573d5f5f3e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610685919061105c565b61068f91906110b4565b11156106c7576040517f6adf7e2800000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b7f000000000000000000000000ca79db4b49f608ef54a5cb813fbed3a6387bc64573ffffffffffffffffffffffffffffffffffffffff1663d505accf33308b8b8b8b8b6040518863ffffffff1660e01b815260040161072c979695949392919061113a565b5f604051808303815f87803b158015610743575f5ffd5b505af1158015610755573d5f5f3e3d5ffd5b505050506107a633308a7f000000000000000000000000ca79db4b49f608ef54a5cb813fbed3a6387bc64573ffffffffffffffffffffffffffffffffffffffff16610a7a909392919063ffffffff16565b6108117f0000000000000000000000009992ed1214ea2bc91b0587b37c3e03d5e2a242c1897f000000000000000000000000ca79db4b49f608ef54a5cb813fbed3a6387bc64573ffffffffffffffffffffffffffffffffffffffff16610b4e9092919063ffffffff16565b7f0000000000000000000000009874a7f2c7b970be421383590e314efd324df18873ffffffffffffffffffffffffffffffffffffffff16630efe6a8b7f000000000000000000000000ca79db4b49f608ef54a5cb813fbed3a6387bc6458a866040518463ffffffff1660e01b815260040161088e939291906110e7565b6020604051808303815f875af11580156108aa573d5f5f3e3d5ffd5b505050506040513d601f19601f820116820180604052508101906108ce919061105c565b915061091b33837f0000000000000000000000009992ed1214ea2bc91b0587b37c3e03d5e2a242c173ffffffffffffffffffffffffffffffffffffffff16610c059092919063ffffffff16565b509695505050505050565b60015481565b5f5f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff16146109ba576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016109b19061102a565b60405180910390fd5b805f5f6101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055508073ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a350565b7f0000000000000000000000009992ed1214ea2bc91b0587b37c3e03d5e2a242c181565b5f6040517f23b872dd00000000000000000000000000000000000000000000000000000000815273ffffffffffffffffffffffffffffffffffffffff8516600482015273ffffffffffffffffffffffffffffffffffffffff8416602482015282604482015260205f6064835f8a5af1915081601f3d1160015f511416151615610b06573d863b15171591505b5080610b47576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610b3e906111f1565b60405180910390fd5b5050505050565b5f6040517f095ea7b300000000000000000000000000000000000000000000000000000000815273ffffffffffffffffffffffffffffffffffffffff8416600482015282602482015260205f6044835f895af1915081601f3d1160015f511416151615610bbe573d853b15171591505b5080610bff576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610bf690611259565b60405180910390fd5b50505050565b5f6040517fa9059cbb00000000000000000000000000000000000000000000000000000000815273ffffffffffffffffffffffffffffffffffffffff8416600482015282602482015260205f6044835f895af1915081601f3d1160015f511416151615610c75573d853b15171591505b5080610cb6576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610cad906112c1565b60405180910390fd5b50505050565b5f73ffffffffffffffffffffffffffffffffffffffff82169050919050565b5f819050919050565b5f610cfe610cf9610cf484610cbc565b610cdb565b610cbc565b9050919050565b5f610d0f82610ce4565b9050919050565b5f610d2082610d05565b9050919050565b610d3081610d16565b82525050565b5f602082019050610d495f830184610d27565b92915050565b5f610d5982610d05565b9050919050565b610d6981610d4f565b82525050565b5f602082019050610d825f830184610d60565b92915050565b5f610d9282610cbc565b9050919050565b610da281610d88565b82525050565b5f602082019050610dbb5f830184610d99565b92915050565b5f5ffd5b5f819050919050565b610dd781610dc5565b8114610de1575f5ffd5b50565b5f81359050610df281610dce565b92915050565b5f60208284031215610e0d57610e0c610dc1565b5b5f610e1a84828501610de4565b91505092915050565b5f5f60408385031215610e3957610e38610dc1565b5b5f610e4685828601610de4565b9250506020610e5785828601610de4565b9150509250929050565b610e6a81610dc5565b82525050565b5f602082019050610e835f830184610e61565b92915050565b5f60ff82169050919050565b610e9e81610e89565b8114610ea8575f5ffd5b50565b5f81359050610eb981610e95565b92915050565b5f819050919050565b610ed181610ebf565b8114610edb575f5ffd5b50565b5f81359050610eec81610ec8565b92915050565b5f5f5f5f5f5f60c08789031215610f0c57610f0b610dc1565b5b5f610f1989828a01610de4565b9650506020610f2a89828a01610de4565b9550506040610f3b89828a01610eab565b9450506060610f4c89828a01610ede565b9350506080610f5d89828a01610ede565b92505060a0610f6e89828a01610de4565b9150509295509295509295565b610f8481610d88565b8114610f8e575f5ffd5b50565b5f81359050610f9f81610f7b565b92915050565b5f60208284031215610fba57610fb9610dc1565b5b5f610fc784828501610f91565b91505092915050565b5f82825260208201905092915050565b7f554e415554484f52495a454400000000000000000000000000000000000000005f82015250565b5f611014600c83610fd0565b915061101f82610fe0565b602082019050919050565b5f6020820190508181035f83015261104181611008565b9050919050565b5f8151905061105681610dce565b92915050565b5f6020828403121561107157611070610dc1565b5b5f61107e84828501611048565b91505092915050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52601160045260245ffd5b5f6110be82610dc5565b91506110c983610dc5565b92508282019050808211156110e1576110e0611087565b5b92915050565b5f6060820190506110fa5f830186610d99565b6111076020830185610e61565b6111146040830184610e61565b949350505050565b61112581610e89565b82525050565b61113481610ebf565b82525050565b5f60e08201905061114d5f83018a610d99565b61115a6020830189610d99565b6111676040830188610e61565b6111746060830187610e61565b611181608083018661111c565b61118e60a083018561112b565b61119b60c083018461112b565b98975050505050505050565b7f5452414e534645525f46524f4d5f4641494c45440000000000000000000000005f82015250565b5f6111db601483610fd0565b91506111e6826111a7565b602082019050919050565b5f6020820190508181035f830152611208816111cf565b9050919050565b7f415050524f56455f4641494c45440000000000000000000000000000000000005f82015250565b5f611243600e83610fd0565b915061124e8261120f565b602082019050919050565b5f6020820190508181035f83015261127081611237565b9050919050565b7f5452414e534645525f4641494c454400000000000000000000000000000000005f82015250565b5f6112ab600f83610fd0565b91506112b682611277565b602082019050919050565b5f6020820190508181035f8301526112d88161129f565b905091905056fea2646970667358221220fddd86b361d102359b1cc54ad8472edaf5f95c042dea75ef853eafd883def4ac64736f6c634300081c0033

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

0000000000000000000000009874a7f2c7b970be421383590e314efd324df188000000000000000000000000ca79db4b49f608ef54a5cb813fbed3a6387bc64500000000000000000000000000000000000000000000152d02c7e14af6800000

-----Decoded View---------------
Arg [0] : _teller (address): 0x9874a7f2C7b970Be421383590e314EFD324df188
Arg [1] : _usdxl (address): 0xca79db4B49f608eF54a5CB813FbEd3a6387bC645
Arg [2] : _depositLimit (uint256): 100000000000000000000000

-----Encoded View---------------
3 Constructor Arguments found :
Arg [0] : 0000000000000000000000009874a7f2c7b970be421383590e314efd324df188
Arg [1] : 000000000000000000000000ca79db4b49f608ef54a5cb813fbed3a6387bc645
Arg [2] : 00000000000000000000000000000000000000000000152d02c7e14af6800000


Block Transaction Gas Used Reward
view all blocks ##produced##

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

Validator Index Block Amount
View All Withdrawals

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

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