ETH Price: $3,305.26 (-4.18%)

Contract

0x0A9f824C05A74F577A536A8A0c673183a872Dff4
 
Transaction Hash
Method
Block
From
To
0xde5ecc124aba731e0b9b135e23f90a6452526719183bfcf7b466cc357346406e Swap And Bridge(pending)2024-11-27 0:54:0218 mins ago1732668842IN
Layer Zero: Swappable Bridge
0.0025158591 ETH(Pending)(Pending)
0xa9339aade743d006560fd1deda58c7c02105b4576d09f043f95cf656014f1ed5 Swap And Bridge(pending)2024-11-25 21:33:0927 hrs ago1732570389IN
Layer Zero: Swappable Bridge
0.0010004862 ETH(Pending)(Pending)
0x178755a0b9bf9e4e6391c67087bb831f6dc414f30b7d62db469d11051e2e7057 Swap And Bridge(pending)2024-11-24 8:51:562 days ago1732438316IN
Layer Zero: Swappable Bridge
0.0023780338 ETH(Pending)(Pending)
0x8b2828c51645d051be941c5658b2d46260b724211af3c6d103758574260ac255 Swap And Bridge(pending)2024-11-24 7:59:432 days ago1732435183IN
Layer Zero: Swappable Bridge
0.0034655744 ETH(Pending)(Pending)
0x57746b72a51f995aa1e23cc5876412a09a2deb796fbc54f9f782523dfc7ca515 Swap And Bridge(pending)2024-11-24 7:48:142 days ago1732434494IN
Layer Zero: Swappable Bridge
0.00372087 ETH(Pending)(Pending)
0x8a40a6da1d162100ca92e7e70d181337e352c2c503f446452075e1e956750b28 Swap And Bridge(pending)2024-11-24 5:57:382 days ago1732427858IN
Layer Zero: Swappable Bridge
0.0004247344 ETH(Pending)(Pending)
0x30fed6b3850ebc0b974f8cefe3db2a80959a78ee96214311225c715501c95408 Swap And Bridge(pending)2024-11-24 4:01:542 days ago1732420914IN
Layer Zero: Swappable Bridge
0.0014606593 ETH(Pending)(Pending)
0x60f884c0545017c4889be4f28ffda0779442216e7e464bcd9a811cbb82ccfca0 Swap And Bridge(pending)2024-11-24 1:51:522 days ago1732413112IN
Layer Zero: Swappable Bridge
0.0024574521 ETH(Pending)(Pending)
0x74c5daeec6f66960e518a9eb4011d68fff77d983b11b8f50a65a3311ee6c1d48 Swap And Bridge(pending)2024-11-24 1:48:182 days ago1732412898IN
Layer Zero: Swappable Bridge
0.0001010036 ETH(Pending)(Pending)
0xd3fa2c14484eabe5417cec62330a7734f8cb43ff34e18cbffad1f5ef3211c589 Swap And Bridge(pending)2024-11-24 1:31:492 days ago1732411909IN
Layer Zero: Swappable Bridge
0.001661363 ETH(Pending)(Pending)
0xe14012fc6b9804a055300d0c860a5b593f61845f204b8a69b948cb2b1b2e8bfb Swap And Bridge(pending)2024-11-24 1:31:432 days ago1732411903IN
Layer Zero: Swappable Bridge
0.0024611963 ETH(Pending)(Pending)
Bridge212320492024-11-20 22:52:116 days ago1732143131IN
Layer Zero: Swappable Bridge
5.00037576 ETH0.0026541310.4273888
Bridge209895452024-10-18 2:44:3539 days ago1729219475IN
Layer Zero: Swappable Bridge
3.20044596 ETH0.0062890524.70801114
Bridge209008432024-10-05 17:31:1152 days ago1728149471IN
Layer Zero: Swappable Bridge
2.00050277 ETH0.001112864.37213147
Bridge208842482024-10-03 9:59:3554 days ago1727949575IN
Layer Zero: Swappable Bridge
0.50049014 ETH0.001115214.38138862
Bridge208708082024-10-01 13:00:4756 days ago1727787647IN
Layer Zero: Swappable Bridge
0.00046047 ETH0.0042250716.60074106
Bridge208424442024-09-27 14:05:2360 days ago1727445923IN
Layer Zero: Swappable Bridge
0.40046633 ETH0.0062978624.74262786
Bridge208422252024-09-27 13:21:2360 days ago1727443283IN
Layer Zero: Swappable Bridge
0.40046216 ETH0.0039303115.44117307
Bridge207600572024-09-16 1:58:5971 days ago1726451939IN
Layer Zero: Swappable Bridge
4.00051503 ETH0.00056692.22722674
Bridge207461402024-09-14 3:22:3573 days ago1726284155IN
Layer Zero: Swappable Bridge
0.5304811 ETH0.000329331.29385269
Bridge206955722024-09-07 1:56:2380 days ago1725674183IN
Layer Zero: Swappable Bridge
0.22051193 ETH0.000268341.05425272
Bridge206522382024-09-01 0:48:5987 days ago1725151739IN
Layer Zero: Swappable Bridge
0.30047672 ETH0.000170530.67
Swap And Bridge206510582024-08-31 20:52:1187 days ago1725137531IN
Layer Zero: Swappable Bridge
0.00035675 ETH0.000183130.55
Swap And Bridge206464132024-08-31 5:18:1187 days ago1725081491IN
Layer Zero: Swappable Bridge
0.00244288 ETH0.00020770.6238012
Bridge206377712024-08-30 0:19:2389 days ago1724977163IN
Layer Zero: Swappable Bridge
0.10047673 ETH0.000213420.83847618
View all transactions

