More Info
Private Name Tags
ContractCreator
Latest 25 from a total of 112 transactions
Transaction Hash |
Method
|
Block
|
From
|
To
|
|||||
---|---|---|---|---|---|---|---|---|---|
_withdraw | 16519664 | 726 days ago | IN | 0 ETH | 0.00098189 | ||||
_withdraw | 16519652 | 726 days ago | IN | 0 ETH | 0.00095496 | ||||
_withdraw | 16519599 | 726 days ago | IN | 0 ETH | 0.0009216 | ||||
_withdraw | 16519585 | 726 days ago | IN | 0 ETH | 0.00088597 | ||||
Deposit | 15262402 | 907 days ago | IN | 0 ETH | 0.0006854 | ||||
Deposit | 15261783 | 907 days ago | IN | 0 ETH | 0.00080754 | ||||
Deposit | 15261735 | 907 days ago | IN | 0 ETH | 0.00082027 | ||||
Deposit | 15261696 | 907 days ago | IN | 0 ETH | 0.00092215 | ||||
Deposit | 15261695 | 907 days ago | IN | 0 ETH | 0.00093741 | ||||
Deposit | 14666331 | 1004 days ago | IN | 0.00003014 ETH | 0.00414364 | ||||
_withdraw | 14660105 | 1005 days ago | IN | 0 ETH | 0.00137838 | ||||
_withdraw | 14345229 | 1054 days ago | IN | 0 ETH | 0.00125207 | ||||
_withdraw | 14345219 | 1054 days ago | IN | 0 ETH | 0.0014692 | ||||
_withdraw | 14345216 | 1054 days ago | IN | 0 ETH | 0.00139708 | ||||
Deposit | 14209477 | 1075 days ago | IN | 0 ETH | 0.00388172 | ||||
Deposit | 14209477 | 1075 days ago | IN | 0 ETH | 0.00388226 | ||||
Deposit | 14183616 | 1079 days ago | IN | 0 ETH | 0.00365433 | ||||
Deposit | 14183616 | 1079 days ago | IN | 0 ETH | 0.00365433 | ||||
Deposit | 14183615 | 1079 days ago | IN | 0 ETH | 0.00404652 | ||||
Deposit | 14178738 | 1080 days ago | IN | 0 ETH | 0.00838953 | ||||
Deposit | 14178738 | 1080 days ago | IN | 0 ETH | 0.00838836 | ||||
Deposit | 14178737 | 1080 days ago | IN | 0 ETH | 0.00912171 | ||||
Deposit | 14178736 | 1080 days ago | IN | 0 ETH | 0.00813112 | ||||
Deposit | 14178736 | 1080 days ago | IN | 0 ETH | 0.00813112 | ||||
Deposit | 14085596 | 1094 days ago | IN | 0 ETH | 0.01001686 |
View more zero value Internal Transactions in Advanced View mode
Advanced mode:
Loading...
Loading
Contract Source Code Verified (Exact Match)
Contract Name:
MoveAsset
Compiler Version
v0.8.4+commit.c7e474f2
Optimization Enabled:
No with 200 runs
Other Settings:
default evmVersion
Contract Source Code (Solidity Standard Json-Input format)
//SPDX-License-Identifier: MIT pragma solidity ^0.8.0; import "@openzeppelin/contracts/token/ERC1155/IERC1155.sol"; import "@openzeppelin/contracts/token/ERC1155/IERC1155Receiver.sol"; import "@openzeppelin/contracts/token/ERC20/IERC20.sol"; import "../DIAOracleV2.sol"; contract MoveAsset is IERC1155Receiver { event Deposit( address indexed _nftAddress, address indexed _from, uint256 indexed _nftID, bool _ethdropped, uint256 fee ); event Withdraw( address indexed _nftAddress, address indexed _from, uint256 indexed _nftID ); modifier onlyOwner() { require(msg.sender == owner); _; } address public owner; uint256 public l2GasFee; address public gasOracle; // Gas Fee oracle for l2 gas uint256 public withdrawGasLimit ; mapping(address => mapping(uint256 => bool)) public ethdropped; constructor(address oracle) { owner = msg.sender; gasOracle = oracle; } function _calculateFee() public view returns (uint256) { (uint128 value, ) = DIAOracleV2(gasOracle).getValue( "GAS_ARB" ); return value * withdrawGasLimit; } function _updateGasOracle(address _newOracle) external onlyOwner { gasOracle = _newOracle; } function _updateWithdrwaGasLimit(uint256 _newGasLimit) external onlyOwner { withdrawGasLimit = _newGasLimit; } function getFee() public view returns (uint256) { return _calculateFee(); } function isFeeRequired(address _nftAddress, uint256 _nftID) public view returns (bool) { return ethdropped[_nftAddress][_nftID]; } function deposit(uint256 _nftID, address _nftAddress) external payable { require( IERC1155(_nftAddress).isApprovedForAll(msg.sender, address(this)), "approve missing" ); if (isFeeRequired(_nftAddress, _nftID)) { require(msg.value >= _calculateFee(), "missing fee"); } IERC1155(_nftAddress).safeTransferFrom( msg.sender, address(this), _nftID, 1, "0x0" ); emit Deposit( _nftAddress, msg.sender, _nftID, ethdropped[_nftAddress][_nftID], msg.value ); ethdropped[_nftAddress][_nftID] = true; } // Called by bridge service function _withdraw( address _to, uint256 _tokenID, address _nftAddress ) external onlyOwner { IERC1155(_nftAddress).safeTransferFrom( address(this), _to, _tokenID, 1, "0x0" ); emit Withdraw(_nftAddress, msg.sender, _tokenID); } function onERC1155Received( address, address, uint256, uint256, bytes memory ) public pure override returns (bytes4) { return bytes4( keccak256("onERC1155Received(address,address,uint256,uint256,bytes)") ); } function supportsInterface(bytes4 interfaceId) public pure override returns (bool) { return interfaceId == type(IERC1155Receiver).interfaceId; } function onERC1155BatchReceived( address, address, uint256[] memory, uint256[] memory, bytes memory ) public pure override returns (bytes4) { return bytes4( keccak256( "onERC1155BatchReceived(address,address,uint256[],uint256[],bytes)" ) ); } function _withdrawETH() external onlyOwner { payable(msg.sender).transfer(address(this).balance); } function withdrawToken(address _tokenContract, uint8 _amount) external onlyOwner { IERC20 tokenContract = IERC20(_tokenContract); tokenContract.transfer(msg.sender, _amount); } }
// SPDX-License-Identifier: MIT pragma solidity ^0.8.0; import "../../utils/introspection/IERC165.sol"; /** * @dev Required interface of an ERC1155 compliant contract, as defined in the * https://eips.ethereum.org/EIPS/eip-1155[EIP]. * * _Available since v3.1._ */ interface IERC1155 is IERC165 { /** * @dev Emitted when `value` tokens of token type `id` are transferred from `from` to `to` by `operator`. */ event TransferSingle(address indexed operator, address indexed from, address indexed to, uint256 id, uint256 value); /** * @dev Equivalent to multiple {TransferSingle} events, where `operator`, `from` and `to` are the same for all * transfers. */ event TransferBatch( address indexed operator, address indexed from, address indexed to, uint256[] ids, uint256[] values ); /** * @dev Emitted when `account` grants or revokes permission to `operator` to transfer their tokens, according to * `approved`. */ event ApprovalForAll(address indexed account, address indexed operator, bool approved); /** * @dev Emitted when the URI for token type `id` changes to `value`, if it is a non-programmatic URI. * * If an {URI} event was emitted for `id`, the standard * https://eips.ethereum.org/EIPS/eip-1155#metadata-extensions[guarantees] that `value` will equal the value * returned by {IERC1155MetadataURI-uri}. */ event URI(string value, uint256 indexed id); /** * @dev Returns the amount of tokens of token type `id` owned by `account`. * * Requirements: * * - `account` cannot be the zero address. */ function balanceOf(address account, uint256 id) external view returns (uint256); /** * @dev xref:ROOT:erc1155.adoc#batch-operations[Batched] version of {balanceOf}. * * Requirements: * * - `accounts` and `ids` must have the same length. */ function balanceOfBatch(address[] calldata accounts, uint256[] calldata ids) external view returns (uint256[] memory); /** * @dev Grants or revokes permission to `operator` to transfer the caller's tokens, according to `approved`, * * Emits an {ApprovalForAll} event. * * Requirements: * * - `operator` cannot be the caller. */ function setApprovalForAll(address operator, bool approved) external; /** * @dev Returns true if `operator` is approved to transfer ``account``'s tokens. * * See {setApprovalForAll}. */ function isApprovedForAll(address account, address operator) external view returns (bool); /** * @dev Transfers `amount` tokens of token type `id` from `from` to `to`. * * Emits a {TransferSingle} event. * * Requirements: * * - `to` cannot be the zero address. * - If the caller is not `from`, it must be have been approved to spend ``from``'s tokens via {setApprovalForAll}. * - `from` must have a balance of tokens of type `id` of at least `amount`. * - If `to` refers to a smart contract, it must implement {IERC1155Receiver-onERC1155Received} and return the * acceptance magic value. */ function safeTransferFrom( address from, address to, uint256 id, uint256 amount, bytes calldata data ) external; /** * @dev xref:ROOT:erc1155.adoc#batch-operations[Batched] version of {safeTransferFrom}. * * Emits a {TransferBatch} event. * * Requirements: * * - `ids` and `amounts` must have the same length. * - If `to` refers to a smart contract, it must implement {IERC1155Receiver-onERC1155BatchReceived} and return the * acceptance magic value. */ function safeBatchTransferFrom( address from, address to, uint256[] calldata ids, uint256[] calldata amounts, bytes calldata data ) external; }
// SPDX-License-Identifier: MIT pragma solidity ^0.8.0; import "../../utils/introspection/IERC165.sol"; /** * @dev _Available since v3.1._ */ interface IERC1155Receiver is IERC165 { /** @dev Handles the receipt of a single ERC1155 token type. This function is called at the end of a `safeTransferFrom` after the balance has been updated. To accept the transfer, this must return `bytes4(keccak256("onERC1155Received(address,address,uint256,uint256,bytes)"))` (i.e. 0xf23a6e61, or its own function selector). @param operator The address which initiated the transfer (i.e. msg.sender) @param from The address which previously owned the token @param id The ID of the token being transferred @param value The amount of tokens being transferred @param data Additional data with no specified format @return `bytes4(keccak256("onERC1155Received(address,address,uint256,uint256,bytes)"))` if transfer is allowed */ function onERC1155Received( address operator, address from, uint256 id, uint256 value, bytes calldata data ) external returns (bytes4); /** @dev Handles the receipt of a multiple ERC1155 token types. This function is called at the end of a `safeBatchTransferFrom` after the balances have been updated. To accept the transfer(s), this must return `bytes4(keccak256("onERC1155BatchReceived(address,address,uint256[],uint256[],bytes)"))` (i.e. 0xbc197c81, or its own function selector). @param operator The address which initiated the batch transfer (i.e. msg.sender) @param from The address which previously owned the token @param ids An array containing ids of each token being transferred (order and length must match values array) @param values An array containing amounts of each token being transferred (order and length must match ids array) @param data Additional data with no specified format @return `bytes4(keccak256("onERC1155BatchReceived(address,address,uint256[],uint256[],bytes)"))` if transfer is allowed */ function onERC1155BatchReceived( address operator, address from, uint256[] calldata ids, uint256[] calldata values, bytes calldata data ) external returns (bytes4); }
// SPDX-License-Identifier: MIT pragma solidity ^0.8.0; /** * @dev Interface of the ERC20 standard as defined in the EIP. */ interface IERC20 { /** * @dev Returns the amount of tokens in existence. */ function totalSupply() external view returns (uint256); /** * @dev Returns the amount of tokens owned by `account`. */ function balanceOf(address account) external view returns (uint256); /** * @dev Moves `amount` tokens from the caller's account to `recipient`. * * Returns a boolean value indicating whether the operation succeeded. * * Emits a {Transfer} event. */ function transfer(address recipient, uint256 amount) external returns (bool); /** * @dev Returns the remaining number of tokens that `spender` will be * allowed to spend on behalf of `owner` through {transferFrom}. This is * zero by default. * * This value changes when {approve} or {transferFrom} are called. */ function allowance(address owner, address spender) external view returns (uint256); /** * @dev Sets `amount` as the allowance of `spender` over the caller's tokens. * * Returns a boolean value indicating whether the operation succeeded. * * IMPORTANT: Beware that changing an allowance with this method brings the risk * that someone may use both the old and the new allowance by unfortunate * transaction ordering. One possible solution to mitigate this race * condition is to first reduce the spender's allowance to 0 and set the * desired value afterwards: * https://github.com/ethereum/EIPs/issues/20#issuecomment-263524729 * * Emits an {Approval} event. */ function approve(address spender, uint256 amount) external returns (bool); /** * @dev Moves `amount` tokens from `sender` to `recipient` using the * allowance mechanism. `amount` is then deducted from the caller's * allowance. * * Returns a boolean value indicating whether the operation succeeded. * * Emits a {Transfer} event. */ function transferFrom( address sender, address recipient, uint256 amount ) external returns (bool); /** * @dev Emitted when `value` tokens are moved from one account (`from`) to * another (`to`). * * Note that `value` may be zero. */ event Transfer(address indexed from, address indexed to, uint256 value); /** * @dev Emitted when the allowance of a `spender` for an `owner` is set by * a call to {approve}. `value` is the new allowance. */ event Approval(address indexed owner, address indexed spender, uint256 value); }
pragma solidity ^0.8.0; contract DIAOracleV2 { mapping (string => uint256) public values; address public oracleUpdater; event OracleUpdate(string key, uint128 value, uint128 timestamp); event UpdaterAddressChange(address newUpdater); constructor() { oracleUpdater = msg.sender; } function setValue(string memory key, uint128 value, uint128 timestamp) public { require(msg.sender == oracleUpdater,"not a updater"); uint256 cValue = (((uint256)(value)) << 128) + timestamp; values[key] = cValue; emit OracleUpdate(key, value, timestamp); } function getValue(string memory key) external view returns (uint128, uint128) { uint256 cValue = values[key]; uint128 timestamp = (uint128)(cValue % 2**128); uint128 value = (uint128)(cValue >> 128); return (value, timestamp); } function updateOracleUpdaterAddress(address newOracleUpdaterAddress) public { require(msg.sender == oracleUpdater,"not a updater"); oracleUpdater = newOracleUpdaterAddress; emit UpdaterAddressChange(newOracleUpdaterAddress); } }
// SPDX-License-Identifier: MIT 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); }
{ "optimizer": { "enabled": false, "runs": 200 }, "outputSelection": { "*": { "*": [ "evm.bytecode", "evm.deployedBytecode", "devdoc", "userdoc", "metadata", "abi" ] } }, "libraries": {} }
Contract Security Audit
- No Contract Security Audit Submitted- Submit Audit Here
[{"inputs":[{"internalType":"address","name":"oracle","type":"address"}],"stateMutability":"nonpayable","type":"constructor"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"_nftAddress","type":"address"},{"indexed":true,"internalType":"address","name":"_from","type":"address"},{"indexed":true,"internalType":"uint256","name":"_nftID","type":"uint256"},{"indexed":false,"internalType":"bool","name":"_ethdropped","type":"bool"},{"indexed":false,"internalType":"uint256","name":"fee","type":"uint256"}],"name":"Deposit","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"_nftAddress","type":"address"},{"indexed":true,"internalType":"address","name":"_from","type":"address"},{"indexed":true,"internalType":"uint256","name":"_nftID","type":"uint256"}],"name":"Withdraw","type":"event"},{"inputs":[],"name":"_calculateFee","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"_newOracle","type":"address"}],"name":"_updateGasOracle","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"uint256","name":"_newGasLimit","type":"uint256"}],"name":"_updateWithdrwaGasLimit","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"_to","type":"address"},{"internalType":"uint256","name":"_tokenID","type":"uint256"},{"internalType":"address","name":"_nftAddress","type":"address"}],"name":"_withdraw","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"_withdrawETH","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"uint256","name":"_nftID","type":"uint256"},{"internalType":"address","name":"_nftAddress","type":"address"}],"name":"deposit","outputs":[],"stateMutability":"payable","type":"function"},{"inputs":[{"internalType":"address","name":"","type":"address"},{"internalType":"uint256","name":"","type":"uint256"}],"name":"ethdropped","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"gasOracle","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"getFee","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"_nftAddress","type":"address"},{"internalType":"uint256","name":"_nftID","type":"uint256"}],"name":"isFeeRequired","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"l2GasFee","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"","type":"address"},{"internalType":"address","name":"","type":"address"},{"internalType":"uint256[]","name":"","type":"uint256[]"},{"internalType":"uint256[]","name":"","type":"uint256[]"},{"internalType":"bytes","name":"","type":"bytes"}],"name":"onERC1155BatchReceived","outputs":[{"internalType":"bytes4","name":"","type":"bytes4"}],"stateMutability":"pure","type":"function"},{"inputs":[{"internalType":"address","name":"","type":"address"},{"internalType":"address","name":"","type":"address"},{"internalType":"uint256","name":"","type":"uint256"},{"internalType":"uint256","name":"","type":"uint256"},{"internalType":"bytes","name":"","type":"bytes"}],"name":"onERC1155Received","outputs":[{"internalType":"bytes4","name":"","type":"bytes4"}],"stateMutability":"pure","type":"function"},{"inputs":[],"name":"owner","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"bytes4","name":"interfaceId","type":"bytes4"}],"name":"supportsInterface","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"pure","type":"function"},{"inputs":[],"name":"withdrawGasLimit","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"_tokenContract","type":"address"},{"internalType":"uint8","name":"_amount","type":"uint8"}],"name":"withdrawToken","outputs":[],"stateMutability":"nonpayable","type":"function"}]
Contract Creation Code
60806040523480156200001157600080fd5b5060405162001988380380620019888339818101604052810190620000379190620000d6565b336000806101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555080600260006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055505062000150565b600081519050620000d08162000136565b92915050565b600060208284031215620000e957600080fd5b6000620000f984828501620000bf565b91505092915050565b60006200010f8262000116565b9050919050565b600073ffffffffffffffffffffffffffffffffffffffff82169050919050565b620001418162000102565b81146200014d57600080fd5b50565b61182880620001606000396000f3fe6080604052600436106100fe5760003560e01c80638ac7d29611610095578063bc197c8111610064578063bc197c8114610314578063ced72f8714610351578063e6e0a87e1461037c578063eeab06e0146103a7578063f23a6e61146103d0576100fe565b80638ac7d296146102585780638b679419146102835780638da5cb5b146102c0578063b38bd7d8146102eb576100fe565b80635d62a8dd116100d15780635d62a8dd146101a95780636e553f65146101d4578063795de774146101f057806386e901831461022d576100fe565b806301ffc9a714610103578063208eba04146101405780633b4539cb1461016957806346961da414610180575b600080fd5b34801561010f57600080fd5b5061012a60048036038101906101259190611107565b61040d565b604051610137919061137c565b60405180910390f35b34801561014c57600080fd5b5061016760048036038101906101629190611053565b610477565b005b34801561017557600080fd5b5061017e6105a1565b005b34801561018c57600080fd5b506101a760048036038101906101a2919061116c565b610642565b005b3480156101b557600080fd5b506101be6106a4565b6040516101cb91906112b7565b60405180910390f35b6101ee60048036038101906101e99190611195565b6106ca565b005b3480156101fc57600080fd5b5061021760048036038101906102129190611017565b610992565b604051610224919061137c565b60405180910390f35b34801561023957600080fd5b506102426109fa565b60405161024f919061143b565b60405180910390f35b34801561026457600080fd5b5061026d610ace565b60405161027a919061143b565b60405180910390f35b34801561028f57600080fd5b506102aa60048036038101906102a59190611017565b610ad4565b6040516102b7919061137c565b60405180910390f35b3480156102cc57600080fd5b506102d5610b03565b6040516102e291906112b7565b60405180910390f35b3480156102f757600080fd5b50610312600480360381019061030d91906110a2565b610b27565b005b34801561032057600080fd5b5061033b60048036038101906103369190610ec9565b610c17565b60405161034891906113c0565b60405180910390f35b34801561035d57600080fd5b50610366610c45565b604051610373919061143b565b60405180910390f35b34801561038857600080fd5b50610391610c54565b60405161039e919061143b565b60405180910390f35b3480156103b357600080fd5b506103ce60048036038101906103c99190610ea0565b610c5a565b005b3480156103dc57600080fd5b506103f760048036038101906103f29190610f88565b610cf6565b60405161040491906113c0565b60405180910390f35b60007f4e2312e0000000000000000000000000000000000000000000000000000000007bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916827bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916149050919050565b60008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff16146104cf57600080fd5b8073ffffffffffffffffffffffffffffffffffffffff1663f242432a30858560016040518563ffffffff1660e01b815260040161050f94939291906112fb565b600060405180830381600087803b15801561052957600080fd5b505af115801561053d573d6000803e3d6000fd5b50505050813373ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff167f9b1bfa7fa9ee420a16e124f794c35ac9f90472acc99140eb2f6447c714cad8eb60405160405180910390a4505050565b60008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff16146105f957600080fd5b3373ffffffffffffffffffffffffffffffffffffffff166108fc479081150290604051600060405180830381858888f1935050505015801561063f573d6000803e3d6000fd5b50565b60008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff161461069a57600080fd5b8060038190555050565b600260009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b8073ffffffffffffffffffffffffffffffffffffffff1663e985e9c533306040518363ffffffff1660e01b81526004016107059291906112d2565b60206040518083038186803b15801561071d57600080fd5b505afa158015610731573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061075591906110de565b610794576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161078b906113db565b60405180910390fd5b61079e8183610992565b156107ee576107ab6109fa565b3410156107ed576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016107e49061141b565b60405180910390fd5b5b8073ffffffffffffffffffffffffffffffffffffffff1663f242432a33308560016040518563ffffffff1660e01b815260040161082e94939291906112fb565b600060405180830381600087803b15801561084857600080fd5b505af115801561085c573d6000803e3d6000fd5b50505050813373ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff167f33d281fd5c72041369acf31a5788c4cb4e22feff949585f1e25a2da68e3d4d26600460008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600087815260200190815260200160002060009054906101000a900460ff163460405161091d929190611397565b60405180910390a46001600460008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600084815260200190815260200160002060006101000a81548160ff0219169083151502179055505050565b6000600460008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600083815260200190815260200160002060009054906101000a900460ff16905092915050565b600080600260009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663960384a06040518163ffffffff1660e01b8152600401610a56906113fb565b604080518083038186803b158015610a6d57600080fd5b505afa158015610a81573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610aa59190611130565b509050600354816fffffffffffffffffffffffffffffffff16610ac891906114fa565b91505090565b60035481565b60046020528160005260406000206020528060005260406000206000915091509054906101000a900460ff1681565b60008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b60008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614610b7f57600080fd5b60008290508073ffffffffffffffffffffffffffffffffffffffff1663a9059cbb33846040518363ffffffff1660e01b8152600401610bbf929190611353565b602060405180830381600087803b158015610bd957600080fd5b505af1158015610bed573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610c1191906110de565b50505050565b60007fbc197c819b3e337a6f9652dd10becd7eef83032af3b9d958d3d42f6694146621905095945050505050565b6000610c4f6109fa565b905090565b60015481565b60008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614610cb257600080fd5b80600260006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555050565b60007ff23a6e612e1ff4830e658fe43f4e3cb4a5f8170bd5d9e69fb5d7a7fa9e4fdf97905095945050505050565b6000610d37610d328461147b565b611456565b90508083825260208201905082856020860282011115610d5657600080fd5b60005b85811015610d865781610d6c8882610e76565b845260208401935060208301925050600181019050610d59565b5050509392505050565b6000610da3610d9e846114a7565b611456565b905082815260208101848484011115610dbb57600080fd5b610dc6848285611615565b509392505050565b600081359050610ddd81611768565b92915050565b600082601f830112610df457600080fd5b8135610e04848260208601610d24565b91505092915050565b600081519050610e1c8161177f565b92915050565b600081359050610e3181611796565b92915050565b600082601f830112610e4857600080fd5b8135610e58848260208601610d90565b91505092915050565b600081519050610e70816117ad565b92915050565b600081359050610e85816117c4565b92915050565b600081359050610e9a816117db565b92915050565b600060208284031215610eb257600080fd5b6000610ec084828501610dce565b91505092915050565b600080600080600060a08688031215610ee157600080fd5b6000610eef88828901610dce565b9550506020610f0088828901610dce565b945050604086013567ffffffffffffffff811115610f1d57600080fd5b610f2988828901610de3565b935050606086013567ffffffffffffffff811115610f4657600080fd5b610f5288828901610de3565b925050608086013567ffffffffffffffff811115610f6f57600080fd5b610f7b88828901610e37565b9150509295509295909350565b600080600080600060a08688031215610fa057600080fd5b6000610fae88828901610dce565b9550506020610fbf88828901610dce565b9450506040610fd088828901610e76565b9350506060610fe188828901610e76565b925050608086013567ffffffffffffffff811115610ffe57600080fd5b61100a88828901610e37565b9150509295509295909350565b6000806040838503121561102a57600080fd5b600061103885828601610dce565b925050602061104985828601610e76565b9150509250929050565b60008060006060848603121561106857600080fd5b600061107686828701610dce565b935050602061108786828701610e76565b925050604061109886828701610dce565b9150509250925092565b600080604083850312156110b557600080fd5b60006110c385828601610dce565b92505060206110d485828601610e8b565b9150509250929050565b6000602082840312156110f057600080fd5b60006110fe84828501610e0d565b91505092915050565b60006020828403121561111957600080fd5b600061112784828501610e22565b91505092915050565b6000806040838503121561114357600080fd5b600061115185828601610e61565b925050602061116285828601610e61565b9150509250929050565b60006020828403121561117e57600080fd5b600061118c84828501610e76565b91505092915050565b600080604083850312156111a857600080fd5b60006111b685828601610e76565b92505060206111c785828601610dce565b9150509250929050565b6111da81611554565b82525050565b6111e981611566565b82525050565b6111f881611572565b82525050565b611207816115f1565b82525050565b600061121a600f836114e9565b9150611225826116c4565b602082019050919050565b600061123d6003836114d8565b9150611248826116ed565b602082019050919050565b60006112606007836114e9565b915061126b82611716565b602082019050919050565b6000611283600b836114e9565b915061128e8261173f565b602082019050919050565b6112a2816115da565b82525050565b6112b181611603565b82525050565b60006020820190506112cc60008301846111d1565b92915050565b60006040820190506112e760008301856111d1565b6112f460208301846111d1565b9392505050565b600060a08201905061131060008301876111d1565b61131d60208301866111d1565b61132a6040830185611299565b61133760608301846111fe565b818103608083015261134881611230565b905095945050505050565b600060408201905061136860008301856111d1565b61137560208301846112a8565b9392505050565b600060208201905061139160008301846111e0565b92915050565b60006040820190506113ac60008301856111e0565b6113b96020830184611299565b9392505050565b60006020820190506113d560008301846111ef565b92915050565b600060208201905081810360008301526113f48161120d565b9050919050565b6000602082019050818103600083015261141481611253565b9050919050565b6000602082019050818103600083015261143481611276565b9050919050565b60006020820190506114506000830184611299565b92915050565b6000611460611471565b905061146c8282611624565b919050565b6000604051905090565b600067ffffffffffffffff82111561149657611495611684565b5b602082029050602081019050919050565b600067ffffffffffffffff8211156114c2576114c1611684565b5b6114cb826116b3565b9050602081019050919050565b600082825260208201905092915050565b600082825260208201905092915050565b6000611505826115da565b9150611510836115da565b9250817fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff048311821515161561154957611548611655565b5b828202905092915050565b600061155f826115ba565b9050919050565b60008115159050919050565b60007fffffffff0000000000000000000000000000000000000000000000000000000082169050919050565b60006fffffffffffffffffffffffffffffffff82169050919050565b600073ffffffffffffffffffffffffffffffffffffffff82169050919050565b6000819050919050565b600060ff82169050919050565b60006115fc826115da565b9050919050565b600061160e826115e4565b9050919050565b82818337600083830152505050565b61162d826116b3565b810181811067ffffffffffffffff8211171561164c5761164b611684565b5b80604052505050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b6000601f19601f8301169050919050565b7f617070726f7665206d697373696e670000000000000000000000000000000000600082015250565b7f3078300000000000000000000000000000000000000000000000000000000000600082015250565b7f4741535f41524200000000000000000000000000000000000000000000000000600082015250565b7f6d697373696e6720666565000000000000000000000000000000000000000000600082015250565b61177181611554565b811461177c57600080fd5b50565b61178881611566565b811461179357600080fd5b50565b61179f81611572565b81146117aa57600080fd5b50565b6117b68161159e565b81146117c157600080fd5b50565b6117cd816115da565b81146117d857600080fd5b50565b6117e4816115e4565b81146117ef57600080fd5b5056fea26469706673582212200211a71ee756adcec4967ee13fac5081349eb02914cfd376b8a41ec7c2d0eb9064736f6c63430008040033000000000000000000000000ba61083ea1d31335af2a0057de28451edf30a792
Deployed Bytecode
0x6080604052600436106100fe5760003560e01c80638ac7d29611610095578063bc197c8111610064578063bc197c8114610314578063ced72f8714610351578063e6e0a87e1461037c578063eeab06e0146103a7578063f23a6e61146103d0576100fe565b80638ac7d296146102585780638b679419146102835780638da5cb5b146102c0578063b38bd7d8146102eb576100fe565b80635d62a8dd116100d15780635d62a8dd146101a95780636e553f65146101d4578063795de774146101f057806386e901831461022d576100fe565b806301ffc9a714610103578063208eba04146101405780633b4539cb1461016957806346961da414610180575b600080fd5b34801561010f57600080fd5b5061012a60048036038101906101259190611107565b61040d565b604051610137919061137c565b60405180910390f35b34801561014c57600080fd5b5061016760048036038101906101629190611053565b610477565b005b34801561017557600080fd5b5061017e6105a1565b005b34801561018c57600080fd5b506101a760048036038101906101a2919061116c565b610642565b005b3480156101b557600080fd5b506101be6106a4565b6040516101cb91906112b7565b60405180910390f35b6101ee60048036038101906101e99190611195565b6106ca565b005b3480156101fc57600080fd5b5061021760048036038101906102129190611017565b610992565b604051610224919061137c565b60405180910390f35b34801561023957600080fd5b506102426109fa565b60405161024f919061143b565b60405180910390f35b34801561026457600080fd5b5061026d610ace565b60405161027a919061143b565b60405180910390f35b34801561028f57600080fd5b506102aa60048036038101906102a59190611017565b610ad4565b6040516102b7919061137c565b60405180910390f35b3480156102cc57600080fd5b506102d5610b03565b6040516102e291906112b7565b60405180910390f35b3480156102f757600080fd5b50610312600480360381019061030d91906110a2565b610b27565b005b34801561032057600080fd5b5061033b60048036038101906103369190610ec9565b610c17565b60405161034891906113c0565b60405180910390f35b34801561035d57600080fd5b50610366610c45565b604051610373919061143b565b60405180910390f35b34801561038857600080fd5b50610391610c54565b60405161039e919061143b565b60405180910390f35b3480156103b357600080fd5b506103ce60048036038101906103c99190610ea0565b610c5a565b005b3480156103dc57600080fd5b506103f760048036038101906103f29190610f88565b610cf6565b60405161040491906113c0565b60405180910390f35b60007f4e2312e0000000000000000000000000000000000000000000000000000000007bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916827bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916149050919050565b60008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff16146104cf57600080fd5b8073ffffffffffffffffffffffffffffffffffffffff1663f242432a30858560016040518563ffffffff1660e01b815260040161050f94939291906112fb565b600060405180830381600087803b15801561052957600080fd5b505af115801561053d573d6000803e3d6000fd5b50505050813373ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff167f9b1bfa7fa9ee420a16e124f794c35ac9f90472acc99140eb2f6447c714cad8eb60405160405180910390a4505050565b60008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff16146105f957600080fd5b3373ffffffffffffffffffffffffffffffffffffffff166108fc479081150290604051600060405180830381858888f1935050505015801561063f573d6000803e3d6000fd5b50565b60008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff161461069a57600080fd5b8060038190555050565b600260009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b8073ffffffffffffffffffffffffffffffffffffffff1663e985e9c533306040518363ffffffff1660e01b81526004016107059291906112d2565b60206040518083038186803b15801561071d57600080fd5b505afa158015610731573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061075591906110de565b610794576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161078b906113db565b60405180910390fd5b61079e8183610992565b156107ee576107ab6109fa565b3410156107ed576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016107e49061141b565b60405180910390fd5b5b8073ffffffffffffffffffffffffffffffffffffffff1663f242432a33308560016040518563ffffffff1660e01b815260040161082e94939291906112fb565b600060405180830381600087803b15801561084857600080fd5b505af115801561085c573d6000803e3d6000fd5b50505050813373ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff167f33d281fd5c72041369acf31a5788c4cb4e22feff949585f1e25a2da68e3d4d26600460008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600087815260200190815260200160002060009054906101000a900460ff163460405161091d929190611397565b60405180910390a46001600460008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600084815260200190815260200160002060006101000a81548160ff0219169083151502179055505050565b6000600460008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600083815260200190815260200160002060009054906101000a900460ff16905092915050565b600080600260009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663960384a06040518163ffffffff1660e01b8152600401610a56906113fb565b604080518083038186803b158015610a6d57600080fd5b505afa158015610a81573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610aa59190611130565b509050600354816fffffffffffffffffffffffffffffffff16610ac891906114fa565b91505090565b60035481565b60046020528160005260406000206020528060005260406000206000915091509054906101000a900460ff1681565b60008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b60008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614610b7f57600080fd5b60008290508073ffffffffffffffffffffffffffffffffffffffff1663a9059cbb33846040518363ffffffff1660e01b8152600401610bbf929190611353565b602060405180830381600087803b158015610bd957600080fd5b505af1158015610bed573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610c1191906110de565b50505050565b60007fbc197c819b3e337a6f9652dd10becd7eef83032af3b9d958d3d42f6694146621905095945050505050565b6000610c4f6109fa565b905090565b60015481565b60008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614610cb257600080fd5b80600260006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555050565b60007ff23a6e612e1ff4830e658fe43f4e3cb4a5f8170bd5d9e69fb5d7a7fa9e4fdf97905095945050505050565b6000610d37610d328461147b565b611456565b90508083825260208201905082856020860282011115610d5657600080fd5b60005b85811015610d865781610d6c8882610e76565b845260208401935060208301925050600181019050610d59565b5050509392505050565b6000610da3610d9e846114a7565b611456565b905082815260208101848484011115610dbb57600080fd5b610dc6848285611615565b509392505050565b600081359050610ddd81611768565b92915050565b600082601f830112610df457600080fd5b8135610e04848260208601610d24565b91505092915050565b600081519050610e1c8161177f565b92915050565b600081359050610e3181611796565b92915050565b600082601f830112610e4857600080fd5b8135610e58848260208601610d90565b91505092915050565b600081519050610e70816117ad565b92915050565b600081359050610e85816117c4565b92915050565b600081359050610e9a816117db565b92915050565b600060208284031215610eb257600080fd5b6000610ec084828501610dce565b91505092915050565b600080600080600060a08688031215610ee157600080fd5b6000610eef88828901610dce565b9550506020610f0088828901610dce565b945050604086013567ffffffffffffffff811115610f1d57600080fd5b610f2988828901610de3565b935050606086013567ffffffffffffffff811115610f4657600080fd5b610f5288828901610de3565b925050608086013567ffffffffffffffff811115610f6f57600080fd5b610f7b88828901610e37565b9150509295509295909350565b600080600080600060a08688031215610fa057600080fd5b6000610fae88828901610dce565b9550506020610fbf88828901610dce565b9450506040610fd088828901610e76565b9350506060610fe188828901610e76565b925050608086013567ffffffffffffffff811115610ffe57600080fd5b61100a88828901610e37565b9150509295509295909350565b6000806040838503121561102a57600080fd5b600061103885828601610dce565b925050602061104985828601610e76565b9150509250929050565b60008060006060848603121561106857600080fd5b600061107686828701610dce565b935050602061108786828701610e76565b925050604061109886828701610dce565b9150509250925092565b600080604083850312156110b557600080fd5b60006110c385828601610dce565b92505060206110d485828601610e8b565b9150509250929050565b6000602082840312156110f057600080fd5b60006110fe84828501610e0d565b91505092915050565b60006020828403121561111957600080fd5b600061112784828501610e22565b91505092915050565b6000806040838503121561114357600080fd5b600061115185828601610e61565b925050602061116285828601610e61565b9150509250929050565b60006020828403121561117e57600080fd5b600061118c84828501610e76565b91505092915050565b600080604083850312156111a857600080fd5b60006111b685828601610e76565b92505060206111c785828601610dce565b9150509250929050565b6111da81611554565b82525050565b6111e981611566565b82525050565b6111f881611572565b82525050565b611207816115f1565b82525050565b600061121a600f836114e9565b9150611225826116c4565b602082019050919050565b600061123d6003836114d8565b9150611248826116ed565b602082019050919050565b60006112606007836114e9565b915061126b82611716565b602082019050919050565b6000611283600b836114e9565b915061128e8261173f565b602082019050919050565b6112a2816115da565b82525050565b6112b181611603565b82525050565b60006020820190506112cc60008301846111d1565b92915050565b60006040820190506112e760008301856111d1565b6112f460208301846111d1565b9392505050565b600060a08201905061131060008301876111d1565b61131d60208301866111d1565b61132a6040830185611299565b61133760608301846111fe565b818103608083015261134881611230565b905095945050505050565b600060408201905061136860008301856111d1565b61137560208301846112a8565b9392505050565b600060208201905061139160008301846111e0565b92915050565b60006040820190506113ac60008301856111e0565b6113b96020830184611299565b9392505050565b60006020820190506113d560008301846111ef565b92915050565b600060208201905081810360008301526113f48161120d565b9050919050565b6000602082019050818103600083015261141481611253565b9050919050565b6000602082019050818103600083015261143481611276565b9050919050565b60006020820190506114506000830184611299565b92915050565b6000611460611471565b905061146c8282611624565b919050565b6000604051905090565b600067ffffffffffffffff82111561149657611495611684565b5b602082029050602081019050919050565b600067ffffffffffffffff8211156114c2576114c1611684565b5b6114cb826116b3565b9050602081019050919050565b600082825260208201905092915050565b600082825260208201905092915050565b6000611505826115da565b9150611510836115da565b9250817fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff048311821515161561154957611548611655565b5b828202905092915050565b600061155f826115ba565b9050919050565b60008115159050919050565b60007fffffffff0000000000000000000000000000000000000000000000000000000082169050919050565b60006fffffffffffffffffffffffffffffffff82169050919050565b600073ffffffffffffffffffffffffffffffffffffffff82169050919050565b6000819050919050565b600060ff82169050919050565b60006115fc826115da565b9050919050565b600061160e826115e4565b9050919050565b82818337600083830152505050565b61162d826116b3565b810181811067ffffffffffffffff8211171561164c5761164b611684565b5b80604052505050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b6000601f19601f8301169050919050565b7f617070726f7665206d697373696e670000000000000000000000000000000000600082015250565b7f3078300000000000000000000000000000000000000000000000000000000000600082015250565b7f4741535f41524200000000000000000000000000000000000000000000000000600082015250565b7f6d697373696e6720666565000000000000000000000000000000000000000000600082015250565b61177181611554565b811461177c57600080fd5b50565b61178881611566565b811461179357600080fd5b50565b61179f81611572565b81146117aa57600080fd5b50565b6117b68161159e565b81146117c157600080fd5b50565b6117cd816115da565b81146117d857600080fd5b50565b6117e4816115e4565b81146117ef57600080fd5b5056fea26469706673582212200211a71ee756adcec4967ee13fac5081349eb02914cfd376b8a41ec7c2d0eb9064736f6c63430008040033
Constructor Arguments (ABI-Encoded and is the last bytes of the Contract Creation Code above)
000000000000000000000000ba61083ea1d31335af2a0057de28451edf30a792
-----Decoded View---------------
Arg [0] : oracle (address): 0xBa61083eA1D31335af2a0057dE28451edF30a792
-----Encoded View---------------
1 Constructor Arguments found :
Arg [0] : 000000000000000000000000ba61083ea1d31335af2a0057de28451edf30a792
Loading...
Loading
Loading...
Loading
Multichain Portfolio | 30 Chains
Chain | Token | Portfolio % | Price | Amount | Value |
---|---|---|---|---|---|
ETH | Ether (ETH) | 100.00% | $3,302.71 | 0.00003014 | $0.099551 |
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.