Feature Tip: Add private address tag to any address under My Name Tag !
Overview
ETH Balance
0.04314 ETH
Eth Value
$71.02 (@ $1,646.21/ETH)More Info
Private Name Tags
ContractCreator
Multi Chain
Multichain Addresses
12 addresses found via
Latest 25 from a total of 73 transactions
Transaction Hash |
Method
|
Block
|
From
|
To
|
Value | ||||
---|---|---|---|---|---|---|---|---|---|
Bid | 17407972 | 121 days 12 mins ago | IN | 0.00001 ETH | 0.00205828 | ||||
Cancel Listing | 17282086 | 138 days 17 hrs ago | IN | 0 ETH | 0.00216144 | ||||
List | 17148098 | 157 days 15 hrs ago | IN | 0 ETH | 0.00295865 | ||||
List | 17142280 | 158 days 10 hrs ago | IN | 0 ETH | 0.00257759 | ||||
Buy | 17029316 | 174 days 11 hrs ago | IN | 0.0001 ETH | 0.00645028 | ||||
List | 17029299 | 174 days 11 hrs ago | IN | 0 ETH | 0.00148978 | ||||
List | 17027889 | 174 days 16 hrs ago | IN | 0 ETH | 0.00176672 | ||||
Bid | 16989015 | 180 days 4 hrs ago | IN | 0.0007 ETH | 0.00199561 | ||||
List | 16965316 | 183 days 13 hrs ago | IN | 0 ETH | 0.00118126 | ||||
Bid | 16927297 | 188 days 21 hrs ago | IN | 0.001 ETH | 0.00235672 | ||||
Cancel Listing | 16922583 | 189 days 13 hrs ago | IN | 0 ETH | 0.00055708 | ||||
Buy | 16913318 | 190 days 20 hrs ago | IN | 0.00069 ETH | 0.0059718 | ||||
List | 16902092 | 192 days 10 hrs ago | IN | 0 ETH | 0.00102173 | ||||
Cancel Listing | 16902034 | 192 days 10 hrs ago | IN | 0 ETH | 0.00032344 | ||||
List | 16902029 | 192 days 10 hrs ago | IN | 0 ETH | 0.00095841 | ||||
Bid | 16879419 | 195 days 15 hrs ago | IN | 0.005 ETH | 0.00116817 | ||||
Bid | 16837426 | 201 days 12 hrs ago | IN | 0.00003 ETH | 0.00150931 | ||||
List | 16791802 | 207 days 22 hrs ago | IN | 0 ETH | 0.00269225 | ||||
List | 16775349 | 210 days 6 hrs ago | IN | 0 ETH | 0.00200441 | ||||
List | 16773113 | 210 days 13 hrs ago | IN | 0 ETH | 0.00242675 | ||||
Buy | 16772320 | 210 days 16 hrs ago | IN | 1 ETH | 0.01017482 | ||||
List | 16772312 | 210 days 16 hrs ago | IN | 0 ETH | 0.00247934 | ||||
List | 16764617 | 211 days 18 hrs ago | IN | 0 ETH | 0.00204029 | ||||
List | 16759269 | 212 days 12 hrs ago | IN | 0 ETH | 0.00190006 | ||||
List | 16757384 | 212 days 18 hrs ago | IN | 0 ETH | 0.0022873 |
Latest 25 internal transactions (View All)
Parent Txn Hash | Block | From | To | Value | ||
---|---|---|---|---|---|---|
17029316 | 174 days 11 hrs ago | 0.00009 ETH | ||||
17029316 | 174 days 11 hrs ago | 0.00001 ETH | ||||
16913318 | 190 days 20 hrs ago | 0.000621 ETH | ||||
16913318 | 190 days 20 hrs ago | 0.000069 ETH | ||||
16772320 | 210 days 16 hrs ago | 0.9 ETH | ||||
16772320 | 210 days 16 hrs ago | 0.1 ETH | ||||
16756989 | 212 days 20 hrs ago | 0.00045 ETH | ||||
16756989 | 212 days 20 hrs ago | 0.00005 ETH | ||||
16743151 | 214 days 18 hrs ago | 0.27 ETH | ||||
16743151 | 214 days 18 hrs ago | 0.03 ETH | ||||
16735805 | 215 days 19 hrs ago | 0.081 ETH | ||||
16735805 | 215 days 19 hrs ago | 0.009 ETH | ||||
16730872 | 216 days 12 hrs ago | 0.000009 ETH | ||||
16730872 | 216 days 12 hrs ago | 0.000001 ETH | ||||
16716096 | 218 days 14 hrs ago | 0.00378 ETH | ||||
16716096 | 218 days 14 hrs ago | 0.00042 ETH | ||||
16695009 | 221 days 13 hrs ago | 0.009 ETH | ||||
16695009 | 221 days 13 hrs ago | 0.001 ETH | ||||
16586164 | 236 days 19 hrs ago | 0.039951 ETH | ||||
16586164 | 236 days 19 hrs ago | 0.004439 ETH | ||||
16545202 | 242 days 12 hrs ago | 0.09 ETH | ||||
16545202 | 242 days 12 hrs ago | 0.01 ETH | ||||
16532445 | 244 days 7 hrs ago | 0.045 ETH | ||||
16532445 | 244 days 7 hrs ago | 0.005 ETH | ||||
16529690 | 244 days 17 hrs ago | 0.009 ETH |
Loading...
Loading
Contract Name:
LiquidDelegateMarket
Compiler Version
v0.8.17+commit.8df45f5f
Optimization Enabled:
Yes with 200 runs
Other Settings:
default evmVersion
Contract Source Code (Solidity Standard Json-Input format)
// SPDX-License-Identifier: CC0-1.0 pragma solidity ^0.8.17; import {IERC721} from "openzeppelin-contracts/contracts/token/ERC721/IERC721.sol"; import {IERC2981} from "openzeppelin-contracts/contracts/interfaces/IERC2981.sol"; /** * Built with <3 by 0xfoobar */ contract LiquidDelegateMarket { address public immutable LIQUID_DELEGATE; struct Bid { address bidder; uint96 rightsId; uint256 weiAmount; } struct Listing { address seller; uint96 rightsId; uint256 weiAmount; } /// @notice A mapping pointing bid ids to bid structs mapping(uint256 => Bid) public bids; /// @notice A mapping pointing listing ids to listing structs mapping(uint256 => Listing) public listings; /// @notice The next bid id to be created uint256 public nextBidId = 1; /// @notice The next listing id to be created uint256 public nextListingId = 1; /// @notice Emitted when a bid is created event BidCreated(uint256 indexed bidId, address indexed bidder, uint256 indexed rightsId, uint256 weiAmount); /// @notice Emitted when a bid is canceled or fulfilled event BidCanceled(uint256 indexed bidId, address indexed bidder, uint256 indexed rightsId, uint256 weiAmount); /// @notice Emitted when a listing is created event ListingCreated(uint256 indexed listingId, address indexed seller, uint256 indexed rightsId, uint256 weiAmount); /// @notice Emitted when a listing is canceled or fulfilled event ListingCanceled(uint256 indexed listingId, address indexed seller, uint256 indexed rightsId, uint256 weiAmount); /// @notice Emitted when a liquid delegate is sold event Sale(uint256 indexed rightsId, address indexed buyer, address indexed seller, uint256 weiAmount); constructor(address _liquidDelegate) { LIQUID_DELEGATE = _liquidDelegate; } /// @notice Create a bid to buy a liquid delegate /// @param rightsId The id of the liquid delegate function bid(uint256 rightsId) external payable { bids[nextBidId] = Bid({ bidder: msg.sender, rightsId: uint96(rightsId), weiAmount: msg.value }); emit BidCreated(nextBidId++, msg.sender, rightsId, msg.value); } /// @notice Cancel your bid /// @param bidId The id of the bid to cancel function cancelBid(uint256 bidId) external { // Move data into memory to delete the bid data first, preventing reentrancy Bid memory bid = bids[bidId]; uint256 rightsId = bid.rightsId; uint256 bidAmount = bid.weiAmount; address bidder = bid.bidder; delete bids[bidId]; require(msg.sender == bidder, "NOT_YOUR_BID"); _pay(payable(bidder), bidAmount, true); emit BidCanceled(bidId, bidder, rightsId, bidAmount); } /// @notice Create a new listing to sell your liquid delegate /// @param rightsId The id of the liquid delegate /// @param weiAmount The amount to sell for function list(uint256 rightsId, uint256 weiAmount) external { listings[nextListingId] = Listing({ seller: msg.sender, rightsId: uint96(rightsId), weiAmount: weiAmount }); emit ListingCreated(nextListingId++, msg.sender, rightsId, weiAmount); } /// @notice Cancel your own listing /// @param listingId The id of the listing function cancelListing(uint256 listingId) external { // No re-entrancy possible here, no external calls Listing memory listing = listings[listingId]; require(msg.sender == listing.seller, "NOT_YOUR_LISTING"); emit ListingCanceled(listingId, msg.sender, listing.rightsId, listing.weiAmount); delete listings[listingId]; } /// @notice Fulfill a listing and buy a liquid delegate /// @param listingId The id of the listing, not the liquid delegate function buy(uint256 listingId) external payable { Listing memory listing = listings[listingId]; address seller = listing.seller; uint256 listPrice = listing.weiAmount; uint256 rightsId = listing.rightsId; delete listings[listingId]; address currentOwner = IERC721(LIQUID_DELEGATE).ownerOf(rightsId); require(msg.value == listPrice, "WRONG_PRICE"); require(currentOwner == seller, "NOT_OWNER"); IERC721(LIQUID_DELEGATE).transferFrom(currentOwner, msg.sender, rightsId); (address receiver, uint256 royaltyAmount) = IERC2981(LIQUID_DELEGATE).royaltyInfo(rightsId, listPrice); _pay(payable(receiver), royaltyAmount, true); _pay(payable(currentOwner), listPrice - royaltyAmount, true); emit ListingCanceled(listingId, seller, rightsId, listPrice); emit Sale(rightsId, msg.sender, currentOwner, listPrice); } /// @notice Accept a bid and sell your liquid delegate /// @param bidId The id of the bid, not the liquid delegate function sell(uint256 bidId) external { // Move data into memory to delete the bid data first, preventing reentrancy Bid memory bid = bids[bidId]; uint256 rightsId = bid.rightsId; uint256 bidAmount = bid.weiAmount; address bidder = bid.bidder; delete bids[bidId]; address currentOwner = IERC721(LIQUID_DELEGATE).ownerOf(rightsId); require(currentOwner == msg.sender, "NOT_OWNER"); IERC721(LIQUID_DELEGATE).transferFrom(currentOwner, bidder, rightsId); (address receiver, uint256 royaltyAmount) = IERC2981(LIQUID_DELEGATE).royaltyInfo(rightsId, bidAmount); _pay(payable(receiver), royaltyAmount, true); _pay(payable(currentOwner), bidAmount - royaltyAmount, true); emit BidCanceled(bidId, bidder, rightsId, bidAmount); emit Sale(rightsId, bidder, currentOwner, bidAmount); } /// @dev Send ether function _pay(address payable recipient, uint256 amount, bool errorOnFail) internal { (bool sent,) = recipient.call{value: amount}(""); require(sent || errorOnFail, "SEND_ETHER_FAILED"); } }
// SPDX-License-Identifier: MIT // OpenZeppelin Contracts (last updated v4.6.0) (interfaces/IERC2981.sol) pragma solidity ^0.8.0; import "../utils/introspection/IERC165.sol"; /** * @dev Interface for the NFT Royalty Standard. * * A standardized way to retrieve royalty payment information for non-fungible tokens (NFTs) to enable universal * support for royalty payments across all NFT marketplaces and ecosystem participants. * * _Available since v4.5._ */ interface IERC2981 is IERC165 { /** * @dev Returns how much royalty is owed and to whom, based on a sale price that may be denominated in any unit of * exchange. The royalty amount is denominated and should be paid in that same unit of exchange. */ function royaltyInfo( uint256 tokenId, uint256 salePrice ) external view returns (address receiver, uint256 royaltyAmount); }
// SPDX-License-Identifier: MIT // OpenZeppelin Contracts (last updated v4.8.0) (token/ERC721/IERC721.sol) pragma solidity ^0.8.0; import "../../utils/introspection/IERC165.sol"; /** * @dev Required interface of an ERC721 compliant contract. */ interface IERC721 is IERC165 { /** * @dev Emitted when `tokenId` token is transferred from `from` to `to`. */ event Transfer(address indexed from, address indexed to, uint256 indexed tokenId); /** * @dev Emitted when `owner` enables `approved` to manage the `tokenId` token. */ event Approval(address indexed owner, address indexed approved, uint256 indexed tokenId); /** * @dev Emitted when `owner` enables or disables (`approved`) `operator` to manage all of its assets. */ event ApprovalForAll(address indexed owner, address indexed operator, bool approved); /** * @dev Returns the number of tokens in ``owner``'s account. */ function balanceOf(address owner) external view returns (uint256 balance); /** * @dev Returns the owner of the `tokenId` token. * * Requirements: * * - `tokenId` must exist. */ function ownerOf(uint256 tokenId) external view returns (address owner); /** * @dev Safely transfers `tokenId` token from `from` to `to`. * * Requirements: * * - `from` cannot be the zero address. * - `to` cannot be the zero address. * - `tokenId` token must exist and be owned by `from`. * - If the caller is not `from`, it must be approved to move this token by either {approve} or {setApprovalForAll}. * - If `to` refers to a smart contract, it must implement {IERC721Receiver-onERC721Received}, which is called upon a safe transfer. * * Emits a {Transfer} event. */ function safeTransferFrom(address from, address to, uint256 tokenId, bytes calldata data) external; /** * @dev Safely transfers `tokenId` token from `from` to `to`, checking first that contract recipients * are aware of the ERC721 protocol to prevent tokens from being forever locked. * * Requirements: * * - `from` cannot be the zero address. * - `to` cannot be the zero address. * - `tokenId` token must exist and be owned by `from`. * - If the caller is not `from`, it must have been allowed to move this token by either {approve} or {setApprovalForAll}. * - If `to` refers to a smart contract, it must implement {IERC721Receiver-onERC721Received}, which is called upon a safe transfer. * * Emits a {Transfer} event. */ function safeTransferFrom(address from, address to, uint256 tokenId) external; /** * @dev Transfers `tokenId` token from `from` to `to`. * * WARNING: Note that the caller is responsible to confirm that the recipient is capable of receiving ERC721 * or else they may be permanently lost. Usage of {safeTransferFrom} prevents loss, though the caller must * understand this adds an external call which potentially creates a reentrancy vulnerability. * * Requirements: * * - `from` cannot be the zero address. * - `to` cannot be the zero address. * - `tokenId` token must be owned by `from`. * - If the caller is not `from`, it must be approved to move this token by either {approve} or {setApprovalForAll}. * * Emits a {Transfer} event. */ function transferFrom(address from, address to, uint256 tokenId) external; /** * @dev Gives permission to `to` to transfer `tokenId` token to another account. * The approval is cleared when the token is transferred. * * Only a single account can be approved at a time, so approving the zero address clears previous approvals. * * Requirements: * * - The caller must own the token or be an approved operator. * - `tokenId` must exist. * * Emits an {Approval} event. */ function approve(address to, uint256 tokenId) external; /** * @dev Approve or remove `operator` as an operator for the caller. * Operators can call {transferFrom} or {safeTransferFrom} for any token owned by the caller. * * Requirements: * * - The `operator` cannot be the caller. * * Emits an {ApprovalForAll} event. */ function setApprovalForAll(address operator, bool approved) external; /** * @dev Returns the account approved for `tokenId` token. * * Requirements: * * - `tokenId` must exist. */ function getApproved(uint256 tokenId) external view returns (address operator); /** * @dev Returns if the `operator` is allowed to manage all of the assets of `owner`. * * See {setApprovalForAll} */ function isApprovedForAll(address owner, address operator) external view returns (bool); }
// 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); }
{ "remappings": [ "ds-test/=lib/forge-std/lib/ds-test/src/", "erc4626-tests/=lib/openzeppelin-contracts/lib/erc4626-tests/", "forge-std/=lib/forge-std/src/", "openzeppelin-contracts/=lib/openzeppelin-contracts/", "solmate/=lib/solmate/src/" ], "optimizer": { "enabled": true, "runs": 200 }, "metadata": { "bytecodeHash": "ipfs" }, "outputSelection": { "*": { "*": [ "evm.bytecode", "evm.deployedBytecode", "devdoc", "userdoc", "metadata", "abi" ] } }, "evmVersion": "london", "libraries": {} }
Contract Security Audit
- No Contract Security Audit Submitted- Submit Audit Here
[{"inputs":[{"internalType":"address","name":"_liquidDelegate","type":"address"}],"stateMutability":"nonpayable","type":"constructor"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"uint256","name":"bidId","type":"uint256"},{"indexed":true,"internalType":"address","name":"bidder","type":"address"},{"indexed":true,"internalType":"uint256","name":"rightsId","type":"uint256"},{"indexed":false,"internalType":"uint256","name":"weiAmount","type":"uint256"}],"name":"BidCanceled","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"uint256","name":"bidId","type":"uint256"},{"indexed":true,"internalType":"address","name":"bidder","type":"address"},{"indexed":true,"internalType":"uint256","name":"rightsId","type":"uint256"},{"indexed":false,"internalType":"uint256","name":"weiAmount","type":"uint256"}],"name":"BidCreated","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"uint256","name":"listingId","type":"uint256"},{"indexed":true,"internalType":"address","name":"seller","type":"address"},{"indexed":true,"internalType":"uint256","name":"rightsId","type":"uint256"},{"indexed":false,"internalType":"uint256","name":"weiAmount","type":"uint256"}],"name":"ListingCanceled","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"uint256","name":"listingId","type":"uint256"},{"indexed":true,"internalType":"address","name":"seller","type":"address"},{"indexed":true,"internalType":"uint256","name":"rightsId","type":"uint256"},{"indexed":false,"internalType":"uint256","name":"weiAmount","type":"uint256"}],"name":"ListingCreated","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"uint256","name":"rightsId","type":"uint256"},{"indexed":true,"internalType":"address","name":"buyer","type":"address"},{"indexed":true,"internalType":"address","name":"seller","type":"address"},{"indexed":false,"internalType":"uint256","name":"weiAmount","type":"uint256"}],"name":"Sale","type":"event"},{"inputs":[],"name":"LIQUID_DELEGATE","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"uint256","name":"rightsId","type":"uint256"}],"name":"bid","outputs":[],"stateMutability":"payable","type":"function"},{"inputs":[{"internalType":"uint256","name":"","type":"uint256"}],"name":"bids","outputs":[{"internalType":"address","name":"bidder","type":"address"},{"internalType":"uint96","name":"rightsId","type":"uint96"},{"internalType":"uint256","name":"weiAmount","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"uint256","name":"listingId","type":"uint256"}],"name":"buy","outputs":[],"stateMutability":"payable","type":"function"},{"inputs":[{"internalType":"uint256","name":"bidId","type":"uint256"}],"name":"cancelBid","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"uint256","name":"listingId","type":"uint256"}],"name":"cancelListing","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"uint256","name":"rightsId","type":"uint256"},{"internalType":"uint256","name":"weiAmount","type":"uint256"}],"name":"list","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"uint256","name":"","type":"uint256"}],"name":"listings","outputs":[{"internalType":"address","name":"seller","type":"address"},{"internalType":"uint96","name":"rightsId","type":"uint96"},{"internalType":"uint256","name":"weiAmount","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"nextBidId","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"nextListingId","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"uint256","name":"bidId","type":"uint256"}],"name":"sell","outputs":[],"stateMutability":"nonpayable","type":"function"}]
Contract Creation Code
60a06040526001600255600160035534801561001a57600080fd5b50604051610ead380380610ead8339810160408190526100399161004a565b6001600160a01b031660805261007a565b60006020828403121561005c57600080fd5b81516001600160a01b038116811461007357600080fd5b9392505050565b608051610def6100be6000396000818160d501528181610662015281816107850152818161080b015281816109ad01528181610a8e0152610b140152610def6000f3fe60806040526004361061009c5760003560e01c80639703ef35116100645780639703ef35146101c4578063aaccf1ec146101e4578063d96a094a14610208578063dc2690491461021b578063de74e57b14610231578063e4849b321461028157600080fd5b8063305a67a8146100a1578063432b5020146100c35780634423c5f114610114578063454a2ab31461019157806350fd7367146101a4575b600080fd5b3480156100ad57600080fd5b506100c16100bc366004610ccc565b6102a1565b005b3480156100cf57600080fd5b506100f77f000000000000000000000000000000000000000000000000000000000000000081565b6040516001600160a01b0390911681526020015b60405180910390f35b34801561012057600080fd5b5061016461012f366004610ccc565b600060208190529081526040902080546001909101546001600160a01b03821691600160a01b90046001600160601b03169083565b604080516001600160a01b0390941684526001600160601b0390921660208401529082015260600161010b565b6100c161019f366004610ccc565b6103a1565b3480156101b057600080fd5b506100c16101bf366004610ce5565b61044f565b3480156101d057600080fd5b506100c16101df366004610ccc565b6104fb565b3480156101f057600080fd5b506101fa60035481565b60405190815260200161010b565b6100c1610216366004610ccc565b6105eb565b34801561022757600080fd5b506101fa60025481565b34801561023d57600080fd5b5061016461024c366004610ccc565b600160208190526000918252604090912080549101546001600160a01b03821691600160a01b90046001600160601b03169083565b34801561028d57600080fd5b506100c161029c366004610ccc565b610937565b600081815260016020818152604092839020835160608101855281546001600160a01b038116808352600160a01b9091046001600160601b031693820193909352920154928201929092529033146103335760405162461bcd60e51b815260206004820152601060248201526f4e4f545f594f55525f4c495354494e4760801b60448201526064015b60405180910390fd5b80602001516001600160601b0316336001600160a01b0316837f08e1c3692993684b95c785b759d11ce9cbcf361a6a39ffaa4d9f1d4df29db894846040015160405161038191815260200190565b60405180910390a450600090815260016020819052604082208281550155565b60408051606081018252338082526001600160601b038085166020808501918252348587019081526002805460009081529283905296822095519251909316600160a01b026001600160a01b0392909216919091178455905160019093019290925582548493919290919061041583610d1d565b909155506040513481527f77689ebf788c0f9d9e045fa81e22903cc7a1e34686c3fa4874c9a6a4d8a239f59060200160405180910390a450565b60408051606081018252338082526001600160601b03808616602080850191825284860187815260038054600090815260019384905297882096519351909416600160a01b026001600160a01b0393909316929092178555905193019290925581548593919290916104c083610d1d565b909155506040518481527f12dc294b81a709d694b1337a350a12a00076c19a77a25aab67a5f0c07e0f164d9060200160405180910390a45050565b600081815260208181526040808320815160608101835281546001600160a01b038116808352600160a01b9091046001600160601b031682860181905260018401805495840186905288885295879052928690559490935591923381146105935760405162461bcd60e51b815260206004820152600c60248201526b1393d517d653d55497d0925160a21b604482015260640161032a565b61059f81836001610c27565b82816001600160a01b0316867f31fee466c49d9600dc1a988f1077fea98f16bd7bd7497231cbf24549a4d78c5e856040516105dc91815260200190565b60405180910390a45050505050565b6000818152600160208181526040808420815160608101835281546001600160a01b03808216808452600160a01b9092046001600160601b031683870181905284880180548588018190528b8b5298909752938890559487905592516331a9108f60e11b81526004810183905290959294939192917f00000000000000000000000000000000000000000000000000000000000000001690636352211e90602401602060405180830381865afa1580156106a9573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906106cd9190610d52565b905082341461070c5760405162461bcd60e51b815260206004820152600b60248201526a57524f4e475f505249434560a81b604482015260640161032a565b836001600160a01b0316816001600160a01b0316146107595760405162461bcd60e51b81526020600482015260096024820152682727aa2fa7aba722a960b91b604482015260640161032a565b6040516323b872dd60e01b81526001600160a01b038281166004830152336024830152604482018490527f000000000000000000000000000000000000000000000000000000000000000016906323b872dd90606401600060405180830381600087803b1580156107c957600080fd5b505af11580156107dd573d6000803e3d6000fd5b505060405163152a902d60e11b81526004810185905260248101869052600092508291506001600160a01b037f00000000000000000000000000000000000000000000000000000000000000001690632a55205a906044016040805180830381865afa158015610851573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906108759190610d74565b9150915061088582826001610c27565b61089a836108938388610da0565b6001610c27565b83866001600160a01b0316897f08e1c3692993684b95c785b759d11ce9cbcf361a6a39ffaa4d9f1d4df29db894886040516108d791815260200190565b60405180910390a4826001600160a01b0316336001600160a01b0316857f88863d5e20f64464b554931394e2e4b6f09c10015147215bf26b3ba5070acebe8860405161092591815260200190565b60405180910390a45050505050505050565b600081815260208181526040808320815160608101835281546001600160a01b03808216808452600160a01b9092046001600160601b03168387018190526001850180548588018190528a8a5297899052948890559387905593516331a9108f60e11b81526004810184905291959294939092917f000000000000000000000000000000000000000000000000000000000000000090911690636352211e90602401602060405180830381865afa1580156109f6573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610a1a9190610d52565b90506001600160a01b0381163314610a605760405162461bcd60e51b81526020600482015260096024820152682727aa2fa7aba722a960b91b604482015260640161032a565b6040516323b872dd60e01b81526001600160a01b0382811660048301528381166024830152604482018690527f000000000000000000000000000000000000000000000000000000000000000016906323b872dd90606401600060405180830381600087803b158015610ad257600080fd5b505af1158015610ae6573d6000803e3d6000fd5b505060405163152a902d60e11b81526004810187905260248101869052600092508291506001600160a01b037f00000000000000000000000000000000000000000000000000000000000000001690632a55205a906044016040805180830381865afa158015610b5a573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610b7e9190610d74565b91509150610b8e82826001610c27565b610b9c836108938388610da0565b85846001600160a01b0316897f31fee466c49d9600dc1a988f1077fea98f16bd7bd7497231cbf24549a4d78c5e88604051610bd991815260200190565b60405180910390a4826001600160a01b0316846001600160a01b0316877f88863d5e20f64464b554931394e2e4b6f09c10015147215bf26b3ba5070acebe8860405161092591815260200190565b6000836001600160a01b03168360405160006040518083038185875af1925050503d8060008114610c74576040519150601f19603f3d011682016040523d82523d6000602084013e610c79565b606091505b505090508080610c865750815b610cc65760405162461bcd60e51b815260206004820152601160248201527014d1539117d15512115497d19052531151607a1b604482015260640161032a565b50505050565b600060208284031215610cde57600080fd5b5035919050565b60008060408385031215610cf857600080fd5b50508035926020909101359150565b634e487b7160e01b600052601160045260246000fd5b600060018201610d2f57610d2f610d07565b5060010190565b80516001600160a01b0381168114610d4d57600080fd5b919050565b600060208284031215610d6457600080fd5b610d6d82610d36565b9392505050565b60008060408385031215610d8757600080fd5b610d9083610d36565b9150602083015190509250929050565b81810381811115610db357610db3610d07565b9291505056fea2646970667358221220e0631c952f17fc33ccd850e6d6557f22e93d9dd766563a35c4830081a342bc2164736f6c634300081100330000000000000000000000002e7afee4d068cdcc427dba6ae2a7de94d15cf356
Deployed Bytecode
0x60806040526004361061009c5760003560e01c80639703ef35116100645780639703ef35146101c4578063aaccf1ec146101e4578063d96a094a14610208578063dc2690491461021b578063de74e57b14610231578063e4849b321461028157600080fd5b8063305a67a8146100a1578063432b5020146100c35780634423c5f114610114578063454a2ab31461019157806350fd7367146101a4575b600080fd5b3480156100ad57600080fd5b506100c16100bc366004610ccc565b6102a1565b005b3480156100cf57600080fd5b506100f77f0000000000000000000000002e7afee4d068cdcc427dba6ae2a7de94d15cf35681565b6040516001600160a01b0390911681526020015b60405180910390f35b34801561012057600080fd5b5061016461012f366004610ccc565b600060208190529081526040902080546001909101546001600160a01b03821691600160a01b90046001600160601b03169083565b604080516001600160a01b0390941684526001600160601b0390921660208401529082015260600161010b565b6100c161019f366004610ccc565b6103a1565b3480156101b057600080fd5b506100c16101bf366004610ce5565b61044f565b3480156101d057600080fd5b506100c16101df366004610ccc565b6104fb565b3480156101f057600080fd5b506101fa60035481565b60405190815260200161010b565b6100c1610216366004610ccc565b6105eb565b34801561022757600080fd5b506101fa60025481565b34801561023d57600080fd5b5061016461024c366004610ccc565b600160208190526000918252604090912080549101546001600160a01b03821691600160a01b90046001600160601b03169083565b34801561028d57600080fd5b506100c161029c366004610ccc565b610937565b600081815260016020818152604092839020835160608101855281546001600160a01b038116808352600160a01b9091046001600160601b031693820193909352920154928201929092529033146103335760405162461bcd60e51b815260206004820152601060248201526f4e4f545f594f55525f4c495354494e4760801b60448201526064015b60405180910390fd5b80602001516001600160601b0316336001600160a01b0316837f08e1c3692993684b95c785b759d11ce9cbcf361a6a39ffaa4d9f1d4df29db894846040015160405161038191815260200190565b60405180910390a450600090815260016020819052604082208281550155565b60408051606081018252338082526001600160601b038085166020808501918252348587019081526002805460009081529283905296822095519251909316600160a01b026001600160a01b0392909216919091178455905160019093019290925582548493919290919061041583610d1d565b909155506040513481527f77689ebf788c0f9d9e045fa81e22903cc7a1e34686c3fa4874c9a6a4d8a239f59060200160405180910390a450565b60408051606081018252338082526001600160601b03808616602080850191825284860187815260038054600090815260019384905297882096519351909416600160a01b026001600160a01b0393909316929092178555905193019290925581548593919290916104c083610d1d565b909155506040518481527f12dc294b81a709d694b1337a350a12a00076c19a77a25aab67a5f0c07e0f164d9060200160405180910390a45050565b600081815260208181526040808320815160608101835281546001600160a01b038116808352600160a01b9091046001600160601b031682860181905260018401805495840186905288885295879052928690559490935591923381146105935760405162461bcd60e51b815260206004820152600c60248201526b1393d517d653d55497d0925160a21b604482015260640161032a565b61059f81836001610c27565b82816001600160a01b0316867f31fee466c49d9600dc1a988f1077fea98f16bd7bd7497231cbf24549a4d78c5e856040516105dc91815260200190565b60405180910390a45050505050565b6000818152600160208181526040808420815160608101835281546001600160a01b03808216808452600160a01b9092046001600160601b031683870181905284880180548588018190528b8b5298909752938890559487905592516331a9108f60e11b81526004810183905290959294939192917f0000000000000000000000002e7afee4d068cdcc427dba6ae2a7de94d15cf3561690636352211e90602401602060405180830381865afa1580156106a9573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906106cd9190610d52565b905082341461070c5760405162461bcd60e51b815260206004820152600b60248201526a57524f4e475f505249434560a81b604482015260640161032a565b836001600160a01b0316816001600160a01b0316146107595760405162461bcd60e51b81526020600482015260096024820152682727aa2fa7aba722a960b91b604482015260640161032a565b6040516323b872dd60e01b81526001600160a01b038281166004830152336024830152604482018490527f0000000000000000000000002e7afee4d068cdcc427dba6ae2a7de94d15cf35616906323b872dd90606401600060405180830381600087803b1580156107c957600080fd5b505af11580156107dd573d6000803e3d6000fd5b505060405163152a902d60e11b81526004810185905260248101869052600092508291506001600160a01b037f0000000000000000000000002e7afee4d068cdcc427dba6ae2a7de94d15cf3561690632a55205a906044016040805180830381865afa158015610851573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906108759190610d74565b9150915061088582826001610c27565b61089a836108938388610da0565b6001610c27565b83866001600160a01b0316897f08e1c3692993684b95c785b759d11ce9cbcf361a6a39ffaa4d9f1d4df29db894886040516108d791815260200190565b60405180910390a4826001600160a01b0316336001600160a01b0316857f88863d5e20f64464b554931394e2e4b6f09c10015147215bf26b3ba5070acebe8860405161092591815260200190565b60405180910390a45050505050505050565b600081815260208181526040808320815160608101835281546001600160a01b03808216808452600160a01b9092046001600160601b03168387018190526001850180548588018190528a8a5297899052948890559387905593516331a9108f60e11b81526004810184905291959294939092917f0000000000000000000000002e7afee4d068cdcc427dba6ae2a7de94d15cf35690911690636352211e90602401602060405180830381865afa1580156109f6573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610a1a9190610d52565b90506001600160a01b0381163314610a605760405162461bcd60e51b81526020600482015260096024820152682727aa2fa7aba722a960b91b604482015260640161032a565b6040516323b872dd60e01b81526001600160a01b0382811660048301528381166024830152604482018690527f0000000000000000000000002e7afee4d068cdcc427dba6ae2a7de94d15cf35616906323b872dd90606401600060405180830381600087803b158015610ad257600080fd5b505af1158015610ae6573d6000803e3d6000fd5b505060405163152a902d60e11b81526004810187905260248101869052600092508291506001600160a01b037f0000000000000000000000002e7afee4d068cdcc427dba6ae2a7de94d15cf3561690632a55205a906044016040805180830381865afa158015610b5a573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610b7e9190610d74565b91509150610b8e82826001610c27565b610b9c836108938388610da0565b85846001600160a01b0316897f31fee466c49d9600dc1a988f1077fea98f16bd7bd7497231cbf24549a4d78c5e88604051610bd991815260200190565b60405180910390a4826001600160a01b0316846001600160a01b0316877f88863d5e20f64464b554931394e2e4b6f09c10015147215bf26b3ba5070acebe8860405161092591815260200190565b6000836001600160a01b03168360405160006040518083038185875af1925050503d8060008114610c74576040519150601f19603f3d011682016040523d82523d6000602084013e610c79565b606091505b505090508080610c865750815b610cc65760405162461bcd60e51b815260206004820152601160248201527014d1539117d15512115497d19052531151607a1b604482015260640161032a565b50505050565b600060208284031215610cde57600080fd5b5035919050565b60008060408385031215610cf857600080fd5b50508035926020909101359150565b634e487b7160e01b600052601160045260246000fd5b600060018201610d2f57610d2f610d07565b5060010190565b80516001600160a01b0381168114610d4d57600080fd5b919050565b600060208284031215610d6457600080fd5b610d6d82610d36565b9392505050565b60008060408385031215610d8757600080fd5b610d9083610d36565b9150602083015190509250929050565b81810381811115610db357610db3610d07565b9291505056fea2646970667358221220e0631c952f17fc33ccd850e6d6557f22e93d9dd766563a35c4830081a342bc2164736f6c63430008110033
Constructor Arguments (ABI-Encoded and is the last bytes of the Contract Creation Code above)
0000000000000000000000002e7afee4d068cdcc427dba6ae2a7de94d15cf356
-----Decoded View---------------
Arg [0] : _liquidDelegate (address): 0x2E7AfEE4d068Cdcc427Dba6AE2A7de94D15cf356
-----Encoded View---------------
1 Constructor Arguments found :
Arg [0] : 0000000000000000000000002e7afee4d068cdcc427dba6ae2a7de94d15cf356
Loading...
Loading
Loading...
Loading
Make sure to use the "Vote Down" button for any spammy posts, and the "Vote Up" for interesting conversations.
[ 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.