Overview
ETH Balance
0 ETH
Eth Value
$0.00More Info
Private Name Tags
ContractCreator
Latest 25 from a total of 5,045 transactions
Transaction Hash |
Method
|
Block
|
From
|
To
|
|||||
---|---|---|---|---|---|---|---|---|---|
Claim Badge | 13437945 | 1084 days ago | IN | 0 ETH | 0.00368612 | ||||
Claim | 13437944 | 1084 days ago | IN | 0 ETH | 0.00412705 | ||||
Claim | 12843421 | 1177 days ago | IN | 0 ETH | 0.0005699 | ||||
Claim Badge | 12812547 | 1181 days ago | IN | 0 ETH | 0.00250467 | ||||
Claim | 12812035 | 1181 days ago | IN | 0 ETH | 0.00066488 | ||||
Claim Badge | 12650915 | 1207 days ago | IN | 0 ETH | 0.00054346 | ||||
Claim Badge | 12507218 | 1229 days ago | IN | 0 ETH | 0.00531652 | ||||
Claim | 12485530 | 1232 days ago | IN | 0 ETH | 0.00235085 | ||||
Set Token URI | 12363602 | 1251 days ago | IN | 0 ETH | 0.00398395 | ||||
Set Token URI | 12363569 | 1251 days ago | IN | 0 ETH | 0.00435455 | ||||
Set Token URI | 12361622 | 1251 days ago | IN | 0 ETH | 0.00254787 | ||||
Set Token URI | 12361604 | 1251 days ago | IN | 0 ETH | 0.00250155 | ||||
Set Token URI | 12361585 | 1251 days ago | IN | 0 ETH | 0.00245522 | ||||
Set Token URI | 12342665 | 1254 days ago | IN | 0 ETH | 0.00301112 | ||||
Set Token URI | 12342633 | 1254 days ago | IN | 0 ETH | 0.00347437 | ||||
Claim Badge | 12317515 | 1258 days ago | IN | 0 ETH | 0.00132322 | ||||
Claim | 12300741 | 1261 days ago | IN | 0 ETH | 0.00142476 | ||||
Claim Badge | 12285671 | 1263 days ago | IN | 0 ETH | 0.00389878 | ||||
Claim | 12279800 | 1264 days ago | IN | 0 ETH | 0.0047492 | ||||
Toggle Claims Al... | 12254036 | 1268 days ago | IN | 0 ETH | 0.00474046 | ||||
Claim Badge | 12253711 | 1268 days ago | IN | 0 ETH | 0.01205755 | ||||
Claim | 12253709 | 1268 days ago | IN | 0 ETH | 0.01453022 | ||||
Claim | 12253529 | 1268 days ago | IN | 0 ETH | 0.01259049 | ||||
Claim | 12253529 | 1268 days ago | IN | 0 ETH | 0.01174326 | ||||
Claim Badge | 12253516 | 1268 days ago | IN | 0 ETH | 0.01464214 |
View more zero value Internal Transactions in Advanced View mode
Advanced mode:
Loading...
Loading
Contract Name:
NFTClaimManager
Compiler Version
v0.8.1+commit.df193b15
Optimization Enabled:
Yes with 200 runs
Other Settings:
default evmVersion
Contract Source Code (Solidity Standard Json-Input format)
// SPDX-License-Identifier: MIT pragma solidity 0.8.1; import "@openzeppelin/contracts/access/Ownable.sol"; import "@openzeppelin/contracts/token/ERC1155/IERC1155.sol"; interface ICollection is IERC1155 { function mint( address account, uint256 id, uint256 amount, bytes memory data, string memory newURI ) external; function setURI(string memory newURI) external; function setTokenURI(uint256 id, string memory newURI) external; } contract NFTClaimManager is Ownable { mapping(address => UserData) public userPoints; mapping(uint256 => Nft) public nftPrices; struct UserData { uint256 points; uint248 pointsSpent; bool claimedBadge; } struct Nft { uint248 price; bool isBadge; string uri; } ICollection public collection; bool public claimsAllowed; event NFTClaimed(address user, uint256 id, uint256 amount); modifier allowed() { require(claimsAllowed); _; } constructor(ICollection _collection) { collection = _collection; } function setUserPoints(address[] memory users, uint256[] memory points) external onlyOwner { for (uint256 i = 0; i < users.length; i++) { userPoints[users[i]] = UserData(points[i], 0, false); } } function balanceOf(address user) external view returns (uint256) { return userPoints[user].points - userPoints[user].pointsSpent; } function getPrice(uint256 id) external view returns (uint248) { return nftPrices[id].price; } function setPrices( uint256[] memory ids, uint248[] memory prices, string[] memory uris ) external onlyOwner { for (uint256 i = 0; i < ids.length; i++) { nftPrices[ids[i]] = Nft(prices[i], false, uris[i]); } } function setBadges(uint256[] memory ids) external onlyOwner { for (uint256 i = 0; i < ids.length; i++) { nftPrices[ids[i]].isBadge = true; } } function claim(uint256 id, uint256 amount) external allowed { UserData storage user = userPoints[msg.sender]; Nft storage nft = nftPrices[id]; require(!nft.isBadge, "wrong function to claim badge"); uint256 price = uint256(nft.price); require(price > 0, "nft doesn't exist"); uint256 pointsLeft = user.points - user.pointsSpent; require(pointsLeft >= amount * price, "not enough points"); user.pointsSpent += uint248(price * amount); collection.mint(msg.sender, id, amount, bytes(""), nft.uri); emit NFTClaimed(msg.sender, id, amount); } function claimBadge(uint256 id) external allowed { UserData storage user = userPoints[msg.sender]; Nft storage nft = nftPrices[id]; require(nft.isBadge, "not a badge"); require(!user.claimedBadge, "badge already claimed"); require(user.points > nft.price, "not enough points"); user.claimedBadge = true; collection.mint(msg.sender, id, 1, bytes(""), nft.uri); emit NFTClaimed(msg.sender, id, 1); } function setCollectionURI(string memory newURI) external onlyOwner { collection.setURI(newURI); } function setTokenURI(uint256 id, string memory newURI) external onlyOwner { collection.setTokenURI(id, newURI); } function toggleClaimsAllowed() external onlyOwner { claimsAllowed = !claimsAllowed; } }
// SPDX-License-Identifier: MIT pragma solidity ^0.8.0; import "../utils/Context.sol"; /** * @dev Contract module which provides a basic access control mechanism, where * there is an account (an owner) that can be granted exclusive access to * specific functions. * * By default, the owner account will be the one that deploys the contract. This * can later be changed with {transferOwnership}. * * This module is used through inheritance. It will make available the modifier * `onlyOwner`, which can be applied to your functions to restrict their use to * the owner. */ abstract contract Ownable is Context { address private _owner; event OwnershipTransferred(address indexed previousOwner, address indexed newOwner); /** * @dev Initializes the contract setting the deployer as the initial owner. */ constructor () { address msgSender = _msgSender(); _owner = msgSender; emit OwnershipTransferred(address(0), msgSender); } /** * @dev Returns the address of the current owner. */ function owner() public view virtual returns (address) { return _owner; } /** * @dev Throws if called by any account other than the owner. */ modifier onlyOwner() { require(owner() == _msgSender(), "Ownable: caller is not the owner"); _; } /** * @dev Leaves the contract without owner. It will not be possible to call * `onlyOwner` functions anymore. Can only be called by the current owner. * * NOTE: Renouncing ownership will leave the contract without an owner, * thereby removing any functionality that is only available to the owner. */ function renounceOwnership() public virtual onlyOwner { emit OwnershipTransferred(_owner, address(0)); _owner = address(0); } /** * @dev Transfers ownership of the contract to a new account (`newOwner`). * Can only be called by the current owner. */ function transferOwnership(address newOwner) public virtual onlyOwner { require(newOwner != address(0), "Ownable: new owner is the zero address"); emit OwnershipTransferred(_owner, newOwner); _owner = newOwner; } }
// 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; /* * @dev Provides information about the current execution context, including the * sender of the transaction and its data. While these are generally available * via msg.sender and msg.data, they should not be accessed in such a direct * manner, since when dealing with meta-transactions the account sending and * paying for execution may not be the actual sender (as far as an application * is concerned). * * This contract is only required for intermediate, library-like contracts. */ abstract contract Context { function _msgSender() internal view virtual returns (address) { return msg.sender; } function _msgData() internal view virtual returns (bytes calldata) { this; // silence state mutability warning without generating bytecode - see https://github.com/ethereum/solidity/issues/2691 return msg.data; } }
// 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); }
{ "metadata": { "bytecodeHash": "none" }, "optimizer": { "enabled": true, "runs": 200 }, "outputSelection": { "*": { "*": [ "evm.bytecode", "evm.deployedBytecode", "abi" ] } }, "libraries": {} }
Contract Security Audit
- No Contract Security Audit Submitted- Submit Audit Here
[{"inputs":[{"internalType":"contract ICollection","name":"_collection","type":"address"}],"stateMutability":"nonpayable","type":"constructor"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"address","name":"user","type":"address"},{"indexed":false,"internalType":"uint256","name":"id","type":"uint256"},{"indexed":false,"internalType":"uint256","name":"amount","type":"uint256"}],"name":"NFTClaimed","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"previousOwner","type":"address"},{"indexed":true,"internalType":"address","name":"newOwner","type":"address"}],"name":"OwnershipTransferred","type":"event"},{"inputs":[{"internalType":"address","name":"user","type":"address"}],"name":"balanceOf","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"uint256","name":"id","type":"uint256"},{"internalType":"uint256","name":"amount","type":"uint256"}],"name":"claim","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"uint256","name":"id","type":"uint256"}],"name":"claimBadge","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"claimsAllowed","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"collection","outputs":[{"internalType":"contract ICollection","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"uint256","name":"id","type":"uint256"}],"name":"getPrice","outputs":[{"internalType":"uint248","name":"","type":"uint248"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"uint256","name":"","type":"uint256"}],"name":"nftPrices","outputs":[{"internalType":"uint248","name":"price","type":"uint248"},{"internalType":"bool","name":"isBadge","type":"bool"},{"internalType":"string","name":"uri","type":"string"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"owner","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"renounceOwnership","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"uint256[]","name":"ids","type":"uint256[]"}],"name":"setBadges","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"string","name":"newURI","type":"string"}],"name":"setCollectionURI","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"uint256[]","name":"ids","type":"uint256[]"},{"internalType":"uint248[]","name":"prices","type":"uint248[]"},{"internalType":"string[]","name":"uris","type":"string[]"}],"name":"setPrices","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"uint256","name":"id","type":"uint256"},{"internalType":"string","name":"newURI","type":"string"}],"name":"setTokenURI","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address[]","name":"users","type":"address[]"},{"internalType":"uint256[]","name":"points","type":"uint256[]"}],"name":"setUserPoints","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"toggleClaimsAllowed","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"newOwner","type":"address"}],"name":"transferOwnership","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"","type":"address"}],"name":"userPoints","outputs":[{"internalType":"uint256","name":"points","type":"uint256"},{"internalType":"uint248","name":"pointsSpent","type":"uint248"},{"internalType":"bool","name":"claimedBadge","type":"bool"}],"stateMutability":"view","type":"function"}]
Contract Creation Code
608060405234801561001057600080fd5b506040516117d13803806117d183398101604081905261002f916100ac565b60006100396100a8565b600080546001600160a01b0319166001600160a01b0383169081178255604051929350917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0908290a350600380546001600160a01b0319166001600160a01b03929092169190911790556100da565b3390565b6000602082840312156100bd578081fd5b81516001600160a01b03811681146100d3578182fd5b9392505050565b6116e8806100e96000396000f3fe608060405234801561001057600080fd5b506004361061010b5760003560e01c80637de1e536116100a2578063c349026311610071578063c3490263146101ef578063d9f10a2b14610202578063e757223014610224578063f2fde38b14610244578063f50ddbc7146102575761010b565b80637de1e536146101ac5780638da5cb5b146101c15780639bb1b92d146101c9578063a1f65e0c146101dc5761010b565b80634b4cd483116100de5780634b4cd4831461015357806355c60c7c1461016657806370a0823114610184578063715018a6146101a45761010b565b8063162094c4146101105780631f72c95314610125578063234151351461012d5780632639f46014610140575b600080fd5b61012361011e3660046111c9565b610279565b005b610123610329565b61012361013b3660046111b1565b610389565b61012361014e36600461117e565b61050d565b610123610161366004611091565b6105b1565b61016e61071a565b60405161017b9190611391565b60405180910390f35b610197610192366004610f77565b61072a565b60405161017b9190611554565b610123610765565b6101b46107ee565b60405161017b9190611311565b6101b46107fd565b6101236101d7366004611056565b61080c565b6101236101ea366004610f98565b6108c4565b6101236101fd366004611204565b6109ff565b6102156102103660046111b1565b610bd3565b60405161017b9392919061151f565b6102376102323660046111b1565b610c8e565b60405161017b919061150b565b610123610252366004610f77565b610ca9565b61026a610265366004610f77565b610d69565b60405161017b93929190611576565b610281610d97565b6001600160a01b03166102926107fd565b6001600160a01b0316146102c15760405162461bcd60e51b81526004016102b890611486565b60405180910390fd5b600354604051630588253160e21b81526001600160a01b039091169063162094c4906102f3908590859060040161155d565b600060405180830381600087803b15801561030d57600080fd5b505af1158015610321573d6000803e3d6000fd5b505050505050565b610331610d97565b6001600160a01b03166103426107fd565b6001600160a01b0316146103685760405162461bcd60e51b81526004016102b890611486565b6003805460ff60a01b198116600160a01b9182900460ff1615909102179055565b600354600160a01b900460ff1661039f57600080fd5b33600090815260016020908152604080832084845260029092529091208054600160f81b900460ff166103e45760405162461bcd60e51b81526004016102b8906114e6565b6001820154600160f81b900460ff16156104105760405162461bcd60e51b81526004016102b8906113af565b805482546001600160f81b039091161061043c5760405162461bcd60e51b81526004016102b8906114bb565b600182810180546001600160f81b0316600160f81b1790556003546040805160208101825260008152905163c1341c4f60e01b81526001600160a01b039092169263c1341c4f9261049a923392899290919088830190600401611346565b600060405180830381600087803b1580156104b457600080fd5b505af11580156104c8573d6000803e3d6000fd5b505050507fd93bbb9e10b7af5aa4b410ac845ae87a717d305e8a4777959ad1dd06e6a1ac983384600160405161050093929190611325565b60405180910390a1505050565b610515610d97565b6001600160a01b03166105266107fd565b6001600160a01b03161461054c5760405162461bcd60e51b81526004016102b890611486565b6003546040516302fe530560e01b81526001600160a01b03909116906302fe53059061057c90849060040161139c565b600060405180830381600087803b15801561059657600080fd5b505af11580156105aa573d6000803e3d6000fd5b5050505050565b6105b9610d97565b6001600160a01b03166105ca6107fd565b6001600160a01b0316146105f05760405162461bcd60e51b81526004016102b890611486565b60005b835181101561071457604051806060016040528084838151811061062757634e487b7160e01b600052603260045260246000fd5b60200260200101516001600160f81b0316815260200160001515815260200183838151811061066657634e487b7160e01b600052603260045260246000fd5b60200260200101518152506002600086848151811061069557634e487b7160e01b600052603260045260246000fd5b602090810291909101810151825281810192909252604090810160002083518154858501511515600160f81b026001600160f81b039283166001600160f81b03199092169190911790911617815590830151805191926106fd92600185019290910190610d9b565b50905050808061070c90611694565b9150506105f3565b50505050565b600354600160a01b900460ff1681565b6001600160a01b0381166000908152600160208190526040822090810154905461075d916001600160f81b031690611642565b90505b919050565b61076d610d97565b6001600160a01b031661077e6107fd565b6001600160a01b0316146107a45760405162461bcd60e51b81526004016102b890611486565b600080546040516001600160a01b03909116907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0908390a3600080546001600160a01b0319169055565b6003546001600160a01b031681565b6000546001600160a01b031690565b610814610d97565b6001600160a01b03166108256107fd565b6001600160a01b03161461084b5760405162461bcd60e51b81526004016102b890611486565b60005b81518110156108c05760016002600084848151811061087d57634e487b7160e01b600052603260045260246000fd5b60200260200101518152602001908152602001600020600001601f6101000a81548160ff02191690831515021790555080806108b890611694565b91505061084e565b5050565b6108cc610d97565b6001600160a01b03166108dd6107fd565b6001600160a01b0316146109035760405162461bcd60e51b81526004016102b890611486565b60005b82518110156109fa57604051806060016040528083838151811061093a57634e487b7160e01b600052603260045260246000fd5b6020026020010151815260200160006001600160f81b03168152602001600015158152506001600085848151811061098257634e487b7160e01b600052603260045260246000fd5b6020908102919091018101516001600160a01b0316825281810192909252604090810160002083518155918301516001909201805493909101511515600160f81b026001600160f81b039283166001600160f81b031990941693909317909116919091179055806109f281611694565b915050610906565b505050565b600354600160a01b900460ff16610a1557600080fd5b33600090815260016020908152604080832085845260029092529091208054600160f81b900460ff1615610a5b5760405162461bcd60e51b81526004016102b890611424565b80546001600160f81b031680610a835760405162461bcd60e51b81526004016102b89061145b565b60018301548354600091610aa2916001600160f81b0390911690611642565b9050610aae8286611623565b811015610acd5760405162461bcd60e51b81526004016102b8906114bb565b610ad78583611623565b600185018054600090610af49084906001600160f81b03166115f8565b82546001600160f81b039182166101009390930a9283029190920219909116179055506003546040805160208101825260008152905163c1341c4f60e01b81526001600160a01b039092169163c1341c4f91610b5e9133918b918b919060018b0190600401611346565b600060405180830381600087803b158015610b7857600080fd5b505af1158015610b8c573d6000803e3d6000fd5b505050507fd93bbb9e10b7af5aa4b410ac845ae87a717d305e8a4777959ad1dd06e6a1ac98338787604051610bc393929190611325565b60405180910390a1505050505050565b600260205260009081526040902080546001820180546001600160f81b03831693600160f81b90930460ff16929190610c0b90611659565b80601f0160208091040260200160405190810160405280929190818152602001828054610c3790611659565b8015610c845780601f10610c5957610100808354040283529160200191610c84565b820191906000526020600020905b815481529060010190602001808311610c6757829003601f168201915b5050505050905083565b6000908152600260205260409020546001600160f81b031690565b610cb1610d97565b6001600160a01b0316610cc26107fd565b6001600160a01b031614610ce85760405162461bcd60e51b81526004016102b890611486565b6001600160a01b038116610d0e5760405162461bcd60e51b81526004016102b8906113de565b600080546040516001600160a01b03808516939216917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e091a3600080546001600160a01b0319166001600160a01b0392909216919091179055565b600160208190526000918252604090912080549101546001600160f81b03811690600160f81b900460ff1683565b3390565b828054610da790611659565b90600052602060002090601f016020900481019282610dc95760008555610e0f565b82601f10610de257805160ff1916838001178555610e0f565b82800160010185558215610e0f579182015b82811115610e0f578251825591602001919060010190610df4565b50610e1b929150610e1f565b5090565b5b80821115610e1b5760008155600101610e20565b80356001600160a01b038116811461076057600080fd5b600082601f830112610e5b578081fd5b81356020610e70610e6b836115c8565b611597565b82815281810190858301855b85811015610ea557610e93898684358b0101610f0c565b84529284019290840190600101610e7c565b5090979650505050505050565b600082601f830112610ec2578081fd5b81356020610ed2610e6b836115c8565b8281528181019085830183850287018401881015610eee578586fd5b855b85811015610ea557813584529284019290840190600101610ef0565b600082601f830112610f1c578081fd5b813567ffffffffffffffff811115610f3657610f366116c5565b610f49601f8201601f1916602001611597565b818152846020838601011115610f5d578283fd5b816020850160208301379081016020019190915292915050565b600060208284031215610f88578081fd5b610f9182610e34565b9392505050565b60008060408385031215610faa578081fd5b823567ffffffffffffffff80821115610fc1578283fd5b818501915085601f830112610fd4578283fd5b81356020610fe4610e6b836115c8565b82815281810190858301838502870184018b1015611000578788fd5b8796505b848710156110295761101581610e34565b835260019690960195918301918301611004565b509650508601359250508082111561103f578283fd5b5061104c85828601610eb2565b9150509250929050565b600060208284031215611067578081fd5b813567ffffffffffffffff81111561107d578182fd5b61108984828501610eb2565b949350505050565b6000806000606084860312156110a5578081fd5b833567ffffffffffffffff808211156110bc578283fd5b6110c887838801610eb2565b94506020915081860135818111156110de578384fd5b8601601f810188136110ee578384fd5b80356110fc610e6b826115c8565b81815284810190838601868402850187018c1015611118578788fd5b8794505b8385101561114e5780356001600160f81b038116811461113a578889fd5b83526001949094019391860191860161111c565b5096505050506040860135915080821115611167578283fd5b5061117486828701610e4b565b9150509250925092565b60006020828403121561118f578081fd5b813567ffffffffffffffff8111156111a5578182fd5b61108984828501610f0c565b6000602082840312156111c2578081fd5b5035919050565b600080604083850312156111db578182fd5b82359150602083013567ffffffffffffffff8111156111f8578182fd5b61104c85828601610f0c565b60008060408385031215611216578182fd5b50508035926020909101359150565b60008151808452815b8181101561124a5760208185018101518683018201520161122e565b8181111561125b5782602083870101525b50601f01601f19169290920160200192915050565b80546000906002810460018083168061128a57607f831692505b60208084108214156112aa57634e487b7160e01b86526022600452602486fd5b6112b48489611554565b8280156112c857600181146112d957611304565b60ff19871682528282019750611304565b6112e2896115ec565b60005b878110156112fe578154848201529086019084016112e5565b83019850505b5050505050505092915050565b6001600160a01b0391909116815260200190565b6001600160a01b039390931683526020830191909152604082015260600190565b600060018060a01b038716825285602083015284604083015260a0606083015261137360a0830185611225565b82810360808401526113858185611270565b98975050505050505050565b901515815260200190565b600060208252610f916020830184611225565b60208082526015908201527418985919d948185b1c9958591e4818db185a5b5959605a1b604082015260600190565b60208082526026908201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160408201526564647265737360d01b606082015260800190565b6020808252601d908201527f77726f6e672066756e6374696f6e20746f20636c61696d206261646765000000604082015260600190565b6020808252601190820152701b999d08191bd95cdb89dd08195e1a5cdd607a1b604082015260600190565b6020808252818101527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572604082015260600190565b6020808252601190820152706e6f7420656e6f75676820706f696e747360781b604082015260600190565b6020808252600b908201526a6e6f74206120626164676560a81b604082015260600190565b6001600160f81b0391909116815260200190565b6001600160f81b0384168152821515602082015260606040820181905260009061154b90830184611225565b95945050505050565b90815260200190565b6000838252604060208301526110896040830184611225565b9283526001600160f81b039190911660208301521515604082015260600190565b604051601f8201601f1916810167ffffffffffffffff811182821017156115c0576115c06116c5565b604052919050565b600067ffffffffffffffff8211156115e2576115e26116c5565b5060209081020190565b60009081526020902090565b60006001600160f81b0382811684821680830382111561161a5761161a6116af565b01949350505050565b600081600019048311821515161561163d5761163d6116af565b500290565b600082821015611654576116546116af565b500390565b60028104600182168061166d57607f821691505b6020821081141561168e57634e487b7160e01b600052602260045260246000fd5b50919050565b60006000198214156116a8576116a86116af565b5060010190565b634e487b7160e01b600052601160045260246000fd5b634e487b7160e01b600052604160045260246000fdfea164736f6c6343000801000a0000000000000000000000004222b2a98daa443c6a0a761300d7d6bfd9161e52
Deployed Bytecode
0x608060405234801561001057600080fd5b506004361061010b5760003560e01c80637de1e536116100a2578063c349026311610071578063c3490263146101ef578063d9f10a2b14610202578063e757223014610224578063f2fde38b14610244578063f50ddbc7146102575761010b565b80637de1e536146101ac5780638da5cb5b146101c15780639bb1b92d146101c9578063a1f65e0c146101dc5761010b565b80634b4cd483116100de5780634b4cd4831461015357806355c60c7c1461016657806370a0823114610184578063715018a6146101a45761010b565b8063162094c4146101105780631f72c95314610125578063234151351461012d5780632639f46014610140575b600080fd5b61012361011e3660046111c9565b610279565b005b610123610329565b61012361013b3660046111b1565b610389565b61012361014e36600461117e565b61050d565b610123610161366004611091565b6105b1565b61016e61071a565b60405161017b9190611391565b60405180910390f35b610197610192366004610f77565b61072a565b60405161017b9190611554565b610123610765565b6101b46107ee565b60405161017b9190611311565b6101b46107fd565b6101236101d7366004611056565b61080c565b6101236101ea366004610f98565b6108c4565b6101236101fd366004611204565b6109ff565b6102156102103660046111b1565b610bd3565b60405161017b9392919061151f565b6102376102323660046111b1565b610c8e565b60405161017b919061150b565b610123610252366004610f77565b610ca9565b61026a610265366004610f77565b610d69565b60405161017b93929190611576565b610281610d97565b6001600160a01b03166102926107fd565b6001600160a01b0316146102c15760405162461bcd60e51b81526004016102b890611486565b60405180910390fd5b600354604051630588253160e21b81526001600160a01b039091169063162094c4906102f3908590859060040161155d565b600060405180830381600087803b15801561030d57600080fd5b505af1158015610321573d6000803e3d6000fd5b505050505050565b610331610d97565b6001600160a01b03166103426107fd565b6001600160a01b0316146103685760405162461bcd60e51b81526004016102b890611486565b6003805460ff60a01b198116600160a01b9182900460ff1615909102179055565b600354600160a01b900460ff1661039f57600080fd5b33600090815260016020908152604080832084845260029092529091208054600160f81b900460ff166103e45760405162461bcd60e51b81526004016102b8906114e6565b6001820154600160f81b900460ff16156104105760405162461bcd60e51b81526004016102b8906113af565b805482546001600160f81b039091161061043c5760405162461bcd60e51b81526004016102b8906114bb565b600182810180546001600160f81b0316600160f81b1790556003546040805160208101825260008152905163c1341c4f60e01b81526001600160a01b039092169263c1341c4f9261049a923392899290919088830190600401611346565b600060405180830381600087803b1580156104b457600080fd5b505af11580156104c8573d6000803e3d6000fd5b505050507fd93bbb9e10b7af5aa4b410ac845ae87a717d305e8a4777959ad1dd06e6a1ac983384600160405161050093929190611325565b60405180910390a1505050565b610515610d97565b6001600160a01b03166105266107fd565b6001600160a01b03161461054c5760405162461bcd60e51b81526004016102b890611486565b6003546040516302fe530560e01b81526001600160a01b03909116906302fe53059061057c90849060040161139c565b600060405180830381600087803b15801561059657600080fd5b505af11580156105aa573d6000803e3d6000fd5b5050505050565b6105b9610d97565b6001600160a01b03166105ca6107fd565b6001600160a01b0316146105f05760405162461bcd60e51b81526004016102b890611486565b60005b835181101561071457604051806060016040528084838151811061062757634e487b7160e01b600052603260045260246000fd5b60200260200101516001600160f81b0316815260200160001515815260200183838151811061066657634e487b7160e01b600052603260045260246000fd5b60200260200101518152506002600086848151811061069557634e487b7160e01b600052603260045260246000fd5b602090810291909101810151825281810192909252604090810160002083518154858501511515600160f81b026001600160f81b039283166001600160f81b03199092169190911790911617815590830151805191926106fd92600185019290910190610d9b565b50905050808061070c90611694565b9150506105f3565b50505050565b600354600160a01b900460ff1681565b6001600160a01b0381166000908152600160208190526040822090810154905461075d916001600160f81b031690611642565b90505b919050565b61076d610d97565b6001600160a01b031661077e6107fd565b6001600160a01b0316146107a45760405162461bcd60e51b81526004016102b890611486565b600080546040516001600160a01b03909116907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0908390a3600080546001600160a01b0319169055565b6003546001600160a01b031681565b6000546001600160a01b031690565b610814610d97565b6001600160a01b03166108256107fd565b6001600160a01b03161461084b5760405162461bcd60e51b81526004016102b890611486565b60005b81518110156108c05760016002600084848151811061087d57634e487b7160e01b600052603260045260246000fd5b60200260200101518152602001908152602001600020600001601f6101000a81548160ff02191690831515021790555080806108b890611694565b91505061084e565b5050565b6108cc610d97565b6001600160a01b03166108dd6107fd565b6001600160a01b0316146109035760405162461bcd60e51b81526004016102b890611486565b60005b82518110156109fa57604051806060016040528083838151811061093a57634e487b7160e01b600052603260045260246000fd5b6020026020010151815260200160006001600160f81b03168152602001600015158152506001600085848151811061098257634e487b7160e01b600052603260045260246000fd5b6020908102919091018101516001600160a01b0316825281810192909252604090810160002083518155918301516001909201805493909101511515600160f81b026001600160f81b039283166001600160f81b031990941693909317909116919091179055806109f281611694565b915050610906565b505050565b600354600160a01b900460ff16610a1557600080fd5b33600090815260016020908152604080832085845260029092529091208054600160f81b900460ff1615610a5b5760405162461bcd60e51b81526004016102b890611424565b80546001600160f81b031680610a835760405162461bcd60e51b81526004016102b89061145b565b60018301548354600091610aa2916001600160f81b0390911690611642565b9050610aae8286611623565b811015610acd5760405162461bcd60e51b81526004016102b8906114bb565b610ad78583611623565b600185018054600090610af49084906001600160f81b03166115f8565b82546001600160f81b039182166101009390930a9283029190920219909116179055506003546040805160208101825260008152905163c1341c4f60e01b81526001600160a01b039092169163c1341c4f91610b5e9133918b918b919060018b0190600401611346565b600060405180830381600087803b158015610b7857600080fd5b505af1158015610b8c573d6000803e3d6000fd5b505050507fd93bbb9e10b7af5aa4b410ac845ae87a717d305e8a4777959ad1dd06e6a1ac98338787604051610bc393929190611325565b60405180910390a1505050505050565b600260205260009081526040902080546001820180546001600160f81b03831693600160f81b90930460ff16929190610c0b90611659565b80601f0160208091040260200160405190810160405280929190818152602001828054610c3790611659565b8015610c845780601f10610c5957610100808354040283529160200191610c84565b820191906000526020600020905b815481529060010190602001808311610c6757829003601f168201915b5050505050905083565b6000908152600260205260409020546001600160f81b031690565b610cb1610d97565b6001600160a01b0316610cc26107fd565b6001600160a01b031614610ce85760405162461bcd60e51b81526004016102b890611486565b6001600160a01b038116610d0e5760405162461bcd60e51b81526004016102b8906113de565b600080546040516001600160a01b03808516939216917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e091a3600080546001600160a01b0319166001600160a01b0392909216919091179055565b600160208190526000918252604090912080549101546001600160f81b03811690600160f81b900460ff1683565b3390565b828054610da790611659565b90600052602060002090601f016020900481019282610dc95760008555610e0f565b82601f10610de257805160ff1916838001178555610e0f565b82800160010185558215610e0f579182015b82811115610e0f578251825591602001919060010190610df4565b50610e1b929150610e1f565b5090565b5b80821115610e1b5760008155600101610e20565b80356001600160a01b038116811461076057600080fd5b600082601f830112610e5b578081fd5b81356020610e70610e6b836115c8565b611597565b82815281810190858301855b85811015610ea557610e93898684358b0101610f0c565b84529284019290840190600101610e7c565b5090979650505050505050565b600082601f830112610ec2578081fd5b81356020610ed2610e6b836115c8565b8281528181019085830183850287018401881015610eee578586fd5b855b85811015610ea557813584529284019290840190600101610ef0565b600082601f830112610f1c578081fd5b813567ffffffffffffffff811115610f3657610f366116c5565b610f49601f8201601f1916602001611597565b818152846020838601011115610f5d578283fd5b816020850160208301379081016020019190915292915050565b600060208284031215610f88578081fd5b610f9182610e34565b9392505050565b60008060408385031215610faa578081fd5b823567ffffffffffffffff80821115610fc1578283fd5b818501915085601f830112610fd4578283fd5b81356020610fe4610e6b836115c8565b82815281810190858301838502870184018b1015611000578788fd5b8796505b848710156110295761101581610e34565b835260019690960195918301918301611004565b509650508601359250508082111561103f578283fd5b5061104c85828601610eb2565b9150509250929050565b600060208284031215611067578081fd5b813567ffffffffffffffff81111561107d578182fd5b61108984828501610eb2565b949350505050565b6000806000606084860312156110a5578081fd5b833567ffffffffffffffff808211156110bc578283fd5b6110c887838801610eb2565b94506020915081860135818111156110de578384fd5b8601601f810188136110ee578384fd5b80356110fc610e6b826115c8565b81815284810190838601868402850187018c1015611118578788fd5b8794505b8385101561114e5780356001600160f81b038116811461113a578889fd5b83526001949094019391860191860161111c565b5096505050506040860135915080821115611167578283fd5b5061117486828701610e4b565b9150509250925092565b60006020828403121561118f578081fd5b813567ffffffffffffffff8111156111a5578182fd5b61108984828501610f0c565b6000602082840312156111c2578081fd5b5035919050565b600080604083850312156111db578182fd5b82359150602083013567ffffffffffffffff8111156111f8578182fd5b61104c85828601610f0c565b60008060408385031215611216578182fd5b50508035926020909101359150565b60008151808452815b8181101561124a5760208185018101518683018201520161122e565b8181111561125b5782602083870101525b50601f01601f19169290920160200192915050565b80546000906002810460018083168061128a57607f831692505b60208084108214156112aa57634e487b7160e01b86526022600452602486fd5b6112b48489611554565b8280156112c857600181146112d957611304565b60ff19871682528282019750611304565b6112e2896115ec565b60005b878110156112fe578154848201529086019084016112e5565b83019850505b5050505050505092915050565b6001600160a01b0391909116815260200190565b6001600160a01b039390931683526020830191909152604082015260600190565b600060018060a01b038716825285602083015284604083015260a0606083015261137360a0830185611225565b82810360808401526113858185611270565b98975050505050505050565b901515815260200190565b600060208252610f916020830184611225565b60208082526015908201527418985919d948185b1c9958591e4818db185a5b5959605a1b604082015260600190565b60208082526026908201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160408201526564647265737360d01b606082015260800190565b6020808252601d908201527f77726f6e672066756e6374696f6e20746f20636c61696d206261646765000000604082015260600190565b6020808252601190820152701b999d08191bd95cdb89dd08195e1a5cdd607a1b604082015260600190565b6020808252818101527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572604082015260600190565b6020808252601190820152706e6f7420656e6f75676820706f696e747360781b604082015260600190565b6020808252600b908201526a6e6f74206120626164676560a81b604082015260600190565b6001600160f81b0391909116815260200190565b6001600160f81b0384168152821515602082015260606040820181905260009061154b90830184611225565b95945050505050565b90815260200190565b6000838252604060208301526110896040830184611225565b9283526001600160f81b039190911660208301521515604082015260600190565b604051601f8201601f1916810167ffffffffffffffff811182821017156115c0576115c06116c5565b604052919050565b600067ffffffffffffffff8211156115e2576115e26116c5565b5060209081020190565b60009081526020902090565b60006001600160f81b0382811684821680830382111561161a5761161a6116af565b01949350505050565b600081600019048311821515161561163d5761163d6116af565b500290565b600082821015611654576116546116af565b500390565b60028104600182168061166d57607f821691505b6020821081141561168e57634e487b7160e01b600052602260045260246000fd5b50919050565b60006000198214156116a8576116a86116af565b5060010190565b634e487b7160e01b600052601160045260246000fd5b634e487b7160e01b600052604160045260246000fdfea164736f6c6343000801000a
Constructor Arguments (ABI-Encoded and is the last bytes of the Contract Creation Code above)
0000000000000000000000004222b2a98daa443c6a0a761300d7d6bfd9161e52
-----Decoded View---------------
Arg [0] : _collection (address): 0x4222b2a98dAa443C6a0a761300d7d6bfD9161E52
-----Encoded View---------------
1 Constructor Arguments found :
Arg [0] : 0000000000000000000000004222b2a98daa443c6a0a761300d7d6bfd9161e52
Loading...
Loading
Loading...
Loading
Multichain Portfolio | 27 Chains
Chain | Token | Portfolio % | Price | Amount | Value |
---|
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.