ERC-721
Overview
Max Total Supply
0
Holders
1,769
Market
Volume (24H)
N/A
Min Price (24H)
N/A
Max Price (24H)
N/A
Other Info
Token Contract
Balance
6Loading...
Loading
Loading...
Loading
Loading...
Loading
# | Exchange | Pair | Price | 24H Volume | % Volume |
---|
This contract may be a proxy contract. Click on More Options and select Is this a proxy? to confirm and enable the "Read as Proxy" & "Write as Proxy" tabs.
Contract Source Code Verified (Exact Match)
Contract Name:
DuneDiamond
Compiler Version
v0.8.13+commit.abaa5c0e
Contract Source Code (Solidity Standard Json-Input format)
1234567891011121314151617181920212223242526// SPDX-License-Identifier: UNLICENSED// © 2022 [XXX]. All rights reserved.pragma solidity ^0.8.13;import { IDiamondCut, IDiamondLoupe, IERC173 } from "./Interfaces.sol";import { IERC721Metadata } from "@openzeppelin/contracts/interfaces/IERC721Metadata.sol";import { IERC721 } from "@openzeppelin/contracts/interfaces/IERC721.sol";import { IERC165 } from "@openzeppelin/contracts/interfaces/IERC165.sol";import { IERC2981 } from "@openzeppelin/contracts/interfaces/IERC2981.sol";import "./Constants.sol";import "./facets/DiamondCutAndLoupeFacet.sol";import "./LibDiamond.sol";/*@devThis contract is using the very robust and innovative EIP 2535 (https://eips.ethereum.org/EIPS/eip-2535) whichallows a contract to be organized in the most efficient way*/contract DuneDiamond is BaseFacet {constructor(address _diamondCutAndLoupeFacetAddress) {// adding ERC165 dataDiamondStorage storage ds = LibDiamond.diamondStorage();ds.supportedInterfaces[type(IERC165).interfaceId] = true;ds.supportedInterfaces[type(IDiamondCut).interfaceId] = true;ds.supportedInterfaces[type(IDiamondLoupe).interfaceId] = true;
12345678910111213141516// SPDX-License-Identifier: UNLICENSEDpragma solidity ^0.8.13;import "@openzeppelin/contracts/token/ERC721/IERC721.sol";import { IOpenseaSeaportConduitController } from "./Interfaces.sol";library Constants {string public constant NAME = "The Saudis Soulbound";string public constant SYMBOL = "SASB";uint256 public constant MATURITY_TIMESTAMP = 1657825200 + 40 days;IERC721 public constant SAUD_CONTRACT = IERC721(0xe21EBCD28d37A67757B9Bc7b290f4C4928A430b1);IOpenseaSeaportConduitController public constant OPENSEA_SEAPORT_CONDUIT_CONTROLLER = IOpenseaSeaportConduitController(0x00000000F9490004C11Cef243f5400493c00Ad63);address public constant OPENSEA_SEAPORT = 0x00000000006c3852cbEf3e08E8dF289169EdE581;address public constant ROYALTY_WALLET_ADDRESS = 0xbfE5D10F8DeDed4706C212399D74289f860ac289;uint96 public constant ROYALTY_BASIS_POINTS = 750;}
1234567891011121314151617181920212223242526// SPDX-License-Identifier: MIT// OpenZeppelin Contracts (last updated v4.7.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);
1234567891011121314151617181920212223242526// SPDX-License-Identifier: UNLICENSED// © 2022 [XXX]. All rights reserved.pragma solidity ^0.8.13;/******************************************************************************\* Author: Nick Mudge <nick@perfectabstractions.com> (https://twitter.com/mudgen)* EIP-2535 Diamond Standard: https://eips.ethereum.org/EIPS/eip-2535/******************************************************************************/interface IDiamondCut {enum FacetCutAction {Add, Replace, Remove}// Add=0, Replace=1, Remove=2struct FacetCut {address facetAddress;FacetCutAction action;bytes4[] functionSelectors;}/// @notice Add/replace/remove any number of functions and optionally execute/// a function with delegatecall/// @param _diamondCut Contains the facet addresses and function selectors/// @param _init The address of the contract or facet to execute _calldata/// @param _calldata A function call, including function selector and arguments/// _calldata is executed with delegatecall on _initfunction diamondCut(
12345678910111213141516171819202122232425// 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);}
1234567891011121314151617181920212223242526// SPDX-License-Identifier: MIT// OpenZeppelin Contracts (last updated v4.7.0) (utils/Base64.sol)pragma solidity ^0.8.0;/*** @dev Provides a set of functions to operate with Base64 strings.** _Available since v4.5._*/library Base64 {/*** @dev Base64 Encoding/Decoding Table*/string internal constant _TABLE = "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/";/*** @dev Converts a `bytes` to its Bytes64 `string` representation.*/function encode(bytes memory data) internal pure returns (string memory) {/*** Inspired by Brecht Devos (Brechtpd) implementation - MIT licence* https://github.com/Brechtpd/base64/blob/e78d9fd951e7b0977ddca77d92dc85183770daf4/base64.sol*/if (data.length == 0) return "";
1234567891011121314151617181920212223242526// SPDX-License-Identifier: MIT// OpenZeppelin Contracts (last updated v4.7.0) (utils/Strings.sol)pragma solidity ^0.8.0;/*** @dev String operations.*/library Strings {bytes16 private constant _HEX_SYMBOLS = "0123456789abcdef";uint8 private constant _ADDRESS_LENGTH = 20;/*** @dev Converts a `uint256` to its ASCII `string` decimal representation.*/function toString(uint256 value) internal pure returns (string memory) {// Inspired by OraclizeAPI's implementation - MIT licence// https://github.com/oraclize/ethereum-api/blob/b42146b063c7d6ee1358846c198246239e9360e8/oraclizeAPI_0.4.25.solif (value == 0) {return "0";}uint256 temp = value;uint256 digits;while (temp != 0) {digits++;
1234567891011121314151617181920212223// SPDX-License-Identifier: UNLICENSED// © 2022 [XXX]. All rights reserved.pragma solidity ^0.8.13;import "@openzeppelin/contracts/access/Ownable.sol";import "@openzeppelin/contracts/security/Pausable.sol";import "@openzeppelin/contracts/security/ReentrancyGuard.sol";import { AppStorage } from "../Structs.sol";import "../Interfaces.sol";import "../LibDiamond.sol";/*@devThis contract is part of a diamond / facets implementation as describedin EIP 2535 (https://eips.ethereum.org/EIPS/eip-2535)*/contract BaseFacet is Ownable, Pausable, ReentrancyGuard {function getState()internal pure returns (AppStorage storage s){return LibDiamond.appStorage();}}
1234567891011121314151617181920212223242526// SPDX-License-Identifier: UNLICENSED// © 2022 [XXX]. All rights reserved.pragma solidity ^0.8.13;struct Chapter {string name;string description;uint8 attributeTypeCount;// attributeTypeId => attributeTypemapping(uint8 => Attribute.Type) attributeTypes;// tokenId => (attributeTypeId => Bitfield of attribute available)mapping(uint256 => mapping(uint8 => uint256)) availableAttributes;// tokenId => (attributeTypeId => attributeId active)mapping(uint256 => mapping(uint8 => uint8)) activeAttributes;}
1234567891011121314151617181920212223242526// SPDX-License-Identifier: MIT// OpenZeppelin Contracts (last updated v4.6.0) (token/ERC721/IERC721Receiver.sol)pragma solidity ^0.8.0;/*** @title ERC721 token receiver interface* @dev Interface for any contract that wants to support safeTransfers* from ERC721 asset contracts.*/interface IERC721Receiver {/*** @dev Whenever an {IERC721} `tokenId` token is transferred to this contract via {IERC721-safeTransferFrom}* by `operator` from `from`, this function is called.** It must return its Solidity selector to confirm the token transfer.* If any other value is returned or the interface is not implemented by the recipient, the transfer will be reverted.** The selector can be obtained in Solidity with `IERC721Receiver.onERC721Received.selector`.*/function onERC721Received(address operator,address from,uint256 tokenId,bytes calldata data) external returns (bytes4);
1234567891011121314151617181920212223242526// SPDX-License-Identifier: MIT// OpenZeppelin Contracts v4.4.1 (token/ERC721/extensions/IERC721Metadata.sol)pragma solidity ^0.8.0;import "../IERC721.sol";/*** @title ERC-721 Non-Fungible Token Standard, optional metadata extension* @dev See https://eips.ethereum.org/EIPS/eip-721*/interface IERC721Metadata is IERC721 {/*** @dev Returns the token collection name.*/function name() external view returns (string memory);/*** @dev Returns the token collection symbol.*/function symbol() external view returns (string memory);/*** @dev Returns the Uniform Resource Identifier (URI) for `tokenId` token.*/function tokenURI(uint256 tokenId) external view returns (string memory);
1234567891011121314151617181920212223242526// SPDX-License-Identifier: MIT// OpenZeppelin Contracts (last updated v4.7.0) (utils/Address.sol)pragma solidity ^0.8.1;/*** @dev Collection of functions related to the address type*/library Address {/*** @dev Returns true if `account` is a contract.** [IMPORTANT]* ====* It is unsafe to assume that an address for which this function returns* false is an externally-owned account (EOA) and not a contract.** Among others, `isContract` will return false for the following* types of addresses:** - an externally-owned account* - a contract in construction* - an address where a contract will be created* - an address where a contract lived, but was destroyed* ====*
123456789101112131415161718192021222324// SPDX-License-Identifier: MIT// OpenZeppelin Contracts v4.4.1 (utils/Context.sol)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) {return msg.data;}}
1234567891011121314151617181920212223242526// SPDX-License-Identifier: MIT// OpenZeppelin Contracts v4.4.1 (utils/introspection/ERC165.sol)pragma solidity ^0.8.0;import "./IERC165.sol";/*** @dev Implementation of the {IERC165} interface.** Contracts that want to implement ERC165 should inherit from this contract and override {supportsInterface} to check* for the additional interface id that will be supported. For example:** ```solidity* function supportsInterface(bytes4 interfaceId) public view virtual override returns (bool) {* return interfaceId == type(MyInterface).interfaceId || super.supportsInterface(interfaceId);* }* ```** Alternatively, {ERC165Storage} provides an easier to use but more expensive implementation.*/abstract contract ERC165 is IERC165 {/*** @dev See {IERC165-supportsInterface}.*/function supportsInterface(bytes4 interfaceId) public view virtual override returns (bool) {
1234567891011121314151617181920212223242526// SPDX-License-Identifier: MITpragma solidity >= 0.4.22 <0.9.0;library console {address constant CONSOLE_ADDRESS = address(0x000000000000000000636F6e736F6c652e6c6f67);function _sendLogPayload(bytes memory payload) private view {uint256 payloadLength = payload.length;address consoleAddress = CONSOLE_ADDRESS;assembly {let payloadStart := add(payload, 32)let r := staticcall(gas(), consoleAddress, payloadStart, payloadLength, 0, 0)}}function log() internal view {_sendLogPayload(abi.encodeWithSignature("log()"));}function logInt(int p0) internal view {_sendLogPayload(abi.encodeWithSignature("log(int)", p0));}function logUint(uint p0) internal view {_sendLogPayload(abi.encodeWithSignature("log(uint)", p0));}
1234567891011121314151617181920212223242526// SPDX-License-Identifier: MIT// OpenZeppelin Contracts (last updated v4.7.0) (access/Ownable.sol)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.
1234567891011121314151617181920212223242526// SPDX-License-Identifier: MIT// OpenZeppelin Contracts (last updated v4.7.0) (security/Pausable.sol)pragma solidity ^0.8.0;import "../utils/Context.sol";/*** @dev Contract module which allows children to implement an emergency stop* mechanism that can be triggered by an authorized account.** This module is used through inheritance. It will make available the* modifiers `whenNotPaused` and `whenPaused`, which can be applied to* the functions of your contract. Note that they will not be pausable by* simply including this module, only once the modifiers are put in place.*/abstract contract Pausable is Context {/*** @dev Emitted when the pause is triggered by `account`.*/event Paused(address account);/*** @dev Emitted when the pause is lifted by `account`.*/event Unpaused(address account);
1234567891011121314151617181920212223242526// SPDX-License-Identifier: MIT// OpenZeppelin Contracts v4.4.1 (security/ReentrancyGuard.sol)pragma solidity ^0.8.0;/*** @dev Contract module that helps prevent reentrant calls to a function.** Inheriting from `ReentrancyGuard` will make the {nonReentrant} modifier* available, which can be applied to functions to make sure there are no nested* (reentrant) calls to them.** Note that because there is a single `nonReentrant` guard, functions marked as* `nonReentrant` may not call one another. This can be worked around by making* those functions `private`, and then adding `external` `nonReentrant` entry* points to them.** TIP: If you would like to learn more about reentrancy and alternative ways* to protect against it, check out our blog post* https://blog.openzeppelin.com/reentrancy-after-istanbul/[Reentrancy After Istanbul].*/abstract contract ReentrancyGuard {// Booleans are more expensive than uint256 or any type that takes up a full// word because each write operation emits an extra SLOAD to first read the// slot's contents, replace the bits taken up by the boolean, and then write// back. This is the compiler's defense against contract upgrades and
1234567891011121314151617181920212223242526// SPDX-License-Identifier: UNLICENSED// © 2022 [XXX]. All rights reserved.pragma solidity ^0.8.13;/******************************************************************************\* Author: Nick Mudge <nick@perfectabstractions.com> (https://twitter.com/mudgen)* EIP-2535 Diamond Standard: https://eips.ethereum.org/EIPS/eip-2535/******************************************************************************/import "./Interfaces.sol";import { DiamondStorage, AppStorage } from "./Structs.sol";library LibDiamond {// ==================== Diamond Constants ====================bytes32 constant DIAMOND_STORAGE_POSITION = keccak256("diamond.standard.diamond.storage");bytes32 constant APP_STORAGE_POSITION = keccak256("diamond.standard.app.storage");event DiamondCut(IDiamondCut.FacetCut[] _diamondCut, address _init, bytes _calldata);function diamondStorage() internal pure returns (DiamondStorage storage ds) {bytes32 position = DIAMOND_STORAGE_POSITION;assembly {ds.slot := position}
12345678910111213141516171819202122232425// 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)externalviewreturns (address receiver, uint256 royaltyAmount);}
123456// SPDX-License-Identifier: MIT// OpenZeppelin Contracts v4.4.1 (interfaces/IERC721.sol)pragma solidity ^0.8.0;import "../token/ERC721/IERC721.sol";
123456// SPDX-License-Identifier: MIT// OpenZeppelin Contracts v4.4.1 (interfaces/IERC721Metadata.sol)pragma solidity ^0.8.0;import "../token/ERC721/extensions/IERC721Metadata.sol";
123456// SPDX-License-Identifier: MIT// OpenZeppelin Contracts v4.4.1 (interfaces/IERC165.sol)pragma solidity ^0.8.0;import "../utils/introspection/IERC165.sol";
1234567891011121314151617181920212223242526// SPDX-License-Identifier: MITpragma solidity ^0.8.13;/******************************************************************************\* Author: Nick Mudge <nick@perfectabstractions.com> (https://twitter.com/mudgen)* EIP-2535 Diamond Standard: https://eips.ethereum.org/EIPS/eip-2535/******************************************************************************/import { DiamondStorage } from "../Structs.sol";import "../LibDiamond.sol";import { IERC165 } from "@openzeppelin/contracts/interfaces/IERC165.sol";import "./BaseFacet.sol";/*@devThe facet that handling all diamond related logic and can be called only by @DiamondThis contract is part of a diamond / facets implementation as describedin EIP 2535 (https://eips.ethereum.org/EIPS/eip-2535)*/contract DiamondCutAndLoupeFacet is BaseFacet, IDiamondCut, IDiamondLoupe, IERC165 {/// @notice Add/replace/remove any number of functions and optionally execute/// a function with delegatecall/// @param _diamondCut Contains the facet addresses and function selectors/// @param _init The address of the contract or facet to execute _calldata/// @param _calldata A function call, including function selector and arguments
123456789101112131415{"optimizer": {"enabled": true,"runs": 99999},"outputSelection": {"*": {"*": ["evm.bytecode","evm.deployedBytecode","abi"]}}}
Contract Security Audit
- No Contract Security Audit Submitted- Submit Audit Here
[{"inputs":[{"internalType":"address","name":"_diamondCutAndLoupeFacetAddress","type":"address"}],"stateMutability":"nonpayable","type":"constructor"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"previousOwner","type":"address"},{"indexed":true,"internalType":"address","name":"newOwner","type":"address"}],"name":"OwnershipTransferred","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"address","name":"account","type":"address"}],"name":"Paused","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"address","name":"account","type":"address"}],"name":"Unpaused","type":"event"},{"stateMutability":"payable","type":"fallback"},{"inputs":[],"name":"owner","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"paused","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"renounceOwnership","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"newOwner","type":"address"}],"name":"transferOwnership","outputs":[],"stateMutability":"nonpayable","type":"function"},{"stateMutability":"payable","type":"receive"}]
Contract Creation Code
60806040523480156200001157600080fd5b506040516200127f3803806200127f8339810160408190526200003491620006ba565b6200003f33620002d8565b6000805460ff60a01b19168155600180556200006662000328602090811b620001ed17901c565b6301ffc9a760e01b600090815260038201602090815260408083208054600160ff1991821681179092556307e4c70760e21b855282852080548216831790556348e2b09360e01b855282852080548216831790556307f5828d60e41b855282852080548216831790556380ac58cd60e01b85528285208054821683179055635b5e139f60e01b8552828520805482168317905563152a902d60e11b855291842080549092161790559192509062000126906200033b811b620002dc17901c565b805460ff1916815560408051600680825260e08201909252919250600091906020820160c080368337019050509050631f931c1c60e01b81600081518110620001735762000173620006ec565b6001600160e01b0319909216602092830291909101909101528051637a0ed62760e01b9082906001908110620001ad57620001ad620006ec565b6001600160e01b03199092166020928302919091019091015280516356fe50af60e11b9082906002908110620001e757620001e7620006ec565b6001600160e01b03199092166020928302919091019091015280516314bbdacb60e21b9082906003908110620002215762000221620006ec565b6001600160e01b03199092166020928302919091019091015280516366ffd66360e11b90829060049081106200025b576200025b620006ec565b6001600160e01b03199092166020928302919091019091015280516301ffc9a760e01b9082906005908110620002955762000295620006ec565b60200260200101906001600160e01b03191690816001600160e01b03191681525050620002ce84826200035f60201b620003001760201c565b50505050620007b0565b600080546001600160a01b038381166001600160a01b0319831681178455604051919092169283917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e09190a35050565b6000805160206200123b83398151915290565b7f2ad3e90873cbe86f6a024e2d91b7abbabc6ce35c355c15912cb7d7df99da235b90565b6000815111620003ca5760405162461bcd60e51b815260206004820152602b60248201527f4c69624469616d6f6e644375743a204e6f2073656c6563746f727320696e206660448201526a1858d95d081d1bc818dd5d60aa1b60648201526084015b60405180910390fd5b6000805160206200123b8339815191526001600160a01b038316620004475760405162461bcd60e51b815260206004820152602c60248201527f4c69624469616d6f6e644375743a204164642066616365742063616e2774206260448201526b65206164647265737328302960a01b6064820152608401620003c1565b6001600160a01b03831660009081526001820160205260408120549061ffff821690036200047b576200047b82856200060d565b60005b8351811015620006065760008482815181106200049f576200049f620006ec565b6020908102919091018101516001600160e01b031981166000908152918690526040909120549091506001600160a01b03168015620005475760405162461bcd60e51b815260206004820152603560248201527f4c69624469616d6f6e644375743a2043616e2774206164642066756e6374696f60448201527f6e207468617420616c72656164792065786973747300000000000000000000006064820152608401620003c1565b6001600160e01b03198216600081815260208781526040808320805461ffff60a01b1916600160a01b61ffff8b16021781556001600160a01b038c168085526001808c0185529285208054938401815585528385206008840401805463ffffffff60079095166004026101000a948502191660e08a901c94909402939093179092559390925287905281546001600160a01b03191617905583620005eb8162000718565b94505050508080620005fd906200073c565b9150506200047e565b5050505050565b62000632816040518060600160405280602481526020016200125b6024913962000690565b6002820180546001600160a01b0392909216600081815260019485016020908152604082208601805461ffff191661ffff909616959095179094558254948501835591825291902090910180546001600160a01b0319169091179055565b813b8181620006b45760405162461bcd60e51b8152600401620003c1919062000758565b50505050565b600060208284031215620006cd57600080fd5b81516001600160a01b0381168114620006e557600080fd5b9392505050565b634e487b7160e01b600052603260045260246000fd5b634e487b7160e01b600052601160045260246000fd5b600061ffff80831681810362000732576200073262000702565b6001019392505050565b60006001820162000751576200075162000702565b5060010190565b600060208083528351808285015260005b81811015620007875785810183015185820160400152820162000769565b818111156200079a576000604083870101525b50601f01601f1916929092016040019392505050565b610a7b80620007c06000396000f3fe6080604052600436106100435760003560e01c80635c975abb14610143578063715018a6146101835780638da5cb5b14610198578063f2fde38b146101cd5761004a565b3661004a57005b600080357fffffffff000000000000000000000000000000000000000000000000000000001681527fc8fcad8db84d3cc18b4c41d551ea0ee66dd599cde068d998e57d5e09332c131c602052604090205473ffffffffffffffffffffffffffffffffffffffff168061011d576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820181905260248201527f4469616d6f6e643a2046756e6374696f6e20646f6573206e6f7420657869737460448201526064015b60405180910390fd5b3660008037600080366000845af43d6000803e80801561013c573d6000f35b3d6000fd5b005b34801561014f57600080fd5b5060005474010000000000000000000000000000000000000000900460ff1660405190151581526020015b60405180910390f35b34801561018f57600080fd5b50610141610211565b3480156101a457600080fd5b5060005460405173ffffffffffffffffffffffffffffffffffffffff909116815260200161017a565b3480156101d957600080fd5b506101416101e83660046108ba565b610225565b7fc8fcad8db84d3cc18b4c41d551ea0ee66dd599cde068d998e57d5e09332c131c90565b6102196106c1565b6102236000610742565b565b61022d6106c1565b73ffffffffffffffffffffffffffffffffffffffff81166102d0576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201527f64647265737300000000000000000000000000000000000000000000000000006064820152608401610114565b6102d981610742565b50565b7f2ad3e90873cbe86f6a024e2d91b7abbabc6ce35c355c15912cb7d7df99da235b90565b6000815111610391576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602b60248201527f4c69624469616d6f6e644375743a204e6f2073656c6563746f727320696e206660448201527f6163657420746f206375740000000000000000000000000000000000000000006064820152608401610114565b7fc8fcad8db84d3cc18b4c41d551ea0ee66dd599cde068d998e57d5e09332c131c73ffffffffffffffffffffffffffffffffffffffff8316610455576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602c60248201527f4c69624469616d6f6e644375743a204164642066616365742063616e2774206260448201527f65206164647265737328302900000000000000000000000000000000000000006064820152608401610114565b73ffffffffffffffffffffffffffffffffffffffff831660009081526001820160205260408120549061ffff821690036104935761049382856107b7565b60005b83518110156106ba5760008482815181106104b3576104b36108f7565b6020908102919091018101517fffffffff00000000000000000000000000000000000000000000000000000000811660009081529186905260409091205490915073ffffffffffffffffffffffffffffffffffffffff168015610598576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603560248201527f4c69624469616d6f6e644375743a2043616e2774206164642066756e6374696f60448201527f6e207468617420616c72656164792065786973747300000000000000000000006064820152608401610114565b7fffffffff00000000000000000000000000000000000000000000000000000000821660008181526020878152604080832080547fffffffffffffffffffff0000ffffffffffffffffffffffffffffffffffffffff167401000000000000000000000000000000000000000061ffff8b160217815573ffffffffffffffffffffffffffffffffffffffff8c168085526001808c0185529285208054938401815585528385206008840401805463ffffffff60079095166004026101000a948502191660e08a901c94909402939093179092559390925287905281547fffffffffffffffffffffffff000000000000000000000000000000000000000016179055836106a281610955565b945050505080806106b290610976565b915050610496565b5050505050565b60005473ffffffffffffffffffffffffffffffffffffffff163314610223576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e65726044820152606401610114565b6000805473ffffffffffffffffffffffffffffffffffffffff8381167fffffffffffffffffffffffff0000000000000000000000000000000000000000831681178455604051919092169283917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e09190a35050565b6107d981604051806060016040528060248152602001610a2260249139610879565b60028201805473ffffffffffffffffffffffffffffffffffffffff9290921660008181526001948501602090815260408220860180547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00001661ffff909616959095179094558254948501835591825291902090910180547fffffffffffffffffffffffff0000000000000000000000000000000000000000169091179055565b813b81816108b4576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161011491906109ae565b50505050565b6000602082840312156108cc57600080fd5b813573ffffffffffffffffffffffffffffffffffffffff811681146108f057600080fd5b9392505050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b600061ffff80831681810361096c5761096c610926565b6001019392505050565b60007fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff82036109a7576109a7610926565b5060010190565b600060208083528351808285015260005b818110156109db578581018301518582016040015282016109bf565b818111156109ed576000604083870101525b50601f017fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe01692909201604001939250505056fe4c69624469616d6f6e644375743a204e657720666163657420686173206e6f20636f6465a2646970667358221220a8e4f5b89e7be6bff80744813878ce33c3b2eab13421b68d25cb1e65918b1d3364736f6c634300080d0033c8fcad8db84d3cc18b4c41d551ea0ee66dd599cde068d998e57d5e09332c131c4c69624469616d6f6e644375743a204e657720666163657420686173206e6f20636f6465000000000000000000000000c96dca18ac358ff1258676d9aee46174a2e18ea6
Deployed Bytecode
0x6080604052600436106100435760003560e01c80635c975abb14610143578063715018a6146101835780638da5cb5b14610198578063f2fde38b146101cd5761004a565b3661004a57005b600080357fffffffff000000000000000000000000000000000000000000000000000000001681527fc8fcad8db84d3cc18b4c41d551ea0ee66dd599cde068d998e57d5e09332c131c602052604090205473ffffffffffffffffffffffffffffffffffffffff168061011d576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820181905260248201527f4469616d6f6e643a2046756e6374696f6e20646f6573206e6f7420657869737460448201526064015b60405180910390fd5b3660008037600080366000845af43d6000803e80801561013c573d6000f35b3d6000fd5b005b34801561014f57600080fd5b5060005474010000000000000000000000000000000000000000900460ff1660405190151581526020015b60405180910390f35b34801561018f57600080fd5b50610141610211565b3480156101a457600080fd5b5060005460405173ffffffffffffffffffffffffffffffffffffffff909116815260200161017a565b3480156101d957600080fd5b506101416101e83660046108ba565b610225565b7fc8fcad8db84d3cc18b4c41d551ea0ee66dd599cde068d998e57d5e09332c131c90565b6102196106c1565b6102236000610742565b565b61022d6106c1565b73ffffffffffffffffffffffffffffffffffffffff81166102d0576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201527f64647265737300000000000000000000000000000000000000000000000000006064820152608401610114565b6102d981610742565b50565b7f2ad3e90873cbe86f6a024e2d91b7abbabc6ce35c355c15912cb7d7df99da235b90565b6000815111610391576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602b60248201527f4c69624469616d6f6e644375743a204e6f2073656c6563746f727320696e206660448201527f6163657420746f206375740000000000000000000000000000000000000000006064820152608401610114565b7fc8fcad8db84d3cc18b4c41d551ea0ee66dd599cde068d998e57d5e09332c131c73ffffffffffffffffffffffffffffffffffffffff8316610455576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602c60248201527f4c69624469616d6f6e644375743a204164642066616365742063616e2774206260448201527f65206164647265737328302900000000000000000000000000000000000000006064820152608401610114565b73ffffffffffffffffffffffffffffffffffffffff831660009081526001820160205260408120549061ffff821690036104935761049382856107b7565b60005b83518110156106ba5760008482815181106104b3576104b36108f7565b6020908102919091018101517fffffffff00000000000000000000000000000000000000000000000000000000811660009081529186905260409091205490915073ffffffffffffffffffffffffffffffffffffffff168015610598576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603560248201527f4c69624469616d6f6e644375743a2043616e2774206164642066756e6374696f60448201527f6e207468617420616c72656164792065786973747300000000000000000000006064820152608401610114565b7fffffffff00000000000000000000000000000000000000000000000000000000821660008181526020878152604080832080547fffffffffffffffffffff0000ffffffffffffffffffffffffffffffffffffffff167401000000000000000000000000000000000000000061ffff8b160217815573ffffffffffffffffffffffffffffffffffffffff8c168085526001808c0185529285208054938401815585528385206008840401805463ffffffff60079095166004026101000a948502191660e08a901c94909402939093179092559390925287905281547fffffffffffffffffffffffff000000000000000000000000000000000000000016179055836106a281610955565b945050505080806106b290610976565b915050610496565b5050505050565b60005473ffffffffffffffffffffffffffffffffffffffff163314610223576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e65726044820152606401610114565b6000805473ffffffffffffffffffffffffffffffffffffffff8381167fffffffffffffffffffffffff0000000000000000000000000000000000000000831681178455604051919092169283917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e09190a35050565b6107d981604051806060016040528060248152602001610a2260249139610879565b60028201805473ffffffffffffffffffffffffffffffffffffffff9290921660008181526001948501602090815260408220860180547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00001661ffff909616959095179094558254948501835591825291902090910180547fffffffffffffffffffffffff0000000000000000000000000000000000000000169091179055565b813b81816108b4576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161011491906109ae565b50505050565b6000602082840312156108cc57600080fd5b813573ffffffffffffffffffffffffffffffffffffffff811681146108f057600080fd5b9392505050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b600061ffff80831681810361096c5761096c610926565b6001019392505050565b60007fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff82036109a7576109a7610926565b5060010190565b600060208083528351808285015260005b818110156109db578581018301518582016040015282016109bf565b818111156109ed576000604083870101525b50601f017fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe01692909201604001939250505056fe4c69624469616d6f6e644375743a204e657720666163657420686173206e6f20636f6465a2646970667358221220a8e4f5b89e7be6bff80744813878ce33c3b2eab13421b68d25cb1e65918b1d3364736f6c634300080d0033
Constructor Arguments (ABI-Encoded and is the last bytes of the Contract Creation Code above)
000000000000000000000000c96dca18ac358ff1258676d9aee46174a2e18ea6
-----Decoded View---------------
Arg [0] : _diamondCutAndLoupeFacetAddress (address): 0xC96dcA18Ac358ff1258676d9aeE46174a2e18EA6
-----Encoded View---------------
1 Constructor Arguments found :
Arg [0] : 000000000000000000000000c96dca18ac358ff1258676d9aee46174a2e18ea6
Deployed Bytecode Sourcemap
785:2226:17:-:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;2351:13;2422:7;;;;2367:63;;643:45:19;2367:63:17;;;;;:76;;;;2453:64;;;;;;;216:2:24;2453:64:17;;;198:21:24;;;235:18;;;228:30;294:34;274:18;;;267:62;346:18;;2453:64:17;;;;;;;;;2569:14;2566:1;2563;2550:34;2660:1;2657;2641:14;2638:1;2631:5;2624;2611:51;2696:16;2693:1;2690;2675:38;2733:6;2752:66;;;;2868:16;2865:1;2857:28;2752:66;2787:16;2784:1;2777:27;2726:173;;1615:84:5;;;;;;;;;;-1:-1:-1;1662:4:5;1685:7;;;;;;1615:84;;540:14:24;;533:22;515:41;;503:2;488:18;1615:84:5;;;;;;;;1831:101:0;;;;;;;;;;;;;:::i;1201:85::-;;;;;;;;;;-1:-1:-1;1247:7:0;1273:6;1201:85;;1273:6;;;;713:74:24;;701:2;686:18;1201:85:0;567:226:24;2081:198:0;;;;;;;;;;-1:-1:-1;2081:198:0;;;;;:::i;:::-;;:::i;873:197:19:-;643:45;;873:197::o;1831:101:0:-;1094:13;:11;:13::i;:::-;1895:30:::1;1922:1;1895:18;:30::i;:::-;1831:101::o:0;2081:198::-;1094:13;:11;:13::i;:::-;2169:22:::1;::::0;::::1;2161:73;;;::::0;::::1;::::0;;1314:2:24;2161:73:0::1;::::0;::::1;1296:21:24::0;1353:2;1333:18;;;1326:30;1392:34;1372:18;;;1365:62;1463:8;1443:18;;;1436:36;1489:19;;2161:73:0::1;1112:402:24::0;2161:73:0::1;2244:28;2263:8;2244:18;:28::i;:::-;2081:198:::0;:::o;1076:187:19:-;734:41;;1076:187::o;2389:1146::-;2525:1;2497:18;:25;:29;2489:85;;;;;;;1721:2:24;2489:85:19;;;1703:21:24;1760:2;1740:18;;;1733:30;1799:34;1779:18;;;1772:62;1870:13;1850:18;;;1843:41;1901:19;;2489:85:19;1519:407:24;2489:85:19;643:45;2723:27;;;2715:84;;;;;;;2133:2:24;2715:84:19;;;2115:21:24;2172:2;2152:18;;;2145:30;2211:34;2191:18;;;2184:62;2282:14;2262:18;;;2255:42;2314:19;;2715:84:19;1931:408:24;2715:84:19;2842:40;;;2809:23;2842:40;;;:25;;;:40;;;;;:65;;2976:21;;;;;2972:79;;3013:27;3022:2;3026:13;3013:8;:27::i;:::-;3065:21;3060:469;3104:18;:25;3088:13;:41;3060:469;;;3162:15;3180:18;3199:13;3180:33;;;;;;;;:::i;:::-;;;;;;;;;;;;3253:39;;;3227:23;3253:39;;;;;;;;;;;:52;3180:33;;-1:-1:-1;3253:52:19;;3327:29;;3319:95;;;;;;;2735:2:24;3319:95:19;;;2717:21:24;2774:2;2754:18;;;2747:30;2813:34;2793:18;;;2786:62;2884:23;2864:18;;;2857:51;2925:19;;3319:95:19;2533:417:24;3319:95:19;5891:40;;;:29;:40;;;;;;;;;;;:85;;;;;;;;;;;;5986:40;;;;;;-1:-1:-1;5986:25:19;;;:40;;;;;:74;;;;;;;;;;;;;;;;;;;;;;;;;5891:85;5986:74;;;;;;;;;;;;;;;;;;;;;6070:40;;;;;;;:69;;;;;;;3500:18;;;;:::i;:::-;;;;3148:381;;3131:15;;;;;:::i;:::-;;;;3060:469;;;;2479:1056;;2389:1146;;:::o;1359:130:0:-;1247:7;1273:6;1422:23;1273:6;719:10:12;1422:23:0;1414:68;;;;;;;3748:2:24;1414:68:0;;;3730:21:24;;;3767:18;;;3760:30;3826:34;3806:18;;;3799:62;3878:18;;1414:68:0;3546:356:24;2433:187:0;2506:16;2525:6;;;2541:17;;;;;;;;;;2573:40;;2525:6;;;;;;;2573:40;;2506:16;2573:40;2496:124;2433:187;:::o;5430:324:19:-;5517:77;5540:13;5517:77;;;;;;;;;;;;;;;;;:22;:77::i;:::-;5675:17;;;:24;;5604:40;;;;;;;;;:25;;;;:40;;;;;;;:61;;:96;;;;;;;;;;;;;;;5710:37;;;;;;;;;;;;;;;;;;;;;;;;;5430:324::o;9225:261::-;9398:22;;9465:13;9447:16;9439:40;;;;;;;;;;;;;:::i;:::-;;9319:167;9225:261;;:::o;798:309:24:-;857:6;910:2;898:9;889:7;885:23;881:32;878:52;;;926:1;923;916:12;878:52;965:9;952:23;1015:42;1008:5;1004:54;997:5;994:65;984:93;;1073:1;1070;1063:12;984:93;1096:5;798:309;-1:-1:-1;;;798:309:24:o;2344:184::-;2396:77;2393:1;2386:88;2493:4;2490:1;2483:15;2517:4;2514:1;2507:15;2955:184;3007:77;3004:1;2997:88;3104:4;3101:1;3094:15;3128:4;3125:1;3118:15;3144:197;3182:3;3210:6;3251:2;3244:5;3240:14;3278:2;3269:7;3266:15;3263:41;;3284:18;;:::i;:::-;3333:1;3320:15;;3144:197;-1:-1:-1;;;3144:197:24:o;3346:195::-;3385:3;3416:66;3409:5;3406:77;3403:103;;3486:18;;:::i;:::-;-1:-1:-1;3533:1:24;3522:13;;3346:195::o;3907:656::-;4019:4;4048:2;4077;4066:9;4059:21;4109:6;4103:13;4152:6;4147:2;4136:9;4132:18;4125:34;4177:1;4187:140;4201:6;4198:1;4195:13;4187:140;;;4296:14;;;4292:23;;4286:30;4262:17;;;4281:2;4258:26;4251:66;4216:10;;4187:140;;;4345:6;4342:1;4339:13;4336:91;;;4415:1;4410:2;4401:6;4390:9;4386:22;4382:31;4375:42;4336:91;-1:-1:-1;4479:2:24;4467:15;4484:66;4463:88;4448:104;;;;4554:2;4444:113;;3907:656;-1:-1:-1;;;3907:656:24:o
Swarm Source
ipfs://a8e4f5b89e7be6bff80744813878ce33c3b2eab13421b68d25cb1e65918b1d33
Loading...
Loading
Loading...
Loading
[ Download: CSV Export ]
[ Download: CSV Export ]
A token is a representation of an on-chain or off-chain asset. The token page shows information such as price, total supply, holders, transfers and social links. Learn more about this page in our Knowledge Base.