ETH Price: $2,950.72 (-0.48%)

Contract

0x0A9f824C05A74F577A536A8A0c673183a872Dff4
Transaction Hash
Block
From
To
Swap And Bridge2723054632024-11-08 11:35:09442 days ago1731065709IN
Layer Zero: Swappable Bridge
0.00111424 ETH0.0000020.01
Swap And Bridge2723050432024-11-08 11:33:23442 days ago1731065603IN
Layer Zero: Swappable Bridge
0.0011629 ETH0.000001990.01
Swap And Bridge2723043982024-11-08 11:30:43442 days ago1731065443IN
Layer Zero: Swappable Bridge
0.00116741 ETH0.0000020.01
Swap And Bridge2279506162024-07-02 10:19:18571 days ago1719915558IN
Layer Zero: Swappable Bridge
0.00028578 ETH0.000004130.01
Swap And Bridge2108607562024-05-13 14:17:04621 days ago1715609824IN
Layer Zero: Swappable Bridge
0.00018136 ETH0.000004550.01
Swap And Bridge2013435192024-04-15 17:23:18648 days ago1713201798IN
Layer Zero: Swappable Bridge
0.00058663 ETH0.000006750.015421
Swap And Bridge1973773452024-04-04 4:08:40660 days ago1712203720IN
Layer Zero: Swappable Bridge
0.00042664 ETH0.000004540.01
Swap And Bridge1953624902024-03-29 7:29:02666 days ago1711697342IN
Layer Zero: Swappable Bridge
0.00012703 ETH0.000005430.01
Swap And Bridge1953624872024-03-29 7:29:02666 days ago1711697342IN
Layer Zero: Swappable Bridge
0.00017903 ETH0.000005440.01
Swap And Bridge1953624852024-03-29 7:29:01666 days ago1711697341IN
Layer Zero: Swappable Bridge
0.00018003 ETH0.000005460.01
Swap And Bridge1917204372024-03-18 17:36:15676 days ago1710783375IN
Layer Zero: Swappable Bridge
0.0000977 ETH0.000045460.1
Swap And Bridge1917169202024-03-18 17:21:28676 days ago1710782488IN
Layer Zero: Swappable Bridge
0.00007393 ETH0.000042310.1
Swap And Bridge1917139182024-03-18 17:08:56676 days ago1710781736IN
Layer Zero: Swappable Bridge
0.00005683 ETH0.000064920.16474
Swap And Bridge1917131762024-03-18 17:05:50676 days ago1710781550IN
Layer Zero: Swappable Bridge
0.00004651 ETH0.000043090.1
Swap And Bridge1917130122024-03-18 17:05:11676 days ago1710781511IN
Layer Zero: Swappable Bridge
0.00006463 ETH0.00004470.1
Swap And Bridge1917105182024-03-18 16:54:44676 days ago1710780884IN
Layer Zero: Swappable Bridge
0.00007593 ETH0.000043310.1
Swap And Bridge1917084672024-03-18 16:46:09676 days ago1710780369IN
Layer Zero: Swappable Bridge
0.00006203 ETH0.00004680.1
Swap And Bridge1917075832024-03-18 16:42:26676 days ago1710780146IN
Layer Zero: Swappable Bridge
0.00005933 ETH0.000045910.1
Swap And Bridge1917067332024-03-18 16:38:53676 days ago1710779933IN
Layer Zero: Swappable Bridge
0.00005223 ETH0.000046880.1
Swap And Bridge1917051112024-03-18 16:32:02676 days ago1710779522IN
Layer Zero: Swappable Bridge
0.00007363 ETH0.000043320.1
Swap And Bridge1917014762024-03-18 16:16:43677 days ago1710778603IN
Layer Zero: Swappable Bridge
0.00007303 ETH0.000044680.1
Swap And Bridge1916893732024-03-18 15:25:58677 days ago1710775558IN
Layer Zero: Swappable Bridge
0.00015738 ETH0.000045650.1
Swap And Bridge1916689532024-03-18 14:00:53677 days ago1710770453IN
Layer Zero: Swappable Bridge
0.000288 ETH0.000045530.1
Swap And Bridge1916685982024-03-18 13:59:25677 days ago1710770365IN
Layer Zero: Swappable Bridge
0.00021218 ETH0.000047590.1
Swap And Bridge1916682662024-03-18 13:58:02677 days ago1710770282IN
Layer Zero: Swappable Bridge
0.00019102 ETH0.00004840.1
View all transactions