Latest 25 internal transactions (View All)

Advanced mode:
Parent Transaction Hash Block From To
212320492024-11-20 22:52:116 days ago1732143131
Layer Zero: Swappable Bridge
0.00037576 ETH
212320492024-11-20 22:52:116 days ago1732143131
Layer Zero: Swappable Bridge
5 ETH
209895452024-10-18 2:44:3539 days ago1729219475
Layer Zero: Swappable Bridge
0.00044596 ETH
209895452024-10-18 2:44:3539 days ago1729219475
Layer Zero: Swappable Bridge
3.2 ETH
209008432024-10-05 17:31:1152 days ago1728149471
Layer Zero: Swappable Bridge
0.00050277 ETH
209008432024-10-05 17:31:1152 days ago1728149471
Layer Zero: Swappable Bridge
2 ETH
208842482024-10-03 9:59:3554 days ago1727949575
Layer Zero: Swappable Bridge
0.00049014 ETH
208842482024-10-03 9:59:3554 days ago1727949575
Layer Zero: Swappable Bridge
0.5 ETH
208708082024-10-01 13:00:4756 days ago1727787647
Layer Zero: Swappable Bridge
0.00046037 ETH
208708082024-10-01 13:00:4756 days ago1727787647
Layer Zero: Swappable Bridge
0.0000001 ETH
208424442024-09-27 14:05:2360 days ago1727445923
Layer Zero: Swappable Bridge
0.00046633 ETH
208424442024-09-27 14:05:2360 days ago1727445923
Layer Zero: Swappable Bridge
0.4 ETH
208422252024-09-27 13:21:2360 days ago1727443283
Layer Zero: Swappable Bridge
0.00046216 ETH
208422252024-09-27 13:21:2360 days ago1727443283
Layer Zero: Swappable Bridge
0.4 ETH
207600572024-09-16 1:58:5971 days ago1726451939
Layer Zero: Swappable Bridge
0.00051503 ETH
207600572024-09-16 1:58:5971 days ago1726451939
Layer Zero: Swappable Bridge
4 ETH
207461402024-09-14 3:22:3573 days ago1726284155
Layer Zero: Swappable Bridge
0.0004811 ETH
207461402024-09-14 3:22:3573 days ago1726284155
Layer Zero: Swappable Bridge
0.53 ETH
206955722024-09-07 1:56:2380 days ago1725674183
Layer Zero: Swappable Bridge
0.00051193 ETH
206955722024-09-07 1:56:2380 days ago1725674183
Layer Zero: Swappable Bridge
0.22 ETH
206522382024-09-01 0:48:5987 days ago1725151739
Layer Zero: Swappable Bridge
0.00047672 ETH
206522382024-09-01 0:48:5987 days ago1725151739
Layer Zero: Swappable Bridge
0.3 ETH
206510582024-08-31 20:52:1187 days ago1725137531
Layer Zero: Swappable Bridge
0.00010675 ETH
206510582024-08-31 20:52:1187 days ago1725137531
Layer Zero: Swappable Bridge
0.00025 ETH
206464132024-08-31 5:18:1187 days ago1725081491
Layer Zero: Swappable Bridge
0.00137551 ETH
View All Internal Transactions
Loading...
Loading