Latest 25 internal transactions (View All)

Parent Transaction Hash Block From To
2723054632024-11-08 11:35:09442 days ago1731065709
Layer Zero: Swappable Bridge
0.00011424 ETH
2723050432024-11-08 11:33:23442 days ago1731065603
Layer Zero: Swappable Bridge
0.0001629 ETH
2279506162024-07-02 10:19:18571 days ago1719915558
Layer Zero: Swappable Bridge
0.00016278 ETH
2279506162024-07-02 10:19:18571 days ago1719915558
Layer Zero: Swappable Bridge
0.000123 ETH
2108607562024-05-13 14:17:04621 days ago1715609824
Layer Zero: Swappable Bridge
0.00008136 ETH
2108607562024-05-13 14:17:04621 days ago1715609824
Layer Zero: Swappable Bridge
0.0001 ETH
2013435192024-04-15 17:23:18648 days ago1713201798
Layer Zero: Swappable Bridge
0.00008663 ETH
2013435192024-04-15 17:23:18648 days ago1713201798
Layer Zero: Swappable Bridge
0.0005 ETH
1973773452024-04-04 4:08:40660 days ago1712203720
Layer Zero: Swappable Bridge
0.00008664 ETH
1973773452024-04-04 4:08:40660 days ago1712203720
Layer Zero: Swappable Bridge
0.00034 ETH
1953624902024-03-29 7:29:02666 days ago1711697342
Layer Zero: Swappable Bridge
0.00010403 ETH
1953624902024-03-29 7:29:02666 days ago1711697342
Layer Zero: Swappable Bridge
0.000023 ETH
1953624872024-03-29 7:29:02666 days ago1711697342
Layer Zero: Swappable Bridge
0.00010403 ETH
1953624872024-03-29 7:29:02666 days ago1711697342
Layer Zero: Swappable Bridge
0.000075 ETH
1953624852024-03-29 7:29:01666 days ago1711697341
Layer Zero: Swappable Bridge
0.00010403 ETH
1953624852024-03-29 7:29:01666 days ago1711697341
Layer Zero: Swappable Bridge
0.000076 ETH
1917204372024-03-18 17:36:15676 days ago1710783375
Layer Zero: Swappable Bridge
0.00008306 ETH
1917204372024-03-18 17:36:15676 days ago1710783375
Layer Zero: Swappable Bridge
0.00001464 ETH
1917169202024-03-18 17:21:28676 days ago1710782488
Layer Zero: Swappable Bridge
0.00004153 ETH
1917169202024-03-18 17:21:28676 days ago1710782488
Layer Zero: Swappable Bridge
0.0000324 ETH
1917139182024-03-18 17:08:56676 days ago1710781736
Layer Zero: Swappable Bridge
0.00004153 ETH
1917139182024-03-18 17:08:56676 days ago1710781736
Layer Zero: Swappable Bridge
0.0000153 ETH
1917131762024-03-18 17:05:50676 days ago1710781550
Layer Zero: Swappable Bridge
0.00003045 ETH
1917131762024-03-18 17:05:50676 days ago1710781550
Layer Zero: Swappable Bridge
0.00001606 ETH
1917130122024-03-18 17:05:11676 days ago1710781511
Layer Zero: Swappable Bridge
0.00004153 ETH
View All Internal Transactions

Cross-Chain Transactions
Loading...
Loading

Contract Source Code Verified (Exact Match)

Contract Name:
SwappableBridgeUniswapV3

Compiler Version
v0.8.17+commit.8df45f5f

Optimization Enabled:
Yes with 200 runs

Other Settings:
default evmVersion
// SPDX-License-Identifier: MIT
pragma solidity ^0.8.0;

import "@uniswap/v3-periphery/contracts/interfaces/ISwapRouter.sol";
import "@layerzerolabs/solidity-examples/contracts/token/oft/IOFTCore.sol";
import "./IWETH.sol";
import "./INativeOFT.sol";