Contract Source Code Verified (Exact Match)

Contract Name:
SwappableBridge

Compiler Version
v0.8.17+commit.8df45f5f

Optimization Enabled:
Yes with 200 runs

Other Settings:
default evmVersion, MIT license
File 1 of 6 : SwappableBridge.sol
// SPDX-License-Identifier: MIT
pragma solidity ^0.8.0;

import "@uniswap/v2-periphery/contracts/interfaces/IUniswapV2Router02.sol";
import "@layerzerolabs/solidity-examples/contracts/token/oft/IOFTCore.sol";
import "./INativeOFT.sol";

contract SwappableBridge {
    IOFTCore public immutable oft;
    INativeOFT public immutable nativeOft;
    IUniswapV2Router02 public immutable uniswapRouter;

    constructor(address _oft, address _nativeOft, address _uniswapRouter) {
        require(_oft != address(0), "SwappableBridge: invalid OFT address");
        require(_nativeOft != address(0), "SwappableBridge: invalid Native OFT address");
        require(_uniswapRouter != address(0), "SwappableBridge: invalid Uniswap Router address");

        oft = IOFTCore(_oft);
        nativeOft = INativeOFT(_nativeOft);
        uniswapRouter = IUniswapV2Router02(_uniswapRouter);
    }

    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");

        address[] memory path = new address[](2);
        path[0] = uniswapRouter.WETH();
        path[1] = address(oft);

        uint[] memory amounts = uniswapRouter.swapExactETHForTokens{value: amountIn}(amountOutMin, path, address(this), block.timestamp);
        oft.sendFrom{value: msg.value - amountIn}(address(this), dstChainId, abi.encodePacked(to), amounts[1], refundAddress, zroPaymentAddress, adapterParams);
    }

    function bridge(uint amountIn, 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");

        nativeOft.deposit{value: amountIn}();
        nativeOft.sendFrom{value: msg.value - amountIn}(address(this), dstChainId, abi.encodePacked(to), amountIn, refundAddress, zroPaymentAddress, adapterParams);
    }
}

File 2 of 6 : IERC165.sol
// 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);
}

File 3 of 6 : IUniswapV2Router01.sol
pragma solidity >=0.6.2;

interface IUniswapV2Router01 {
    function factory() external pure returns (address);
    function WETH() external pure returns (address);