contract SwappableBridgeUniswapV3 {    
    uint24 public constant poolFee = 3000; // 0.3%

    IWETH public immutable weth;
	IOFTCore public immutable oft;
    ISwapRouter public immutable swapRouter;

    constructor(address _weth, address _oft, address _swapRouter) {
        require(_weth != address(0), "SwappableBridge: invalid WETH address");
        require(_oft != address(0), "SwappableBridge: invalid OFT address");
        require(_swapRouter != address(0), "SwappableBridge: invalid Swap Router address");

        weth = IWETH(_weth);
        oft = IOFTCore(_oft);
        swapRouter = ISwapRouter(_swapRouter);
    }

    function swapAndBridge(uint amountIn, uint amountOutMin, uint16 dstChainId, address to, address payable refundAddress, address zroPaymentAddress, bytes calldata adapterParams) external payable {
        require(to != address(0), "SwappableBridge: invalid to address");
        require(msg.value >= amountIn, "SwappableBridge: not enough value sent");

        weth.deposit{value: amountIn}();
        weth.approve(address(swapRouter), amountIn);

        ISwapRouter.ExactInputSingleParams memory params =
            ISwapRouter.ExactInputSingleParams({
                tokenIn: address(weth),
                tokenOut: address(oft),
                fee: poolFee,
                recipient: address(this),
                deadline: block.timestamp,
                amountIn: amountIn,
                amountOutMinimum: amountOutMin,
                sqrtPriceLimitX96: 0
            });

        uint amountOut = swapRouter.exactInputSingle(params);
        oft.sendFrom{value: msg.value - amountIn}(address(this), dstChainId, abi.encodePacked(to), amountOut, refundAddress, zroPaymentAddress, adapterParams);
    }
}

// SPDX-License-Identifier: MIT

pragma solidity >=0.5.0;

import "@openzeppelin/contracts/utils/introspection/IERC165.sol";

/**
 * @dev Interface of the IOFT core standard
 */
interface IOFTCore is IERC165 {
    /**
     * @dev estimate send token `_tokenId` to (`_dstChainId`, `_toAddress`)
     * _dstChainId - L0 defined chain id to send tokens too
     * _toAddress - dynamic bytes array which contains the address to whom you are sending tokens to on the dstChain
     * _amount - amount of the tokens to transfer
     * _useZro - indicates to use zro to pay L0 fees
     * _adapterParam - flexible bytes array to indicate messaging adapter services in L0
     */
    function estimateSendFee(uint16 _dstChainId, bytes calldata _toAddress, uint _amount, bool _useZro, bytes calldata _adapterParams) external view returns (uint nativeFee, uint zroFee);

    /**
     * @dev send `_amount` amount of token to (`_dstChainId`, `_toAddress`) from `_from`
     * `_from` the owner of token
     * `_dstChainId` the destination chain identifier
     * `_toAddress` can be any size depending on the `dstChainId`.
     * `_amount` the quantity of tokens in wei
     * `_refundAddress` the address LayerZero refunds if too much message fee is sent
     * `_zroPaymentAddress` set to address(0x0) if not paying in ZRO (LayerZero Token)
     * `_adapterParams` is a flexible bytes array to indicate messaging adapter services
     */
    function sendFrom(address _from, uint16 _dstChainId, bytes calldata _toAddress, uint _amount, address payable _refundAddress, address _zroPaymentAddress, bytes calldata _adapterParams) external payable;

    /**
     * @dev returns the circulating amount of tokens on current chain
     */
    function circulatingSupply() external view returns (uint);

    /**
     * @dev returns the address of the ERC20 token
     */
    function token() external view returns (address);

    /**
     * @dev Emitted when `_amount` tokens are moved from the `_sender` to (`_dstChainId`, `_toAddress`)
     * `_nonce` is the outbound nonce
     */
    event SendToChain(uint16 indexed _dstChainId, address indexed _from, bytes _toAddress, uint _amount);

    /**
     * @dev Emitted when `_amount` tokens are received from `_srcChainId` into the `_toAddress` on the local chain.
     * `_nonce` is the inbound nonce.
     */
    event ReceiveFromChain(uint16 indexed _srcChainId, address indexed _to, uint _amount);

    event SetUseCustomAdapterParams(bool _useCustomAdapterParams);
}

// SPDX-License-Identifier: MIT
// OpenZeppelin Contracts v4.4.1 (utils/introspection/IERC165.sol)

pragma solidity ^0.8.0;

/**
 * @dev Interface of the ERC165 standard, as defined in the
 * https://eips.ethereum.org/EIPS/eip-165[EIP].
 *
 * Implementers can declare support of contract interfaces, which can then be
 * queried by others ({ERC165Checker}).
 *
 * For an implementation, see {ERC165}.
 */
interface IERC165 {
    /**
     * @dev Returns true if this contract implements the interface defined by
     * `interfaceId`. See the corresponding
     * https://eips.ethereum.org/EIPS/eip-165#how-interfaces-are-identified[EIP section]
     * to learn more about how these ids are created.
     *
     * This function call must use less than 30 000 gas.
     */
    function supportsInterface(bytes4 interfaceId) external view returns (bool);
}

// SPDX-License-Identifier: GPL-2.0-or-later
pragma solidity >=0.5.0;

/// @title Callback for IUniswapV3PoolActions#swap
/// @notice Any contract that calls IUniswapV3PoolActions#swap must implement this interface
interface IUniswapV3SwapCallback {
    /// @notice Called to `msg.sender` after executing a swap via IUniswapV3Pool#swap.
    /// @dev In the implementation you must pay the pool tokens owed for the swap.
    /// The caller of this method must be checked to be a UniswapV3Pool deployed by the canonical UniswapV3Factory.
    /// amount0Delta and amount1Delta can both be 0 if no tokens were swapped.
    /// @param amount0Delta The amount of token0 that was sent (negative) or must be received (positive) by the pool by
    /// the end of the swap. If positive, the callback must send that amount of token0 to the pool.
    /// @param amount1Delta The amount of token1 that was sent (negative) or must be received (positive) by the pool by
    /// the end of the swap. If positive, the callback must send that amount of token1 to the pool.
    /// @param data Any data passed through by the caller via the IUniswapV3PoolActions#swap call
    function uniswapV3SwapCallback(
        int256 amount0Delta,
        int256 amount1Delta,
        bytes calldata data
    ) external;
}

// SPDX-License-Identifier: GPL-2.0-or-later
pragma solidity >=0.7.5;
pragma abicoder v2;

import '@uniswap/v3-core/contracts/interfaces/callback/IUniswapV3SwapCallback.sol';

/// @title Router token swapping functionality
/// @notice Functions for swapping tokens via Uniswap V3
interface ISwapRouter is IUniswapV3SwapCallback {
    struct ExactInputSingleParams {
        address tokenIn;
        address tokenOut;
        uint24 fee;
        address recipient;
        uint256 deadline;
        uint256 amountIn;
        uint256 amountOutMinimum;
        uint160 sqrtPriceLimitX96;
    }

    /// @notice Swaps `amountIn` of one token for as much as possible of another token
    /// @param params The parameters necessary for the swap, encoded as `ExactInputSingleParams` in calldata
    /// @return amountOut The amount of the received token
    function exactInputSingle(ExactInputSingleParams calldata params) external payable returns (uint256 amountOut);

    struct ExactInputParams {
        bytes path;
        address recipient;
        uint256 deadline;
        uint256 amountIn;
        uint256 amountOutMinimum;
    }

    /// @notice Swaps `amountIn` of one token for as much as possible of another along the specified path
    /// @param params The parameters necessary for the multi-hop swap, encoded as `ExactInputParams` in calldata
    /// @return amountOut The amount of the received token
    function exactInput(ExactInputParams calldata params) external payable returns (uint256 amountOut);

    struct ExactOutputSingleParams {
        address tokenIn;
        address tokenOut;
        uint24 fee;
        address recipient;
        uint256 deadline;
        uint256 amountOut;
        uint256 amountInMaximum;
        uint160 sqrtPriceLimitX96;
    }

    /// @notice Swaps as little as possible of one token for `amountOut` of another token
    /// @param params The parameters necessary for the swap, encoded as `ExactOutputSingleParams` in calldata
    /// @return amountIn The amount of the input token
    function exactOutputSingle(ExactOutputSingleParams calldata params) external payable returns (uint256 amountIn);

    struct ExactOutputParams {
        bytes path;
        address recipient;
        uint256 deadline;
        uint256 amountOut;
        uint256 amountInMaximum;
    }

    /// @notice Swaps as little as possible of one token for `amountOut` of another along the specified path (reversed)
    /// @param params The parameters necessary for the multi-hop swap, encoded as `ExactOutputParams` in calldata
    /// @return amountIn The amount of the input token
    function exactOutput(ExactOutputParams calldata params) external payable returns (uint256 amountIn);
}