    function addLiquidity(
        address tokenA,
        address tokenB,
        uint amountADesired,
        uint amountBDesired,
        uint amountAMin,
        uint amountBMin,
        address to,
        uint deadline
    ) external returns (uint amountA, uint amountB, uint liquidity);
    function addLiquidityETH(
        address token,
        uint amountTokenDesired,
        uint amountTokenMin,
        uint amountETHMin,
        address to,
        uint deadline
    ) external payable returns (uint amountToken, uint amountETH, uint liquidity);
    function removeLiquidity(
        address tokenA,
        address tokenB,
        uint liquidity,
        uint amountAMin,
        uint amountBMin,
        address to,
        uint deadline
    ) external returns (uint amountA, uint amountB);
    function removeLiquidityETH(
        address token,
        uint liquidity,
        uint amountTokenMin,
        uint amountETHMin,
        address to,
        uint deadline
    ) external returns (uint amountToken, uint amountETH);
    function removeLiquidityWithPermit(
        address tokenA,
        address tokenB,
        uint liquidity,
        uint amountAMin,
        uint amountBMin,
        address to,
        uint deadline,
        bool approveMax, uint8 v, bytes32 r, bytes32 s
    ) external returns (uint amountA, uint amountB);
    function removeLiquidityETHWithPermit(
        address token,
        uint liquidity,
        uint amountTokenMin,
        uint amountETHMin,
        address to,
        uint deadline,
        bool approveMax, uint8 v, bytes32 r, bytes32 s
    ) external returns (uint amountToken, uint amountETH);
    function swapExactTokensForTokens(
        uint amountIn,
        uint amountOutMin,
        address[] calldata path,
        address to,
        uint deadline
    ) external returns (uint[] memory amounts);
    function swapTokensForExactTokens(
        uint amountOut,
        uint amountInMax,
        address[] calldata path,
        address to,
        uint deadline
    ) external returns (uint[] memory amounts);
    function swapExactETHForTokens(uint amountOutMin, address[] calldata path, address to, uint deadline)
        external
        payable
        returns (uint[] memory amounts);
    function swapTokensForExactETH(uint amountOut, uint amountInMax, address[] calldata path, address to, uint deadline)
        external
        returns (uint[] memory amounts);
    function swapExactTokensForETH(uint amountIn, uint amountOutMin, address[] calldata path, address to, uint deadline)
        external
        returns (uint[] memory amounts);
    function swapETHForExactTokens(uint amountOut, address[] calldata path, address to, uint deadline)
        external
        payable
        returns (uint[] memory amounts);

    function quote(uint amountA, uint reserveA, uint reserveB) external pure returns (uint amountB);
    function getAmountOut(uint amountIn, uint reserveIn, uint reserveOut) external pure returns (uint amountOut);
    function getAmountIn(uint amountOut, uint reserveIn, uint reserveOut) external pure returns (uint amountIn);
    function getAmountsOut(uint amountIn, address[] calldata path) external view returns (uint[] memory amounts);
    function getAmountsIn(uint amountOut, address[] calldata path) external view returns (uint[] memory amounts);
}

File 4 of 6 : IUniswapV2Router02.sol
pragma solidity >=0.6.2;

import './IUniswapV2Router01.sol';

interface IUniswapV2Router02 is IUniswapV2Router01 {
    function removeLiquidityETHSupportingFeeOnTransferTokens(
        address token,
        uint liquidity,
        uint amountTokenMin,
        uint amountETHMin,
        address to,
        uint deadline
    ) external returns (uint amountETH);
    function removeLiquidityETHWithPermitSupportingFeeOnTransferTokens(
        address token,
        uint liquidity,
        uint amountTokenMin,
        uint amountETHMin,
        address to,
        uint deadline,
        bool approveMax, uint8 v, bytes32 r, bytes32 s
    ) external returns (uint amountETH);

    function swapExactTokensForTokensSupportingFeeOnTransferTokens(
        uint amountIn,
        uint amountOutMin,
        address[] calldata path,
        address to,
        uint deadline
    ) external;
    function swapExactETHForTokensSupportingFeeOnTransferTokens(
        uint amountOutMin,
        address[] calldata path,
        address to,
        uint deadline
    ) external payable;
    function swapExactTokensForETHSupportingFeeOnTransferTokens(
        uint amountIn,
        uint amountOutMin,
        address[] calldata path,
        address to,
        uint deadline
    ) external;
}