// SPDX-License-Identifier: MIT

pragma solidity ^0.8.0;

import "@layerzerolabs/solidity-examples/contracts/token/oft/IOFTCore.sol";

interface INativeOFT is IOFTCore {
    function deposit() external payable;
}

// SPDX-License-Identifier: MIT

pragma solidity ^0.8.0;

interface IWETH {
    function deposit() external payable;
	function approve(address spender, uint256 amount) external returns (bool);
}

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

Contract Security Audit

Contract ABI

API
[{"inputs":[{"internalType":"address","name":"_weth","type":"address"},{"internalType":"address","name":"_oft","type":"address"},{"internalType":"address","name":"_swapRouter","type":"address"}],"stateMutability":"nonpayable","type":"constructor"},{"inputs":[],"name":"oft","outputs":[{"internalType":"contract IOFTCore","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"poolFee","outputs":[{"internalType":"uint24","name":"","type":"uint24"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"uint256","name":"amountIn","type":"uint256"},{"internalType":"uint256","name":"amountOutMin","type":"uint256"},{"internalType":"uint16","name":"dstChainId","type":"uint16"},{"internalType":"address","name":"to","type":"address"},{"internalType":"address payable","name":"refundAddress","type":"address"},{"internalType":"address","name":"zroPaymentAddress","type":"address"},{"internalType":"bytes","name":"adapterParams","type":"bytes"}],"name":"swapAndBridge","outputs":[],"stateMutability":"payable","type":"function"},{"inputs":[],"name":"swapRouter","outputs":[{"internalType":"contract ISwapRouter","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"weth","outputs":[{"internalType":"contract IWETH","name":"","type":"address"}],"stateMutability":"view","type":"function"}]

60e060405234801561001057600080fd5b50604051610a07380380610a0783398101604081905261002f9161019e565b6001600160a01b0383166100985760405162461bcd60e51b815260206004820152602560248201527f537761707061626c654272696467653a20696e76616c69642057455448206164604482015264647265737360d81b60648201526084015b60405180910390fd5b6001600160a01b0382166100fa5760405162461bcd60e51b8152602060048201526024808201527f537761707061626c654272696467653a20696e76616c6964204f4654206164646044820152637265737360e01b606482015260840161008f565b6001600160a01b0381166101655760405162461bcd60e51b815260206004820152602c60248201527f537761707061626c654272696467653a20696e76616c6964205377617020526f60448201526b75746572206164647265737360a01b606482015260840161008f565b6001600160a01b0392831660805290821660a0521660c0526101e1565b80516001600160a01b038116811461019957600080fd5b919050565b6000806000606084860312156101b357600080fd5b6101bc84610182565b92506101ca60208501610182565b91506101d860408501610182565b90509250925092565b60805160a05160c0516107c861023f6000396000818161012501528181610295015261041c01526000818160dc01528181610370015261049801526000818160900152818161020f015281816102c4015261034b01526107c86000f3fe60806040526004361061004a5760003560e01c8063089fe6aa1461004f5780633fc8cef31461007e5780639b5215f6146100ca578063ae30f6ee146100fe578063c31c9c0714610113575b600080fd5b34801561005b57600080fd5b50610065610bb881565b60405162ffffff90911681526020015b60405180910390f35b34801561008a57600080fd5b506100b27f000000000000000000000000000000000000000000000000000000000000000081565b6040516001600160a01b039091168152602001610075565b3480156100d657600080fd5b506100b27f000000000000000000000000000000000000000000000000000000000000000081565b61011161010c366004610577565b610147565b005b34801561011f57600080fd5b506100b27f000000000000000000000000000000000000000000000000000000000000000081565b6001600160a01b0385166101ae5760405162461bcd60e51b815260206004820152602360248201527f537761707061626c654272696467653a20696e76616c696420746f206164647260448201526265737360e81b60648201526084015b60405180910390fd5b8734101561020d5760405162461bcd60e51b815260206004820152602660248201527f537761707061626c654272696467653a206e6f7420656e6f7567682076616c7560448201526519481cd95b9d60d21b60648201526084016101a5565b7f00000000000000000000000000000000000000000000000000000000000000006001600160a01b031663d0e30db0896040518263ffffffff1660e01b81526004016000604051808303818588803b15801561026857600080fd5b505af115801561027c573d6000803e3d6000fd5b505060405163095ea7b360e01b81526001600160a01b037f000000000000000000000000000000000000000000000000000000000000000081166004830152602482018d90527f000000000000000000000000000000000000000000000000000000000000000016935063095ea7b3925060440190506020604051808303816000875af1158015610311573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610335919061064e565b5060408051610100810182526001600160a01b037f0000000000000000000000000000000000000000000000000000000000000000811682527f0000000000000000000000000000000000000000000000000000000000000000811660208301908152610bb88385019081523060608501908152426080860190815260a086018f815260c087018f8152600060e08901818152995163414bf38960e01b8152895189166004820152965188166024880152945162ffffff166044870152925186166064860152905160848501525160a48401525160c48301529351821660e48201529192917f00000000000000000000000000000000000000000000000000000000000000009091169063414bf38990610104016020604051808303816000875af1158015610468573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061048c9190610677565b90506001600160a01b037f00000000000000000000000000000000000000000000000000000000000000001663519056366104c78c34610690565b6040516bffffffffffffffffffffffff1960608c901b16602082015230908c90603401604051602081830303815290604052868c8c8c8c6040518a63ffffffff1660e01b81526004016105219897969594939291906106e0565b6000604051808303818588803b15801561053a57600080fd5b505af115801561054e573d6000803e3d6000fd5b505050505050505050505050505050565b6001600160a01b038116811461057457600080fd5b50565b60008060008060008060008060e0898b03121561059357600080fd5b8835975060208901359650604089013561ffff811681146105b357600080fd5b955060608901356105c38161055f565b945060808901356105d38161055f565b935060a08901356105e38161055f565b925060c089013567ffffffffffffffff8082111561060057600080fd5b818b0191508b601f83011261061457600080fd5b81358181111561062357600080fd5b8c602082850101111561063557600080fd5b6020830194508093505050509295985092959890939650565b60006020828403121561066057600080fd5b8151801515811461067057600080fd5b9392505050565b60006020828403121561068957600080fd5b5051919050565b818103818111156106b157634e487b7160e01b600052601160045260246000fd5b92915050565b81835281816020850137506000828201602090810191909152601f909101601f19169091010190565b60018060a01b03891681526000602061ffff8a168184015260e0604084015288518060e085015260005b81811015610727578a81018301518582016101000152820161070a565b5061010091506000828286010152601f19601f8201168401905088606085015261075c60808501896001600160a01b03169052565b6001600160a01b03871660a0850152818482030160c085015261078282820186886106b7565b9c9b50505050505050505050505056fea264697066735822122057f09a8fffe830ced4b625f4d8edb4f36d4ccba9111e4d183c37b943a102c64764736f6c6343000811003300000000000000000000000082af49447d8a07e3bd95bd0d56f35241523fbab1000000000000000000000000dd69db25f6d620a7bad3023c5d32761d353d3de9000000000000000000000000e592427a0aece92de3edee1f18e0157c05861564

Deployed Bytecode

0x60806040526004361061004a5760003560e01c8063089fe6aa1461004f5780633fc8cef31461007e5780639b5215f6146100ca578063ae30f6ee146100fe578063c31c9c0714610113575b600080fd5b34801561005b57600080fd5b50610065610bb881565b60405162ffffff90911681526020015b60405180910390f35b34801561008a57600080fd5b506100b27f00000000000000000000000082af49447d8a07e3bd95bd0d56f35241523fbab181565b6040516001600160a01b039091168152602001610075565b3480156100d657600080fd5b506100b27f000000000000000000000000dd69db25f6d620a7bad3023c5d32761d353d3de981565b61011161010c366004610577565b610147565b005b34801561011f57600080fd5b506100b27f000000000000000000000000e592427a0aece92de3edee1f18e0157c0586156481565b6001600160a01b0385166101ae5760405162461bcd60e51b815260206004820152602360248201527f537761707061626c654272696467653a20696e76616c696420746f206164647260448201526265737360e81b60648201526084015b60405180910390fd5b8734101561020d5760405162461bcd60e51b815260206004820152602660248201527f537761707061626c654272696467653a206e6f7420656e6f7567682076616c7560448201526519481cd95b9d60d21b60648201526084016101a5565b7f00000000000000000000000082af49447d8a07e3bd95bd0d56f35241523fbab16001600160a01b031663d0e30db0896040518263ffffffff1660e01b81526004016000604051808303818588803b15801561026857600080fd5b505af115801561027c573d6000803e3d6000fd5b505060405163095ea7b360e01b81526001600160a01b037f000000000000000000000000e592427a0aece92de3edee1f18e0157c0586156481166004830152602482018d90527f00000000000000000000000082af49447d8a07e3bd95bd0d56f35241523fbab116935063095ea7b3925060440190506020604051808303816000875af1158015610311573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610335919061064e565b5060408051610100810182526001600160a01b037f00000000000000000000000082af49447d8a07e3bd95bd0d56f35241523fbab1811682527f000000000000000000000000dd69db25f6d620a7bad3023c5d32761d353d3de9811660208301908152610bb88385019081523060608501908152426080860190815260a086018f815260c087018f8152600060e08901818152995163414bf38960e01b8152895189166004820152965188166024880152945162ffffff166044870152925186166064860152905160848501525160a48401525160c48301529351821660e48201529192917f000000000000000000000000e592427a0aece92de3edee1f18e0157c058615649091169063414bf38990610104016020604051808303816000875af1158015610468573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061048c9190610677565b90506001600160a01b037f000000000000000000000000dd69db25f6d620a7bad3023c5d32761d353d3de91663519056366104c78c34610690565b6040516bffffffffffffffffffffffff1960608c901b16602082015230908c90603401604051602081830303815290604052868c8c8c8c6040518a63ffffffff1660e01b81526004016105219897969594939291906106e0565b6000604051808303818588803b15801561053a57600080fd5b505af115801561054e573d6000803e3d6000fd5b505050505050505050505050505050565b6001600160a01b038116811461057457600080fd5b50565b60008060008060008060008060e0898b03121561059357600080fd5b8835975060208901359650604089013561ffff811681146105b357600080fd5b955060608901356105c38161055f565b945060808901356105d38161055f565b935060a08901356105e38161055f565b925060c089013567ffffffffffffffff8082111561060057600080fd5b818b0191508b601f83011261061457600080fd5b81358181111561062357600080fd5b8c602082850101111561063557600080fd5b6020830194508093505050509295985092959890939650565b60006020828403121561066057600080fd5b8151801515811461067057600080fd5b9392505050565b60006020828403121561068957600080fd5b5051919050565b818103818111156106b157634e487b7160e01b600052601160045260246000fd5b92915050565b81835281816020850137506000828201602090810191909152601f909101601f19169091010190565b60018060a01b03891681526000602061ffff8a168184015260e0604084015288518060e085015260005b81811015610727578a81018301518582016101000152820161070a565b5061010091506000828286010152601f19601f8201168401905088606085015261075c60808501896001600160a01b03169052565b6001600160a01b03871660a0850152818482030160c085015261078282820186886106b7565b9c9b50505050505050505050505056fea264697066735822122057f09a8fffe830ced4b625f4d8edb4f36d4ccba9111e4d183c37b943a102c64764736f6c63430008110033

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

00000000000000000000000082af49447d8a07e3bd95bd0d56f35241523fbab1000000000000000000000000dd69db25f6d620a7bad3023c5d32761d353d3de9000000000000000000000000e592427a0aece92de3edee1f18e0157c05861564

-----Decoded View---------------
Arg [0] : _weth (address): 0x82aF49447D8a07e3bd95BD0d56f35241523fBab1
Arg [1] : _oft (address): 0xdD69DB25F6D620A7baD3023c5d32761D353D3De9
Arg [2] : _swapRouter (address): 0xE592427A0AEce92De3Edee1F18E0157C05861564

-----Encoded View---------------
3 Constructor Arguments found :
Arg [0] : 00000000000000000000000082af49447d8a07e3bd95bd0d56f35241523fbab1
Arg [1] : 000000000000000000000000dd69db25f6d620a7bad3023c5d32761d353d3de9
Arg [2] : 000000000000000000000000e592427a0aece92de3edee1f18e0157c05861564


Block Transaction Difficulty 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
0x0A9f824C05A74F577A536A8A0c673183a872Dff4
Loading...
Loading
Loading...
Loading
Loading...
Loading
[ Download: CSV Export  ]
[ Download: CSV Export  ]

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