File 5 of 6 : IOFTCore.sol
// 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);
}

File 6 of 6 : INativeOFT.sol
// 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;
}

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

Contract Security Audit

Contract ABI

[{"inputs":[{"internalType":"address","name":"_oft","type":"address"},{"internalType":"address","name":"_nativeOft","type":"address"},{"internalType":"address","name":"_uniswapRouter","type":"address"}],"stateMutability":"nonpayable","type":"constructor"},{"inputs":[{"internalType":"uint256","name":"amountIn","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":"bridge","outputs":[],"stateMutability":"payable","type":"function"},{"inputs":[],"name":"nativeOft","outputs":[{"internalType":"contract INativeOFT","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"oft","outputs":[{"internalType":"contract IOFTCore","name":"","type":"address"}],"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":"uniswapRouter","outputs":[{"internalType":"contract IUniswapV2Router02","name":"","type":"address"}],"stateMutability":"view","type":"function"}]

60e060405234801561001057600080fd5b50604051610cd1380380610cd183398101604081905261002f916101a7565b6001600160a01b0383166100965760405162461bcd60e51b8152602060048201526024808201527f537761707061626c654272696467653a20696e76616c6964204f4654206164646044820152637265737360e01b60648201526084015b60405180910390fd5b6001600160a01b0382166101005760405162461bcd60e51b815260206004820152602b60248201527f537761707061626c654272696467653a20696e76616c6964204e61746976652060448201526a4f4654206164647265737360a81b606482015260840161008d565b6001600160a01b03811661016e5760405162461bcd60e51b815260206004820152602f60248201527f537761707061626c654272696467653a20696e76616c696420556e697377617060448201526e20526f75746572206164647265737360881b606482015260840161008d565b6001600160a01b0392831660805290821660a0521660c0526101ea565b80516001600160a01b03811681146101a257600080fd5b919050565b6000806000606084860312156101bc57600080fd5b6101c58461018b565b92506101d36020850161018b565b91506101e16040850161018b565b90509250925092565b60805160a05160c051610a916102406000396000818160b1015281816101a101526102b001526000818160610152818161046901526104dd01526000818160e50152818161025601526103400152610a916000f3fe60806040526004361061004a5760003560e01c80631ab425a01461004f578063735de9f71461009f5780639b5215f6146100d3578063ae30f6ee14610107578063b73704351461011c575b600080fd5b34801561005b57600080fd5b506100837f000000000000000000000000000000000000000000000000000000000000000081565b6040516001600160a01b03909116815260200160405180910390f35b3480156100ab57600080fd5b506100837f000000000000000000000000000000000000000000000000000000000000000081565b3480156100df57600080fd5b506100837f000000000000000000000000000000000000000000000000000000000000000081565b61011a610115366004610623565b61012f565b005b61011a61012a3660046106c2565b610421565b6001600160a01b03851661015e5760405162461bcd60e51b815260040161015590610758565b60405180910390fd5b8734101561017e5760405162461bcd60e51b81526004016101559061079b565b6040805160028082526060820183526000926020830190803683370190505090507f00000000000000000000000000000000000000000000000000000000000000006001600160a01b031663ad5c46486040518163ffffffff1660e01b8152600401602060405180830381865afa1580156101fd573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061022191906107f7565b816000815181106102345761023461081b565b60200260200101906001600160a01b031690816001600160a01b0316815250507f0000000000000000000000000000000000000000000000000000000000000000816001815181106102885761028861081b565b6001600160a01b039283166020918202929092010152604051637ff36ab560e01b81526000917f00000000000000000000000000000000000000000000000000000000000000001690637ff36ab5908c906102ed908d90879030904290600401610831565b60006040518083038185885af115801561030b573d6000803e3d6000fd5b50505050506040513d6000823e601f3d908101601f19168201604052610334919081019061089b565b90506001600160a01b037f000000000000000000000000000000000000000000000000000000000000000016635190563661036f8c34610959565b6040516bffffffffffffffffffffffff1960608c901b16602082015230908c90603401604051602081830303815290604052866001815181106103b4576103b461081b565b60200260200101518c8c8c8c6040518a63ffffffff1660e01b81526004016103e39897969594939291906109a9565b6000604051808303818588803b1580156103fc57600080fd5b505af1158015610410573d6000803e3d6000fd5b505050505050505050505050505050565b6001600160a01b0385166104475760405162461bcd60e51b815260040161015590610758565b863410156104675760405162461bcd60e51b81526004016101559061079b565b7f00000000000000000000000000000000000000000000000000000000000000006001600160a01b031663d0e30db0886040518263ffffffff1660e01b81526004016000604051808303818588803b1580156104c257600080fd5b505af11580156104d6573d6000803e3d6000fd5b50505050507f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0316635190563688346105169190610959565b6040516bffffffffffffffffffffffff1960608a901b16602082015230908a906034016040516020818303038152906040528c8a8a8a8a6040518a63ffffffff1660e01b81526004016105709897969594939291906109a9565b6000604051808303818588803b15801561058957600080fd5b505af115801561059d573d6000803e3d6000fd5b505050505050505050505050565b803561ffff811681146105bd57600080fd5b919050565b6001600160a01b03811681146105d757600080fd5b50565b60008083601f8401126105ec57600080fd5b50813567ffffffffffffffff81111561060457600080fd5b60208301915083602082850101111561061c57600080fd5b9250929050565b60008060008060008060008060e0898b03121561063f57600080fd5b883597506020890135965061065660408a016105ab565b95506060890135610666816105c2565b94506080890135610676816105c2565b935060a0890135610686816105c2565b925060c089013567ffffffffffffffff8111156106a257600080fd5b6106ae8b828c016105da565b999c989b5096995094979396929594505050565b600080600080600080600060c0888a0312156106dd57600080fd5b873596506106ed602089016105ab565b955060408801356106fd816105c2565b9450606088013561070d816105c2565b9350608088013561071d816105c2565b925060a088013567ffffffffffffffff81111561073957600080fd5b6107458a828b016105da565b989b979a50959850939692959293505050565b60208082526023908201527f537761707061626c654272696467653a20696e76616c696420746f206164647260408201526265737360e81b606082015260800190565b60208082526026908201527f537761707061626c654272696467653a206e6f7420656e6f7567682076616c7560408201526519481cd95b9d60d21b606082015260800190565b634e487b7160e01b600052604160045260246000fd5b60006020828403121561080957600080fd5b8151610814816105c2565b9392505050565b634e487b7160e01b600052603260045260246000fd5b600060808201868352602060808185015281875180845260a086019150828901935060005b8181101561087b5784516001600160a01b031683529383019391830191600101610856565b50506001600160a01b039690961660408501525050506060015292915050565b600060208083850312156108ae57600080fd5b825167ffffffffffffffff808211156108c657600080fd5b818501915085601f8301126108da57600080fd5b8151818111156108ec576108ec6107e1565b8060051b604051601f19603f83011681018181108582111715610911576109116107e1565b60405291825284820192508381018501918883111561092f57600080fd5b938501935b8285101561094d57845184529385019392850192610934565b98975050505050505050565b8181038181111561097a57634e487b7160e01b600052601160045260246000fd5b92915050565b81835281816020850137506000828201602090810191909152601f909101601f19169091010190565b60018060a01b03891681526000602061ffff8a168184015260e0604084015288518060e085015260005b818110156109f0578a8101830151858201610100015282016109d3565b5061010091506000828286010152601f19601f82011684019050886060850152610a2560808501896001600160a01b03169052565b6001600160a01b03871660a0850152818482030160c0850152610a4b8282018688610980565b9c9b50505050505050505050505056fea26469706673582212200867cb896c298d9d55be0aafdfbc2f879fe98e458181f05f6f6ea1b1c3628a5364736f6c63430008110033000000000000000000000000dd69db25f6d620a7bad3023c5d32761d353d3de90000000000000000000000004f7a67464b5976d7547c860109e4432d50afb38e0000000000000000000000007a250d5630b4cf539739df2c5dacb4c659f2488d

Deployed Bytecode

0x60806040526004361061004a5760003560e01c80631ab425a01461004f578063735de9f71461009f5780639b5215f6146100d3578063ae30f6ee14610107578063b73704351461011c575b600080fd5b34801561005b57600080fd5b506100837f0000000000000000000000004f7a67464b5976d7547c860109e4432d50afb38e81565b6040516001600160a01b03909116815260200160405180910390f35b3480156100ab57600080fd5b506100837f0000000000000000000000007a250d5630b4cf539739df2c5dacb4c659f2488d81565b3480156100df57600080fd5b506100837f000000000000000000000000dd69db25f6d620a7bad3023c5d32761d353d3de981565b61011a610115366004610623565b61012f565b005b61011a61012a3660046106c2565b610421565b6001600160a01b03851661015e5760405162461bcd60e51b815260040161015590610758565b60405180910390fd5b8734101561017e5760405162461bcd60e51b81526004016101559061079b565b6040805160028082526060820183526000926020830190803683370190505090507f0000000000000000000000007a250d5630b4cf539739df2c5dacb4c659f2488d6001600160a01b031663ad5c46486040518163ffffffff1660e01b8152600401602060405180830381865afa1580156101fd573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061022191906107f7565b816000815181106102345761023461081b565b60200260200101906001600160a01b031690816001600160a01b0316815250507f000000000000000000000000dd69db25f6d620a7bad3023c5d32761d353d3de9816001815181106102885761028861081b565b6001600160a01b039283166020918202929092010152604051637ff36ab560e01b81526000917f0000000000000000000000007a250d5630b4cf539739df2c5dacb4c659f2488d1690637ff36ab5908c906102ed908d90879030904290600401610831565b60006040518083038185885af115801561030b573d6000803e3d6000fd5b50505050506040513d6000823e601f3d908101601f19168201604052610334919081019061089b565b90506001600160a01b037f000000000000000000000000dd69db25f6d620a7bad3023c5d32761d353d3de916635190563661036f8c34610959565b6040516bffffffffffffffffffffffff1960608c901b16602082015230908c90603401604051602081830303815290604052866001815181106103b4576103b461081b565b60200260200101518c8c8c8c6040518a63ffffffff1660e01b81526004016103e39897969594939291906109a9565b6000604051808303818588803b1580156103fc57600080fd5b505af1158015610410573d6000803e3d6000fd5b505050505050505050505050505050565b6001600160a01b0385166104475760405162461bcd60e51b815260040161015590610758565b863410156104675760405162461bcd60e51b81526004016101559061079b565b7f0000000000000000000000004f7a67464b5976d7547c860109e4432d50afb38e6001600160a01b031663d0e30db0886040518263ffffffff1660e01b81526004016000604051808303818588803b1580156104c257600080fd5b505af11580156104d6573d6000803e3d6000fd5b50505050507f0000000000000000000000004f7a67464b5976d7547c860109e4432d50afb38e6001600160a01b0316635190563688346105169190610959565b6040516bffffffffffffffffffffffff1960608a901b16602082015230908a906034016040516020818303038152906040528c8a8a8a8a6040518a63ffffffff1660e01b81526004016105709897969594939291906109a9565b6000604051808303818588803b15801561058957600080fd5b505af115801561059d573d6000803e3d6000fd5b505050505050505050505050565b803561ffff811681146105bd57600080fd5b919050565b6001600160a01b03811681146105d757600080fd5b50565b60008083601f8401126105ec57600080fd5b50813567ffffffffffffffff81111561060457600080fd5b60208301915083602082850101111561061c57600080fd5b9250929050565b60008060008060008060008060e0898b03121561063f57600080fd5b883597506020890135965061065660408a016105ab565b95506060890135610666816105c2565b94506080890135610676816105c2565b935060a0890135610686816105c2565b925060c089013567ffffffffffffffff8111156106a257600080fd5b6106ae8b828c016105da565b999c989b5096995094979396929594505050565b600080600080600080600060c0888a0312156106dd57600080fd5b873596506106ed602089016105ab565b955060408801356106fd816105c2565b9450606088013561070d816105c2565b9350608088013561071d816105c2565b925060a088013567ffffffffffffffff81111561073957600080fd5b6107458a828b016105da565b989b979a50959850939692959293505050565b60208082526023908201527f537761707061626c654272696467653a20696e76616c696420746f206164647260408201526265737360e81b606082015260800190565b60208082526026908201527f537761707061626c654272696467653a206e6f7420656e6f7567682076616c7560408201526519481cd95b9d60d21b606082015260800190565b634e487b7160e01b600052604160045260246000fd5b60006020828403121561080957600080fd5b8151610814816105c2565b9392505050565b634e487b7160e01b600052603260045260246000fd5b600060808201868352602060808185015281875180845260a086019150828901935060005b8181101561087b5784516001600160a01b031683529383019391830191600101610856565b50506001600160a01b039690961660408501525050506060015292915050565b600060208083850312156108ae57600080fd5b825167ffffffffffffffff808211156108c657600080fd5b818501915085601f8301126108da57600080fd5b8151818111156108ec576108ec6107e1565b8060051b604051601f19603f83011681018181108582111715610911576109116107e1565b60405291825284820192508381018501918883111561092f57600080fd5b938501935b8285101561094d57845184529385019392850192610934565b98975050505050505050565b8181038181111561097a57634e487b7160e01b600052601160045260246000fd5b92915050565b81835281816020850137506000828201602090810191909152601f909101601f19169091010190565b60018060a01b03891681526000602061ffff8a168184015260e0604084015288518060e085015260005b818110156109f0578a8101830151858201610100015282016109d3565b5061010091506000828286010152601f19601f82011684019050886060850152610a2560808501896001600160a01b03169052565b6001600160a01b03871660a0850152818482030160c0850152610a4b8282018688610980565b9c9b50505050505050505050505056fea26469706673582212200867cb896c298d9d55be0aafdfbc2f879fe98e458181f05f6f6ea1b1c3628a5364736f6c63430008110033

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

000000000000000000000000dd69db25f6d620a7bad3023c5d32761d353d3de90000000000000000000000004f7a67464b5976d7547c860109e4432d50afb38e0000000000000000000000007a250d5630b4cf539739df2c5dacb4c659f2488d

-----Decoded View---------------
Arg [0] : _oft (address): 0xdD69DB25F6D620A7baD3023c5d32761D353D3De9
Arg [1] : _nativeOft (address): 0x4f7A67464B5976d7547c860109e4432d50AfB38e
Arg [2] : _uniswapRouter (address): 0x7a250d5630B4cF539739dF2C5dAcb4c659F2488D

-----Encoded View---------------
3 Constructor Arguments found :
Arg [0] : 000000000000000000000000dd69db25f6d620a7bad3023c5d32761d353d3de9
Arg [1] : 0000000000000000000000004f7a67464b5976d7547c860109e4432d50afb38e
Arg [2] : 0000000000000000000000007a250d5630b4cf539739df2c5dacb4c659f2488d


Block Transaction Difficulty Gas Used Reward
View All Blocks Produced

Block Uncle Number Difficulty Gas Used Reward
View All Uncles
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  ]
[ 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.