Source Code
Overview
HYPE Balance
HYPE Value
$0.00Latest 25 from a total of 1,712 transactions
| Transaction Hash |
|
Block
|
From
|
To
|
|||||
|---|---|---|---|---|---|---|---|---|---|
| Upgrade To And C... | 13871462 | 133 days ago | IN | 0 HYPE | 0.00000364 | ||||
| Execute | 13871459 | 133 days ago | IN | 0 HYPE | 0.00000366 | ||||
| Execute | 13871457 | 133 days ago | IN | 0 HYPE | 0.00000322 | ||||
| 0xee33b7e2 | 13871440 | 133 days ago | IN | 0 HYPE | 0.00000283 | ||||
| 0x2a011594 | 13871438 | 133 days ago | IN | 0 HYPE | 0.00000284 | ||||
| 0xa0b5ffb0 | 13871434 | 133 days ago | IN | 0 HYPE | 0.00000306 | ||||
| Upgrade To And C... | 13867958 | 134 days ago | IN | 0 HYPE | 0.00000283 | ||||
| Execute | 13867954 | 134 days ago | IN | 0 HYPE | 0.00000284 | ||||
| Execute | 13867951 | 134 days ago | IN | 0 HYPE | 0.00000283 | ||||
| 0xee33b7e2 | 13867947 | 134 days ago | IN | 0 HYPE | 0.00000283 | ||||
| 0x2a011594 | 13867944 | 134 days ago | IN | 0 HYPE | 0.00000284 | ||||
| 0xa0b5ffb0 | 13867941 | 134 days ago | IN | 0 HYPE | 0.00000283 | ||||
| Upgrade To | 13865000 | 134 days ago | IN | 0 HYPE | 0.00000279 | ||||
| Initialize | 13864997 | 134 days ago | IN | 0 HYPE | 0.00000308 | ||||
| Initialize | 13864995 | 134 days ago | IN | 0 HYPE | 0.00000309 | ||||
| Renounce Ownersh... | 13864993 | 134 days ago | IN | 0 HYPE | 0.00000295 | ||||
| Transfer Ownersh... | 13864991 | 134 days ago | IN | 0 HYPE | 0.00000307 | ||||
| Change Admin | 13864988 | 134 days ago | IN | 0 HYPE | 0.00000279 | ||||
| Withdraw | 13208610 | 141 days ago | IN | 0 HYPE | 0.00000309 | ||||
| Set Whitelist Mi... | 13188443 | 141 days ago | IN | 0 HYPE | 0.00000252 | ||||
| Whitelist Mint | 13173850 | 141 days ago | IN | 2 HYPE | 0.00001883 | ||||
| Whitelist Mint | 13150392 | 142 days ago | IN | 2 HYPE | 0.0000204 | ||||
| Whitelist Mint | 13147189 | 142 days ago | IN | 2 HYPE | 0.00016012 | ||||
| Whitelist Mint | 13147151 | 142 days ago | IN | 2 HYPE | 0.00010832 | ||||
| Whitelist Mint | 13139311 | 142 days ago | IN | 2 HYPE | 0.00219472 |
Advanced mode: Intended for advanced users or developers and will display all Internal Transactions including zero value transfers.
Latest 25 internal transactions (View All)
Advanced mode:
| Parent Transaction Hash | Block | From | To | ||||
|---|---|---|---|---|---|---|---|
| 13208610 | 141 days ago | 1,122 HYPE | |||||
| 13173850 | 141 days ago | 0 HYPE | |||||
| 13173850 | 141 days ago | 0 HYPE | |||||
| 13173850 | 141 days ago | 0 HYPE | |||||
| 13173850 | 141 days ago | 0 HYPE | |||||
| 13173850 | 141 days ago | 0 HYPE | |||||
| 13150392 | 142 days ago | 0 HYPE | |||||
| 13150392 | 142 days ago | 0 HYPE | |||||
| 13150392 | 142 days ago | 0 HYPE | |||||
| 13150392 | 142 days ago | 0 HYPE | |||||
| 13150392 | 142 days ago | 0 HYPE | |||||
| 13147189 | 142 days ago | 0 HYPE | |||||
| 13147189 | 142 days ago | 0 HYPE | |||||
| 13147189 | 142 days ago | 0 HYPE | |||||
| 13147189 | 142 days ago | 0 HYPE | |||||
| 13147189 | 142 days ago | 0 HYPE | |||||
| 13147151 | 142 days ago | 0 HYPE | |||||
| 13147151 | 142 days ago | 0 HYPE | |||||
| 13147151 | 142 days ago | 0 HYPE | |||||
| 13147151 | 142 days ago | 0 HYPE | |||||
| 13147151 | 142 days ago | 0 HYPE | |||||
| 13139311 | 142 days ago | 0 HYPE | |||||
| 13139311 | 142 days ago | 0 HYPE | |||||
| 13139311 | 142 days ago | 0 HYPE | |||||
| 13139311 | 142 days ago | 0 HYPE |
Cross-Chain Transactions
Loading...
Loading
Contract Name:
IllumeownatiMinter
Compiler Version
v0.8.27+commit.40a35a09
Optimization Enabled:
Yes with 30 runs
Other Settings:
paris EvmVersion
Contract Source Code (Solidity Standard Json-Input format)
// SPDX-License-Identifier: MIT
pragma solidity ^0.8.27;
import "@openzeppelin/contracts/access/Ownable.sol";
import "@openzeppelin/contracts/utils/ReentrancyGuard.sol";
interface IIllumeownatiNFT {
function mintTo(address to, uint256 tokenId, uint256 tier) external;
function airdropMint(address to, uint256 tokenId, uint256 tier) external;
function maxTokenId() external view returns (uint256);
function currentTokenId() external view returns (uint256);
function getTierMaxSupply(uint256 tier) external view returns (uint256);
function getTierCurrentSupply(uint256 tier) external view returns (uint256);
}
/**
* @title IllumeownatiMinter
* @dev Handles public and whitelist minting for IllumeownatiNFT
*/
contract IllumeownatiMinter is Ownable, ReentrancyGuard {
//VERSION 1.0.0
uint256 public constant VERSION = 1;
// Phase enum for different minting phases
enum Phase {
PHASE1, // Strict tier matching required
PHASE2 // Tier inheritance enabled (higher tiers can mint lower)
}
// The NFT contract this minter is authorized to mint for
IIllumeownatiNFT public nftContract;
// Phase management
Phase public currentPhase;
// Minting configuration
uint256 public publicMintPrice;
uint256 public whitelistMintPrice;
bool public publicMintingEnabled;
bool public whitelistMintingEnabled;
// Whitelist/tier management
mapping(address => mapping(uint256 => bool)) public userTiers; // user => tier => eligible
mapping(address => bool) public hasWhitelistMinted;
// Public mint limits
uint256 public maxPublicMintsPerUser;
mapping(address => uint256) public publicMintsCount;
// Events
event NFTContractSet(address indexed nftContract);
event PhaseUpdated(Phase newPhase);
event PublicMintPriceSet(uint256 price);
event WhitelistMintPriceSet(uint256 price);
event PublicMintingToggled(bool enabled);
event WhitelistMintingToggled(bool enabled);
event TierUpdated(address indexed user, uint256 tier, bool eligible);
event WhitelistMinted(address indexed to, uint256 indexed tokenId, uint256 tier);
event PublicMinted(address indexed to, uint256 indexed tokenId);
event MaxPublicMintsPerUserSet(uint256 maxMints);
// Errors
error NFTContractNotSet();
error PublicMintingDisabled();
error WhitelistMintingDisabled();
error UserNotEligible();
error UserAlreadyWhitelistMinted();
error UserAlreadyPublicMinted();
error InsufficientPayment();
error MaxPublicMintsReached();
error TokenIdExceedsMax();
error TierSupplyExhausted(uint256 tier);
/**
* @dev Constructor
* @param initialPublicMintPrice Initial public mint price
* @param initialWhitelistMintPrice Initial whitelist mint price
* @param initialMaxPublicMintsPerUser Initial max public mints per user
*/
constructor(
uint256 initialPublicMintPrice,
uint256 initialWhitelistMintPrice,
uint256 initialMaxPublicMintsPerUser
) Ownable(msg.sender) {
publicMintPrice = initialPublicMintPrice;
whitelistMintPrice = initialWhitelistMintPrice;
maxPublicMintsPerUser = initialMaxPublicMintsPerUser;
publicMintingEnabled = false;
whitelistMintingEnabled = false;
currentPhase = Phase.PHASE1; // Start in Phase 1
}
/**
* @dev Check if user is eligible for a specific tier based on current phase
* @param user The user address
* @param tier The tier to check
* @return bool Whether user is eligible
*/
function isUserEligibleForTier(address user, uint256 tier) public view returns (bool) {
if (currentPhase == Phase.PHASE1) {
// Phase 1: Strict tier matching - user must be explicitly whitelisted for this tier
return userTiers[user][tier];
} else {
// Phase 2: Tier inheritance - if user has any tier >= target tier, they can mint it
if (userTiers[user][tier]) {
return true; // User is explicitly eligible for this tier
}
// Check if user has ANY higher tier that allows them to mint this tier
// Find the highest tier the user has, then check if it's >= target tier
uint256 userHighestTier = 0;
for (uint256 checkTier = 5; checkTier >= 1; checkTier--) {
if (userTiers[user][checkTier]) {
userHighestTier = checkTier;
break;
}
}
// If user has any tier higher than or equal to target tier, they can mint it
return userHighestTier >= tier;
}
}
/**
* @dev Whitelist mint - tier-based minting for whitelisted users
* @param tier The tier to mint (user must be eligible for this tier)
*/
function whitelistMint(uint256 tier) external payable nonReentrant {
if (address(nftContract) == address(0)) revert NFTContractNotSet();
if (!whitelistMintingEnabled) revert WhitelistMintingDisabled();
if (!isUserEligibleForTier(msg.sender, tier)) revert UserNotEligible();
if (hasWhitelistMinted[msg.sender]) revert UserAlreadyWhitelistMinted();
if (msg.value < whitelistMintPrice) revert InsufficientPayment();
// Check tier availability
uint256 maxSupply = nftContract.getTierMaxSupply(tier);
uint256 currentSupply = nftContract.getTierCurrentSupply(tier);
if (currentSupply >= maxSupply) revert TierSupplyExhausted(tier);
uint256 currentTokenId = nftContract.currentTokenId();
uint256 maxTokenId = nftContract.maxTokenId();
if (currentTokenId >= maxTokenId) revert TokenIdExceedsMax();
uint256 tokenId = currentTokenId + 1;
// Mint through the NFT contract
nftContract.mintTo(msg.sender, tokenId, tier);
// Update state
hasWhitelistMinted[msg.sender] = true;
// Note: We don't reset tiers after minting, user keeps their eligibility
emit WhitelistMinted(msg.sender, tokenId, tier);
}
/**
* @dev Public mint - open to anyone (with limits)
*/
function publicMint() external payable nonReentrant {
if (address(nftContract) == address(0)) revert NFTContractNotSet();
if (!publicMintingEnabled) revert PublicMintingDisabled();
if (msg.value < publicMintPrice) revert InsufficientPayment();
if (publicMintsCount[msg.sender] >= maxPublicMintsPerUser) revert MaxPublicMintsReached();
uint256 currentTokenId = nftContract.currentTokenId();
uint256 maxTokenId = nftContract.maxTokenId();
if (currentTokenId >= maxTokenId) revert TokenIdExceedsMax();
uint256 tokenId = currentTokenId + 1;
// Mint through the NFT contract (tier 0 for public mints)
nftContract.mintTo(msg.sender, tokenId, 0);
// Update state
publicMintsCount[msg.sender]++;
emit PublicMinted(msg.sender, tokenId);
}
// Admin functions
function setNFTContract(address _nftContract) external onlyOwner {
nftContract = IIllumeownatiNFT(_nftContract);
emit NFTContractSet(_nftContract);
}
function setPhase(Phase _phase) external onlyOwner {
currentPhase = _phase;
emit PhaseUpdated(_phase);
}
function setPublicMintPrice(uint256 price) external onlyOwner {
publicMintPrice = price;
emit PublicMintPriceSet(price);
}
function setWhitelistMintPrice(uint256 price) external onlyOwner {
whitelistMintPrice = price;
emit WhitelistMintPriceSet(price);
}
function setPublicMintingEnabled(bool enabled) external onlyOwner {
publicMintingEnabled = enabled;
emit PublicMintingToggled(enabled);
}
function setWhitelistMintingEnabled(bool enabled) external onlyOwner {
whitelistMintingEnabled = enabled;
emit WhitelistMintingToggled(enabled);
}
function setMaxPublicMintsPerUser(uint256 maxMints) external onlyOwner {
maxPublicMintsPerUser = maxMints;
emit MaxPublicMintsPerUserSet(maxMints);
}
function setTier(address user, uint256 tier, bool eligible) external onlyOwner {
userTiers[user][tier] = eligible;
emit TierUpdated(user, tier, eligible);
}
function batchSetTier(address[] memory users, uint256[] memory tiers, bool[] memory eligible) external onlyOwner {
require(users.length == tiers.length && tiers.length == eligible.length, "Arrays length mismatch");
for (uint256 i = 0; i < users.length; i++) {
userTiers[users[i]][tiers[i]] = eligible[i];
emit TierUpdated(users[i], tiers[i], eligible[i]);
}
}
function withdraw() external onlyOwner {
payable(owner()).transfer(address(this).balance);
}
// View functions
function getCurrentPhase() external view returns (Phase) {
return currentPhase;
}
function getUserTierEligibility(address user, uint256 tier) external view returns (bool) {
return isUserEligibleForTier(user, tier);
}
function getUserEligibleTiers(address user, uint256 maxTier) external view returns (uint256[] memory) {
uint256 count = 0;
// First pass: count eligible tiers
for (uint256 i = 1; i <= maxTier; i++) {
if (isUserEligibleForTier(user, i)) {
count++;
}
}
// Second pass: populate array
uint256[] memory eligibleTiers = new uint256[](count);
uint256 index = 0;
for (uint256 i = 1; i <= maxTier; i++) {
if (isUserEligibleForTier(user, i)) {
eligibleTiers[index] = i;
index++;
}
}
return eligibleTiers;
}
function getUserHighestTier(address user) external view returns (uint256) {
for (uint256 tier = 5; tier >= 1; tier--) {
if (userTiers[user][tier]) {
return tier;
}
}
return 0; // No tier found
}
function getPublicMintsCount(address user) external view returns (uint256) {
return publicMintsCount[user];
}
function canWhitelistMint(address user, uint256 tier) external view returns (bool) {
return
whitelistMintingEnabled &&
isUserEligibleForTier(user, tier) &&
!hasWhitelistMinted[user] &&
nftContract.currentTokenId() < nftContract.maxTokenId() &&
(nftContract.getTierCurrentSupply(tier) < nftContract.getTierMaxSupply(tier));
}
function canWhitelistMintAnyTier(address user, uint256 maxTier) external view returns (bool) {
if (
!whitelistMintingEnabled ||
hasWhitelistMinted[user] ||
nftContract.currentTokenId() >= nftContract.maxTokenId()
) {
return false;
}
for (uint256 i = 1; i <= maxTier; i++) {
if (
isUserEligibleForTier(user, i) &&
(nftContract.getTierCurrentSupply(i) < nftContract.getTierMaxSupply(i))
) {
return true;
}
}
return false;
}
function canPublicMint(address user) external view returns (bool) {
return
publicMintingEnabled &&
publicMintsCount[user] < maxPublicMintsPerUser &&
nftContract.currentTokenId() < nftContract.maxTokenId();
}
// Tier supply view functions
function getTierSupplyStatus(
uint256 tier
) external view returns (uint256 maxSupply, uint256 currentSupply, uint256 remaining, bool available) {
maxSupply = nftContract.getTierMaxSupply(tier);
currentSupply = nftContract.getTierCurrentSupply(tier);
remaining = maxSupply - currentSupply; // Calculate remaining supply
available = currentSupply < maxSupply; // Calculate availability
}
// Additional tier management methods for compatibility
function isTierAvailable(uint256 tier) external view returns (bool) {
uint256 maxSupply = nftContract.getTierMaxSupply(tier);
uint256 currentSupply = nftContract.getTierCurrentSupply(tier);
return currentSupply < maxSupply;
}
function getTierRemainingSupply(uint256 tier) external view returns (uint256) {
uint256 maxSupply = nftContract.getTierMaxSupply(tier);
uint256 currentSupply = nftContract.getTierCurrentSupply(tier);
return maxSupply - currentSupply;
}
function hasMinted(address user) external view returns (bool) {
return hasWhitelistMinted[user];
}
function getAllTierSupplyStatus()
external
view
returns (
uint256[] memory tiers,
uint256[] memory maxSupplies,
uint256[] memory currentSupplies,
uint256[] memory remainingSupplies
)
{
tiers = new uint256[](5);
maxSupplies = new uint256[](5);
currentSupplies = new uint256[](5);
remainingSupplies = new uint256[](5);
for (uint256 i = 0; i < 5; i++) {
uint256 tier = i + 1;
tiers[i] = tier;
maxSupplies[i] = nftContract.getTierMaxSupply(tier);
currentSupplies[i] = nftContract.getTierCurrentSupply(tier);
remainingSupplies[i] = maxSupplies[i] - currentSupplies[i];
}
}
}// SPDX-License-Identifier: MIT
// OpenZeppelin Contracts (last updated v5.0.0) (access/Ownable.sol)
pragma solidity ^0.8.20;
import {Context} from "../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.
*
* The initial owner is set to the address provided by the deployer. 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;
/**
* @dev The caller account is not authorized to perform an operation.
*/
error OwnableUnauthorizedAccount(address account);
/**
* @dev The owner is not a valid owner account. (eg. `address(0)`)
*/
error OwnableInvalidOwner(address owner);
event OwnershipTransferred(address indexed previousOwner, address indexed newOwner);
/**
* @dev Initializes the contract setting the address provided by the deployer as the initial owner.
*/
constructor(address initialOwner) {
if (initialOwner == address(0)) {
revert OwnableInvalidOwner(address(0));
}
_transferOwnership(initialOwner);
}
/**
* @dev Throws if called by any account other than the owner.
*/
modifier onlyOwner() {
_checkOwner();
_;
}
/**
* @dev Returns the address of the current owner.
*/
function owner() public view virtual returns (address) {
return _owner;
}
/**
* @dev Throws if the sender is not the owner.
*/
function _checkOwner() internal view virtual {
if (owner() != _msgSender()) {
revert OwnableUnauthorizedAccount(_msgSender());
}
}
/**
* @dev Leaves the contract without owner. It will not be possible to call
* `onlyOwner` functions. Can only be called by the current owner.
*
* NOTE: Renouncing ownership will leave the contract without an owner,
* thereby disabling any functionality that is only available to the owner.
*/
function renounceOwnership() public virtual onlyOwner {
_transferOwnership(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 {
if (newOwner == address(0)) {
revert OwnableInvalidOwner(address(0));
}
_transferOwnership(newOwner);
}
/**
* @dev Transfers ownership of the contract to a new account (`newOwner`).
* Internal function without access restriction.
*/
function _transferOwnership(address newOwner) internal virtual {
address oldOwner = _owner;
_owner = newOwner;
emit OwnershipTransferred(oldOwner, newOwner);
}
}// SPDX-License-Identifier: MIT
// OpenZeppelin Contracts (last updated v5.0.1) (utils/Context.sol)
pragma solidity ^0.8.20;
/**
* @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;
}
function _contextSuffixLength() internal view virtual returns (uint256) {
return 0;
}
}// SPDX-License-Identifier: MIT
// OpenZeppelin Contracts (last updated v5.1.0) (utils/ReentrancyGuard.sol)
pragma solidity ^0.8.20;
/**
* @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 EIP-1153 (transient storage) is available on the chain you're deploying at,
* consider using {ReentrancyGuardTransient} instead.
*
* 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
// pointer aliasing, and it cannot be disabled.
// The values being non-zero value makes deployment a bit more expensive,
// but in exchange the refund on every call to nonReentrant will be lower in
// amount. Since refunds are capped to a percentage of the total
// transaction's gas, it is best to keep them low in cases like this one, to
// increase the likelihood of the full refund coming into effect.
uint256 private constant NOT_ENTERED = 1;
uint256 private constant ENTERED = 2;
uint256 private _status;
/**
* @dev Unauthorized reentrant call.
*/
error ReentrancyGuardReentrantCall();
constructor() {
_status = NOT_ENTERED;
}
/**
* @dev Prevents a contract from calling itself, directly or indirectly.
* Calling a `nonReentrant` function from another `nonReentrant`
* function is not supported. It is possible to prevent this from happening
* by making the `nonReentrant` function external, and making it call a
* `private` function that does the actual work.
*/
modifier nonReentrant() {
_nonReentrantBefore();
_;
_nonReentrantAfter();
}
function _nonReentrantBefore() private {
// On the first call to nonReentrant, _status will be NOT_ENTERED
if (_status == ENTERED) {
revert ReentrancyGuardReentrantCall();
}
// Any calls to nonReentrant after this point will fail
_status = ENTERED;
}
function _nonReentrantAfter() private {
// By storing the original value once again, a refund is triggered (see
// https://eips.ethereum.org/EIPS/eip-2200)
_status = NOT_ENTERED;
}
/**
* @dev Returns true if the reentrancy guard is currently set to "entered", which indicates there is a
* `nonReentrant` function in the call stack.
*/
function _reentrancyGuardEntered() internal view returns (bool) {
return _status == ENTERED;
}
}{
"viaIR": true,
"optimizer": {
"enabled": true,
"runs": 30
},
"outputSelection": {
"*": {
"*": [
"evm.bytecode",
"evm.deployedBytecode",
"devdoc",
"userdoc",
"metadata",
"abi"
]
}
},
"evmVersion": "paris"
}Contract Security Audit
- No Contract Security Audit Submitted- Submit Audit Here
Contract ABI
API[{"inputs":[{"internalType":"uint256","name":"initialPublicMintPrice","type":"uint256"},{"internalType":"uint256","name":"initialWhitelistMintPrice","type":"uint256"},{"internalType":"uint256","name":"initialMaxPublicMintsPerUser","type":"uint256"}],"stateMutability":"nonpayable","type":"constructor"},{"inputs":[],"name":"InsufficientPayment","type":"error"},{"inputs":[],"name":"MaxPublicMintsReached","type":"error"},{"inputs":[],"name":"NFTContractNotSet","type":"error"},{"inputs":[{"internalType":"address","name":"owner","type":"address"}],"name":"OwnableInvalidOwner","type":"error"},{"inputs":[{"internalType":"address","name":"account","type":"address"}],"name":"OwnableUnauthorizedAccount","type":"error"},{"inputs":[],"name":"PublicMintingDisabled","type":"error"},{"inputs":[],"name":"ReentrancyGuardReentrantCall","type":"error"},{"inputs":[{"internalType":"uint256","name":"tier","type":"uint256"}],"name":"TierSupplyExhausted","type":"error"},{"inputs":[],"name":"TokenIdExceedsMax","type":"error"},{"inputs":[],"name":"UserAlreadyPublicMinted","type":"error"},{"inputs":[],"name":"UserAlreadyWhitelistMinted","type":"error"},{"inputs":[],"name":"UserNotEligible","type":"error"},{"inputs":[],"name":"WhitelistMintingDisabled","type":"error"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"uint256","name":"maxMints","type":"uint256"}],"name":"MaxPublicMintsPerUserSet","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"nftContract","type":"address"}],"name":"NFTContractSet","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"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"enum IllumeownatiMinter.Phase","name":"newPhase","type":"uint8"}],"name":"PhaseUpdated","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"uint256","name":"price","type":"uint256"}],"name":"PublicMintPriceSet","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"to","type":"address"},{"indexed":true,"internalType":"uint256","name":"tokenId","type":"uint256"}],"name":"PublicMinted","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"bool","name":"enabled","type":"bool"}],"name":"PublicMintingToggled","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"user","type":"address"},{"indexed":false,"internalType":"uint256","name":"tier","type":"uint256"},{"indexed":false,"internalType":"bool","name":"eligible","type":"bool"}],"name":"TierUpdated","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"uint256","name":"price","type":"uint256"}],"name":"WhitelistMintPriceSet","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"to","type":"address"},{"indexed":true,"internalType":"uint256","name":"tokenId","type":"uint256"},{"indexed":false,"internalType":"uint256","name":"tier","type":"uint256"}],"name":"WhitelistMinted","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"bool","name":"enabled","type":"bool"}],"name":"WhitelistMintingToggled","type":"event"},{"inputs":[],"name":"VERSION","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address[]","name":"users","type":"address[]"},{"internalType":"uint256[]","name":"tiers","type":"uint256[]"},{"internalType":"bool[]","name":"eligible","type":"bool[]"}],"name":"batchSetTier","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"user","type":"address"}],"name":"canPublicMint","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"user","type":"address"},{"internalType":"uint256","name":"tier","type":"uint256"}],"name":"canWhitelistMint","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"user","type":"address"},{"internalType":"uint256","name":"maxTier","type":"uint256"}],"name":"canWhitelistMintAnyTier","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"currentPhase","outputs":[{"internalType":"enum IllumeownatiMinter.Phase","name":"","type":"uint8"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"getAllTierSupplyStatus","outputs":[{"internalType":"uint256[]","name":"tiers","type":"uint256[]"},{"internalType":"uint256[]","name":"maxSupplies","type":"uint256[]"},{"internalType":"uint256[]","name":"currentSupplies","type":"uint256[]"},{"internalType":"uint256[]","name":"remainingSupplies","type":"uint256[]"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"getCurrentPhase","outputs":[{"internalType":"enum IllumeownatiMinter.Phase","name":"","type":"uint8"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"user","type":"address"}],"name":"getPublicMintsCount","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"uint256","name":"tier","type":"uint256"}],"name":"getTierRemainingSupply","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"uint256","name":"tier","type":"uint256"}],"name":"getTierSupplyStatus","outputs":[{"internalType":"uint256","name":"maxSupply","type":"uint256"},{"internalType":"uint256","name":"currentSupply","type":"uint256"},{"internalType":"uint256","name":"remaining","type":"uint256"},{"internalType":"bool","name":"available","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"user","type":"address"},{"internalType":"uint256","name":"maxTier","type":"uint256"}],"name":"getUserEligibleTiers","outputs":[{"internalType":"uint256[]","name":"","type":"uint256[]"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"user","type":"address"}],"name":"getUserHighestTier","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"user","type":"address"},{"internalType":"uint256","name":"tier","type":"uint256"}],"name":"getUserTierEligibility","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"user","type":"address"}],"name":"hasMinted","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"","type":"address"}],"name":"hasWhitelistMinted","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"uint256","name":"tier","type":"uint256"}],"name":"isTierAvailable","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"user","type":"address"},{"internalType":"uint256","name":"tier","type":"uint256"}],"name":"isUserEligibleForTier","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"maxPublicMintsPerUser","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"nftContract","outputs":[{"internalType":"contract IIllumeownatiNFT","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"owner","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"publicMint","outputs":[],"stateMutability":"payable","type":"function"},{"inputs":[],"name":"publicMintPrice","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"publicMintingEnabled","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"","type":"address"}],"name":"publicMintsCount","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"renounceOwnership","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"uint256","name":"maxMints","type":"uint256"}],"name":"setMaxPublicMintsPerUser","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"_nftContract","type":"address"}],"name":"setNFTContract","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"enum IllumeownatiMinter.Phase","name":"_phase","type":"uint8"}],"name":"setPhase","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"uint256","name":"price","type":"uint256"}],"name":"setPublicMintPrice","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"bool","name":"enabled","type":"bool"}],"name":"setPublicMintingEnabled","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"user","type":"address"},{"internalType":"uint256","name":"tier","type":"uint256"},{"internalType":"bool","name":"eligible","type":"bool"}],"name":"setTier","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"uint256","name":"price","type":"uint256"}],"name":"setWhitelistMintPrice","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"bool","name":"enabled","type":"bool"}],"name":"setWhitelistMintingEnabled","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"},{"internalType":"uint256","name":"","type":"uint256"}],"name":"userTiers","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"uint256","name":"tier","type":"uint256"}],"name":"whitelistMint","outputs":[],"stateMutability":"payable","type":"function"},{"inputs":[],"name":"whitelistMintPrice","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"whitelistMintingEnabled","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"withdraw","outputs":[],"stateMutability":"nonpayable","type":"function"}]Contract Creation Code
6080346100e257601f61202138819003918201601f19168301916001600160401b038311848410176100e7578084926060946040528339810103126100e257805190604060208201519101519033156100cc5760008054336001600160a01b0319821681178355604051959290916001600160a01b0316907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e09080a3600180556003556004556008556005805461ffff191690556002805460ff60a01b19169055611f2390816100fe8239f35b631e4fbdf760e01b600052600060045260246000fd5b600080fd5b634e487b7160e01b600052604160045260246000fdfe608080604052600436101561001357600080fd5b600090813560e01c9081624fc7ce146119c657508063055ad42e14610a4d5780631835dbe61461196657806326092b831461176257806327c1fba81461052e5780632a94caf81461167057806335c6aaf81461165257806338e21cce146116135780633b63c5ca146115c55780633ccfd60b146115825780635d82cf6e146115345780636908d7fb14611321578063715018a6146112c7578063767f0d42146112a957806379a3c00f1461023f5780637a65cdca1461128557806381d0113d1461125f578063868ff4a214610f415780638da5cb5b14610f1a5780638db5e37f14610eb45780638dec9f7a14610e915780639261e60f14610d5e578063961a6b3b14610aa857806399b25a7514610a76578063a3a40ea514610a4d578063a611708e146109ff578063a7ccabdf14610997578063a957764214610889578063bdcc06931461079b578063c03afb5914610721578063cc5c753414610687578063d56d229d1461065e578063d859596914610567578063d8b1856c1461052e578063dc53fd9214610510578063f2fde38b1461048a578063f84c0e4414610244578063fbad7b611461023f578063ffa1ad74146102235763ffead7fe146101d857600080fd5b346102205760403660031901126102205760209060ff906040906001600160a01b03610202611a02565b16815260068452818120602435825284522054166040519015158152f35b80fd5b5034610220578060031936011261022057602060405160018152f35b611a84565b50346102205760403660031901126102205761025e611a02565b6024359160ff60055460081c169182610478575b82610457575b508161038c575b81610292575b6020826040519015158152f35b6002546040516341dbe4eb60e01b8152600481018590526001600160a01b039091169391925090602082602481875afa91821561038157839261034c575b5060209060246040518096819363674db19560e01b835260048301525afa9182156103405791610306575b602092501038610285565b90506020823d602011610338575b8161032160209383611aab565b810103126103335760209151906102fb565b600080fd5b3d9150610314565b604051903d90823e3d90fd5b9091506020813d602011610379575b8161036860209383611aab565b8101031261033357519060206102d0565b3d915061035b565b6040513d85823e3d90fd5b600254604051629a9b7b60e01b81529192506001600160a01b0316602082600481845afa918215610381578392610422575b50906020600492604051938480926348dd18bd60e11b82525afa9182156103815783926103ee575b50109061027f565b9091506020813d60201161041a575b8161040a60209383611aab565b81010312610333575190386103e6565b3d91506103fd565b91506020823d60201161044f575b8161043d60209383611aab565b810103126103335790519060206103be565b3d9150610430565b6001600160a01b031681526007602052604081205460ff1615915038610278565b91506104848383611b62565b91610272565b5034610220576020366003190112610220576104a4611a02565b6104ac611ea2565b6001600160a01b031680156104fc5781546001600160a01b03198116821783556001600160a01b03167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e08380a380f35b631e4fbdf760e01b82526004829052602482fd5b50346102205780600319360112610220576020600354604051908152f35b5034610220576020366003190112610220576020906040906001600160a01b03610556611a02565b168152600983522054604051908152f35b50346102205760203660031901126102205760025460405163674db19560e01b8152600480359082018190529092916001600160a01b031690602084602481855afa938415610381578394610629575b506020906024604051809481936341dbe4eb60e01b835260048301525afa91821561034057916105f6575b60206105ee8385611b48565b604051908152f35b90506020813d602011610621575b8161061160209383611aab565b81010312610333575160206105e2565b3d9150610604565b9093506020813d602011610656575b8161064560209383611aab565b8101031261033357519260206105b7565b3d9150610638565b50346102205780600319360112610220576002546040516001600160a01b039091168152602090f35b5034610220576060366003190112610220576106a1611a02565b60243590604435801515810361071d577fc7ca1b04c28a7e0f9a5d20afc66a9cab8b44210c5dc40f4ffa219f6140c1fa0b916106db611ea2565b6001600160a01b03168085526006602090815260408087208688528252808720805460ff191660ff95151595861617905580519586529085019290925292a280f35b8380fd5b5034610220576020366003190112610220576004356002811015610797576107917f05ac19f4e6db6fd8b645dd056e4842cd2f63e0c6f0568176c17ef60e3c16732d9161076c611ea2565b6002805460ff60a01b191660a083901b60ff60a01b1617905560405191829182611a18565b0390a180f35b5080fd5b5034610220576040366003190112610220576107b5611a02565b602435908260015b8381111561085757506107cf84611ae2565b936107dd6040519586611aab565b8085526107ec601f1991611ae2565b013660208601379060015b83811115610819576040516020808252819061081590820188611a50565b0390f35b6108238183611b62565b610836575b61083190611af9565b6107f7565b9161084f81846108496108319489611b1e565b52611af9565b929050610828565b6108618184611b62565b610874575b61086f90611af9565b6107bd565b9361088161086f91611af9565b949050610866565b50346102205760203660031901126102205760025460405163674db19560e01b8152600480359082018190526001600160a01b039092169291602082602481875afa918215610381578392610962575b506020906024604051809681936341dbe4eb60e01b835260048301525afa918215610340579161092d575b608092506109128282611b48565b91604051928284528160208501526040840152106060820152f35b90506020823d60201161095a575b8161094860209383611aab565b81010312610333576080915190610904565b3d915061093b565b9091506020813d60201161098f575b8161097e60209383611aab565b8101031261033357519060206108d9565b3d9150610971565b5034610220576020366003190112610220576109b1611a02565b6109b9611ea2565b600280546001600160a01b0319166001600160a01b039290921691821790557f5a6a54be6929433a25d1b5103e7dea8d9440b7903216e380344a320ca1cdd85f8280a280f35b5034610220576020366003190112610220577fa60d7d9de84e78e9c22fb52b037fcb15013e91b2008f13db3e4e54feee96e0166020600435610a3f611ea2565b80600455604051908152a180f35b503461022057806003193601126102205761081560ff60025460a01c1660405191829182611a18565b5034610220576040366003190112610220576020610a9e610a95611a02565b60243590611c72565b6040519015158152f35b5034610220576060366003190112610220576004356001600160401b0381116107975736602382011215610797578060040135610ae481611ae2565b91610af26040519384611aab565b8183526024602084019260051b82010190368211610d5a57602401915b818310610d3a575050506024356001600160401b038111610d365736602382011215610d3657806004013590610b4482611ae2565b91610b526040519384611aab565b8083526024602084019160051b83010191368311610d3257602401905b828210610d22575050506044356001600160401b03811161071d573660238201121561071d578060040135610ba381611ae2565b91610bb16040519384611aab565b8183526024602084019260051b82010190368211610d1e57602401915b818310610d0157505050610be0611ea2565b825182518091149081610cf6575b5015610cb857835b8351811015610cb45780610c54610c0f60019385611b1e565b511515838060a01b03610c228489611b1e565b51168852600660205260408820610c398488611b1e565b518952602052604088209060ff801983541691151516179055565b818060a01b03610c648287611b1e565b51167fc7ca1b04c28a7e0f9a5d20afc66a9cab8b44210c5dc40f4ffa219f6140c1fa0b610c918387611b1e565b51610c9c8487611b1e565b5160408051928352901515602083015290a201610bf6565b8480f35b60405162461bcd60e51b8152602060048201526016602482015275082e4e4c2f2e640d8cadccee8d040dad2e6dac2e8c6d60531b6044820152606490fd5b905081511438610bee565b82358015158103610d1a57815260209283019201610bce565b8780fd5b8680fd5b8135815260209182019101610b6f565b8580fd5b8280fd5b82356001600160a01b0381168103610d3257815260209283019201610b0f565b8480fd5b503461022057602036600319011261022057610d78611a02565b60ff600554169081610e71575b5080610d99575b6020906040519015158152f35b50600254604051629a9b7b60e01b815291906001600160a01b0316602083600481845afa928315610e66578293610e31575b50916020600493604051948580926348dd18bd60e11b82525afa9182156103405791610dfc575b6020925010610d8c565b90506020823d602011610e29575b81610e1760209383611aab565b81010312610333576020915190610df2565b3d9150610e0a565b92506020833d602011610e5e575b81610e4c60209383611aab565b81010312610333579151916020610dcb565b3d9150610e3f565b6040513d84823e3d90fd5b6001600160a01b0316825250600960205260408120546008541138610d85565b5034610220578060031936011261022057602060ff600554166040519015158152f35b5034610220576020366003190112610220577f712ea66c7d5e9efc2368410e6e347853e60c21a6961cc8d63eb1da36304d2b476020610ef1611a41565b610ef9611ea2565b151560055461ff008260081b169061ff00191617600555604051908152a180f35b5034610220578060031936011261022057546040516001600160a01b039091168152602090f35b50602036600319011261022057600435610f59611ecb565b6002546001600160a01b03169081156112505760ff60055460081c161561124157610f848133611b62565b1561123257338352600760205260ff6040842054166112235760045434106112145760405163674db19560e01b815260048101829052602081602481865afa9081156111935784916111e2575b506040516341dbe4eb60e01b815260048101839052602081602481875afa9081156111545785916111b0575b50101561119e57604051629a9b7b60e01b815291602083600481845afa92831561119357849361115f575b506040516348dd18bd60e11b8152602081600481855afa908115611154578591611122575b5083101561111357600183018093116110ff578084913b1561079757818091606460405180948193632baf2acb60e01b83523360048401528960248401528860448401525af18015610e66576110ea575b5050338352600760205260408320600160ff198254161790556040519081527fb7df065473d5cf63ef5cf9190dbd326ea5e6fbfe4a0971f4920e430bbfd5a93860203392a36001805580f35b816110f491611aab565b610d3657823861109e565b634e487b7160e01b84526011600452602484fd5b633e67a62960e01b8452600484fd5b90506020813d60201161114c575b8161113d60209383611aab565b8101031261033357513861104d565b3d9150611130565b6040513d87823e3d90fd5b9092506020813d60201161118b575b8161117b60209383611aab565b8101031261033357519138611028565b3d915061116e565b6040513d86823e3d90fd5b637a9ad41160e11b8352600452602482fd5b90506020813d6020116111da575b816111cb60209383611aab565b81010312610333575138610ffd565b3d91506111be565b90506020813d60201161120c575b816111fd60209383611aab565b81010312610333575138610fd1565b3d91506111f0565b63cd1c886760e01b8352600483fd5b63220e7afb60e21b8352600483fd5b63267c16a760e21b8352600483fd5b63a6cd5da360e01b8352600483fd5b634036ad5b60e01b8352600483fd5b5034610220578060031936011261022057602060ff60055460081c166040519015158152f35b50346102205760203660031901126102205760206105ee6112a4611a02565b611c22565b50346102205780600319360112610220576020600854604051908152f35b50346102205780600319360112610220576112e0611ea2565b80546001600160a01b03198116825581906001600160a01b03167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e08280a380f35b503461022057806003193601126102205760405160c06113418183611aab565b6005825260a036602084013760405161135a8282611aab565b6005815260a0366020830137604051936113748386611aab565b6005855260a03660208701376040519261138e8185611aab565b600584525060a03660208501376002546001600160a01b031690805b60058110611400576113d686610815876113f28b6113e48a604051978897608089526080890190611a50565b908782036020890152611a50565b908582036040870152611a50565b908382036060850152611a50565b600181019081811161152057816114178289611b1e565b5260405163674db19560e01b815260048101839052602081602481885afa9081156111935784916114ed575b5061144e8287611b1e565b52604051916341dbe4eb60e01b83526004830152602082602481875afa80156103815783906114b7575b60019250611486828a611b1e565b526114a66114948287611b1e565b5161149f838b611b1e565b5190611b48565b6114b08288611b1e565b52016113aa565b509060203d81116114e6575b6114cd8183611aab565b6020826000928101031261022057509060019151611478565b503d6114c3565b905060203d8111611519575b6115038183611aab565b6020826000928101031261022057505138611443565b503d6114f9565b634e487b7160e01b83526011600452602483fd5b5034610220576020366003190112610220577fea35c277f8aa5dadb5606cb9381b835584be45718058635708d4e96947f3cacb6020600435611574611ea2565b80600355604051908152a180f35b503461022057806003193601126102205761159b611ea2565b8080808060018060a01b0381541647908282156115bc575bf1156103405780f35b506108fc6115b3565b5034610220576020366003190112610220577f8e4f62dae3243915f00f26e529faada23d8072691f8e90952f49326f151e0a886020600435611605611ea2565b80600855604051908152a180f35b50346102205760203660031901126102205760209060ff906040906001600160a01b0361163e611a02565b168152600784522054166040519015158152f35b50346102205780600319360112610220576020600454604051908152f35b50346102205760203660031901126102205760025460405163674db19560e01b8152600480359082018190526001600160a01b039092169291602082602481875afa91821561038157839261172d575b506020906024604051809681936341dbe4eb60e01b835260048301525afa91821561034057916116f8575b6020925060405191108152f35b90506020823d602011611725575b8161171360209383611aab565b810103126103335760209151906116eb565b3d9150611706565b9091506020813d60201161175a575b8161174960209383611aab565b8101031261033357519060206116c0565b3d915061173c565b508060031936011261022057611776611ecb565b6002546001600160a01b03169081156119575760ff60055416156119485760035434106119395733815260096020526040812054600854111561192a57604051629a9b7b60e01b815291602083600481845afa928315610e665782936118f6575b506040516348dd18bd60e11b8152602081600481855afa9081156103815783916118c4575b508310156118b557600183018093116118a157803b1561079757818091606460405180948193632baf2acb60e01b83523360048401528860248401528160448401525af18015610e6657611891575b50903382526009602052604082206118638154611af9565b9055337fab9980fb1d2916bce9017edd1be458e3f56d0899b3367cb3a8be97483fbe069b8380a36001805580f35b8161189b91611aab565b3861184b565b634e487b7160e01b82526011600452602482fd5b633e67a62960e01b8252600482fd5b90506020813d6020116118ee575b816118df60209383611aab565b81010312610d365751386117fc565b3d91506118d2565b9092506020813d602011611922575b8161191260209383611aab565b81010312610797575191386117d7565b3d9150611905565b636797856560e11b8152600490fd5b63cd1c886760e01b8152600490fd5b63ebe2300160e01b8152600490fd5b634036ad5b60e01b8152600490fd5b5034610220576020366003190112610220577fc977af333cf8813c2d0975c679d4face4e304c8f859030b4379c4b21c84963a260206119a3611a41565b6119ab611ea2565b151560ff196005541660ff821617600555604051908152a180f35b9050346107975760203660031901126107975760209160ff906040906001600160a01b036119f2611a02565b1681526007855220541615158152f35b600435906001600160a01b038216820361033357565b919060208301926002821015611a2b5752565b634e487b7160e01b600052602160045260246000fd5b60043590811515820361033357565b906020808351928381520192019060005b818110611a6e5750505090565b8251845260209384019390920191600101611a61565b34610333576040366003190112610333576020610a9e611aa2611a02565b60243590611b62565b90601f801991011681019081106001600160401b03821117611acc57604052565b634e487b7160e01b600052604160045260246000fd5b6001600160401b038111611acc5760051b60200190565b6000198114611b085760010190565b634e487b7160e01b600052601160045260246000fd5b8051821015611b325760209160051b010190565b634e487b7160e01b600052603260045260246000fd5b91908203918211611b0857565b8015611b08576000190190565b60ff60025460a01c166002811015611a2b57611ba05760018060a01b0316600052600660205260406000209060005260205260ff6040600020541690565b60018060a01b031680600052600660205260406000208260005260205260ff60406000205416611c1b5760009060055b6001811015611be1575b5050101590565b81600052600660205260406000208160005260205260ff60406000205416611c1157611c0c90611b55565b611bd0565b9150503880611bda565b5050600190565b60055b6001811015611c35575050600090565b60018060a01b038216600052600660205260406000208160005260205260ff60406000205416611c6d57611c6890611b55565b611c25565b905090565b60ff60055460081c16158015611e80575b8015611db4575b611dad5760015b82811115611ca157505050600090565b611cab8183611b62565b80611ccb575b611cc357611cbe90611af9565b611c91565b505050600190565b506002546040516341dbe4eb60e01b8152600481018390526001600160a01b0390911690602081602481855afa908115611d6f57600091611d7b575b5060206024926040519384809263674db19560e01b82528760048301525afa918215611d6f57600092611d3c575b5010611cb1565b90916020823d8211611d67575b81611d5660209383611aab565b810103126102205750519038611d35565b3d9150611d49565b6040513d6000823e3d90fd5b906020823d8211611da5575b81611d9460209383611aab565b810103126102205750516020611d07565b3d9150611d87565b5050600090565b50600254604051629a9b7b60e01b8152906001600160a01b0316602082600481845afa918215611d6f57600092611e4b575b50906020600492604051938480926348dd18bd60e11b82525afa918215611d6f57600092611e17575b501015611c8a565b9091506020813d602011611e43575b81611e3360209383611aab565b8101031261033357519038611e0f565b3d9150611e26565b91506020823d602011611e78575b81611e6660209383611aab565b81010312610333579051906020611de6565b3d9150611e59565b506001600160a01b03811660009081526007602052604090205460ff16611c83565b6000546001600160a01b03163303611eb657565b63118cdaa760e01b6000523360045260246000fd5b600260015414611edc576002600155565b633ee5aeb560e01b60005260046000fdfea2646970667358221220df22dc4abd295cd7d4adc9e7cac875d3f49d1228b1204ddb92bd6bb7d453f9e564736f6c634300081b00330000000000000000000000000000000000000000000000003782dace9d9000000000000000000000000000000000000000000000000000003782dace9d9000000000000000000000000000000000000000000000000000000000000000000002
Deployed Bytecode
0x608080604052600436101561001357600080fd5b600090813560e01c9081624fc7ce146119c657508063055ad42e14610a4d5780631835dbe61461196657806326092b831461176257806327c1fba81461052e5780632a94caf81461167057806335c6aaf81461165257806338e21cce146116135780633b63c5ca146115c55780633ccfd60b146115825780635d82cf6e146115345780636908d7fb14611321578063715018a6146112c7578063767f0d42146112a957806379a3c00f1461023f5780637a65cdca1461128557806381d0113d1461125f578063868ff4a214610f415780638da5cb5b14610f1a5780638db5e37f14610eb45780638dec9f7a14610e915780639261e60f14610d5e578063961a6b3b14610aa857806399b25a7514610a76578063a3a40ea514610a4d578063a611708e146109ff578063a7ccabdf14610997578063a957764214610889578063bdcc06931461079b578063c03afb5914610721578063cc5c753414610687578063d56d229d1461065e578063d859596914610567578063d8b1856c1461052e578063dc53fd9214610510578063f2fde38b1461048a578063f84c0e4414610244578063fbad7b611461023f578063ffa1ad74146102235763ffead7fe146101d857600080fd5b346102205760403660031901126102205760209060ff906040906001600160a01b03610202611a02565b16815260068452818120602435825284522054166040519015158152f35b80fd5b5034610220578060031936011261022057602060405160018152f35b611a84565b50346102205760403660031901126102205761025e611a02565b6024359160ff60055460081c169182610478575b82610457575b508161038c575b81610292575b6020826040519015158152f35b6002546040516341dbe4eb60e01b8152600481018590526001600160a01b039091169391925090602082602481875afa91821561038157839261034c575b5060209060246040518096819363674db19560e01b835260048301525afa9182156103405791610306575b602092501038610285565b90506020823d602011610338575b8161032160209383611aab565b810103126103335760209151906102fb565b600080fd5b3d9150610314565b604051903d90823e3d90fd5b9091506020813d602011610379575b8161036860209383611aab565b8101031261033357519060206102d0565b3d915061035b565b6040513d85823e3d90fd5b600254604051629a9b7b60e01b81529192506001600160a01b0316602082600481845afa918215610381578392610422575b50906020600492604051938480926348dd18bd60e11b82525afa9182156103815783926103ee575b50109061027f565b9091506020813d60201161041a575b8161040a60209383611aab565b81010312610333575190386103e6565b3d91506103fd565b91506020823d60201161044f575b8161043d60209383611aab565b810103126103335790519060206103be565b3d9150610430565b6001600160a01b031681526007602052604081205460ff1615915038610278565b91506104848383611b62565b91610272565b5034610220576020366003190112610220576104a4611a02565b6104ac611ea2565b6001600160a01b031680156104fc5781546001600160a01b03198116821783556001600160a01b03167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e08380a380f35b631e4fbdf760e01b82526004829052602482fd5b50346102205780600319360112610220576020600354604051908152f35b5034610220576020366003190112610220576020906040906001600160a01b03610556611a02565b168152600983522054604051908152f35b50346102205760203660031901126102205760025460405163674db19560e01b8152600480359082018190529092916001600160a01b031690602084602481855afa938415610381578394610629575b506020906024604051809481936341dbe4eb60e01b835260048301525afa91821561034057916105f6575b60206105ee8385611b48565b604051908152f35b90506020813d602011610621575b8161061160209383611aab565b81010312610333575160206105e2565b3d9150610604565b9093506020813d602011610656575b8161064560209383611aab565b8101031261033357519260206105b7565b3d9150610638565b50346102205780600319360112610220576002546040516001600160a01b039091168152602090f35b5034610220576060366003190112610220576106a1611a02565b60243590604435801515810361071d577fc7ca1b04c28a7e0f9a5d20afc66a9cab8b44210c5dc40f4ffa219f6140c1fa0b916106db611ea2565b6001600160a01b03168085526006602090815260408087208688528252808720805460ff191660ff95151595861617905580519586529085019290925292a280f35b8380fd5b5034610220576020366003190112610220576004356002811015610797576107917f05ac19f4e6db6fd8b645dd056e4842cd2f63e0c6f0568176c17ef60e3c16732d9161076c611ea2565b6002805460ff60a01b191660a083901b60ff60a01b1617905560405191829182611a18565b0390a180f35b5080fd5b5034610220576040366003190112610220576107b5611a02565b602435908260015b8381111561085757506107cf84611ae2565b936107dd6040519586611aab565b8085526107ec601f1991611ae2565b013660208601379060015b83811115610819576040516020808252819061081590820188611a50565b0390f35b6108238183611b62565b610836575b61083190611af9565b6107f7565b9161084f81846108496108319489611b1e565b52611af9565b929050610828565b6108618184611b62565b610874575b61086f90611af9565b6107bd565b9361088161086f91611af9565b949050610866565b50346102205760203660031901126102205760025460405163674db19560e01b8152600480359082018190526001600160a01b039092169291602082602481875afa918215610381578392610962575b506020906024604051809681936341dbe4eb60e01b835260048301525afa918215610340579161092d575b608092506109128282611b48565b91604051928284528160208501526040840152106060820152f35b90506020823d60201161095a575b8161094860209383611aab565b81010312610333576080915190610904565b3d915061093b565b9091506020813d60201161098f575b8161097e60209383611aab565b8101031261033357519060206108d9565b3d9150610971565b5034610220576020366003190112610220576109b1611a02565b6109b9611ea2565b600280546001600160a01b0319166001600160a01b039290921691821790557f5a6a54be6929433a25d1b5103e7dea8d9440b7903216e380344a320ca1cdd85f8280a280f35b5034610220576020366003190112610220577fa60d7d9de84e78e9c22fb52b037fcb15013e91b2008f13db3e4e54feee96e0166020600435610a3f611ea2565b80600455604051908152a180f35b503461022057806003193601126102205761081560ff60025460a01c1660405191829182611a18565b5034610220576040366003190112610220576020610a9e610a95611a02565b60243590611c72565b6040519015158152f35b5034610220576060366003190112610220576004356001600160401b0381116107975736602382011215610797578060040135610ae481611ae2565b91610af26040519384611aab565b8183526024602084019260051b82010190368211610d5a57602401915b818310610d3a575050506024356001600160401b038111610d365736602382011215610d3657806004013590610b4482611ae2565b91610b526040519384611aab565b8083526024602084019160051b83010191368311610d3257602401905b828210610d22575050506044356001600160401b03811161071d573660238201121561071d578060040135610ba381611ae2565b91610bb16040519384611aab565b8183526024602084019260051b82010190368211610d1e57602401915b818310610d0157505050610be0611ea2565b825182518091149081610cf6575b5015610cb857835b8351811015610cb45780610c54610c0f60019385611b1e565b511515838060a01b03610c228489611b1e565b51168852600660205260408820610c398488611b1e565b518952602052604088209060ff801983541691151516179055565b818060a01b03610c648287611b1e565b51167fc7ca1b04c28a7e0f9a5d20afc66a9cab8b44210c5dc40f4ffa219f6140c1fa0b610c918387611b1e565b51610c9c8487611b1e565b5160408051928352901515602083015290a201610bf6565b8480f35b60405162461bcd60e51b8152602060048201526016602482015275082e4e4c2f2e640d8cadccee8d040dad2e6dac2e8c6d60531b6044820152606490fd5b905081511438610bee565b82358015158103610d1a57815260209283019201610bce565b8780fd5b8680fd5b8135815260209182019101610b6f565b8580fd5b8280fd5b82356001600160a01b0381168103610d3257815260209283019201610b0f565b8480fd5b503461022057602036600319011261022057610d78611a02565b60ff600554169081610e71575b5080610d99575b6020906040519015158152f35b50600254604051629a9b7b60e01b815291906001600160a01b0316602083600481845afa928315610e66578293610e31575b50916020600493604051948580926348dd18bd60e11b82525afa9182156103405791610dfc575b6020925010610d8c565b90506020823d602011610e29575b81610e1760209383611aab565b81010312610333576020915190610df2565b3d9150610e0a565b92506020833d602011610e5e575b81610e4c60209383611aab565b81010312610333579151916020610dcb565b3d9150610e3f565b6040513d84823e3d90fd5b6001600160a01b0316825250600960205260408120546008541138610d85565b5034610220578060031936011261022057602060ff600554166040519015158152f35b5034610220576020366003190112610220577f712ea66c7d5e9efc2368410e6e347853e60c21a6961cc8d63eb1da36304d2b476020610ef1611a41565b610ef9611ea2565b151560055461ff008260081b169061ff00191617600555604051908152a180f35b5034610220578060031936011261022057546040516001600160a01b039091168152602090f35b50602036600319011261022057600435610f59611ecb565b6002546001600160a01b03169081156112505760ff60055460081c161561124157610f848133611b62565b1561123257338352600760205260ff6040842054166112235760045434106112145760405163674db19560e01b815260048101829052602081602481865afa9081156111935784916111e2575b506040516341dbe4eb60e01b815260048101839052602081602481875afa9081156111545785916111b0575b50101561119e57604051629a9b7b60e01b815291602083600481845afa92831561119357849361115f575b506040516348dd18bd60e11b8152602081600481855afa908115611154578591611122575b5083101561111357600183018093116110ff578084913b1561079757818091606460405180948193632baf2acb60e01b83523360048401528960248401528860448401525af18015610e66576110ea575b5050338352600760205260408320600160ff198254161790556040519081527fb7df065473d5cf63ef5cf9190dbd326ea5e6fbfe4a0971f4920e430bbfd5a93860203392a36001805580f35b816110f491611aab565b610d3657823861109e565b634e487b7160e01b84526011600452602484fd5b633e67a62960e01b8452600484fd5b90506020813d60201161114c575b8161113d60209383611aab565b8101031261033357513861104d565b3d9150611130565b6040513d87823e3d90fd5b9092506020813d60201161118b575b8161117b60209383611aab565b8101031261033357519138611028565b3d915061116e565b6040513d86823e3d90fd5b637a9ad41160e11b8352600452602482fd5b90506020813d6020116111da575b816111cb60209383611aab565b81010312610333575138610ffd565b3d91506111be565b90506020813d60201161120c575b816111fd60209383611aab565b81010312610333575138610fd1565b3d91506111f0565b63cd1c886760e01b8352600483fd5b63220e7afb60e21b8352600483fd5b63267c16a760e21b8352600483fd5b63a6cd5da360e01b8352600483fd5b634036ad5b60e01b8352600483fd5b5034610220578060031936011261022057602060ff60055460081c166040519015158152f35b50346102205760203660031901126102205760206105ee6112a4611a02565b611c22565b50346102205780600319360112610220576020600854604051908152f35b50346102205780600319360112610220576112e0611ea2565b80546001600160a01b03198116825581906001600160a01b03167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e08280a380f35b503461022057806003193601126102205760405160c06113418183611aab565b6005825260a036602084013760405161135a8282611aab565b6005815260a0366020830137604051936113748386611aab565b6005855260a03660208701376040519261138e8185611aab565b600584525060a03660208501376002546001600160a01b031690805b60058110611400576113d686610815876113f28b6113e48a604051978897608089526080890190611a50565b908782036020890152611a50565b908582036040870152611a50565b908382036060850152611a50565b600181019081811161152057816114178289611b1e565b5260405163674db19560e01b815260048101839052602081602481885afa9081156111935784916114ed575b5061144e8287611b1e565b52604051916341dbe4eb60e01b83526004830152602082602481875afa80156103815783906114b7575b60019250611486828a611b1e565b526114a66114948287611b1e565b5161149f838b611b1e565b5190611b48565b6114b08288611b1e565b52016113aa565b509060203d81116114e6575b6114cd8183611aab565b6020826000928101031261022057509060019151611478565b503d6114c3565b905060203d8111611519575b6115038183611aab565b6020826000928101031261022057505138611443565b503d6114f9565b634e487b7160e01b83526011600452602483fd5b5034610220576020366003190112610220577fea35c277f8aa5dadb5606cb9381b835584be45718058635708d4e96947f3cacb6020600435611574611ea2565b80600355604051908152a180f35b503461022057806003193601126102205761159b611ea2565b8080808060018060a01b0381541647908282156115bc575bf1156103405780f35b506108fc6115b3565b5034610220576020366003190112610220577f8e4f62dae3243915f00f26e529faada23d8072691f8e90952f49326f151e0a886020600435611605611ea2565b80600855604051908152a180f35b50346102205760203660031901126102205760209060ff906040906001600160a01b0361163e611a02565b168152600784522054166040519015158152f35b50346102205780600319360112610220576020600454604051908152f35b50346102205760203660031901126102205760025460405163674db19560e01b8152600480359082018190526001600160a01b039092169291602082602481875afa91821561038157839261172d575b506020906024604051809681936341dbe4eb60e01b835260048301525afa91821561034057916116f8575b6020925060405191108152f35b90506020823d602011611725575b8161171360209383611aab565b810103126103335760209151906116eb565b3d9150611706565b9091506020813d60201161175a575b8161174960209383611aab565b8101031261033357519060206116c0565b3d915061173c565b508060031936011261022057611776611ecb565b6002546001600160a01b03169081156119575760ff60055416156119485760035434106119395733815260096020526040812054600854111561192a57604051629a9b7b60e01b815291602083600481845afa928315610e665782936118f6575b506040516348dd18bd60e11b8152602081600481855afa9081156103815783916118c4575b508310156118b557600183018093116118a157803b1561079757818091606460405180948193632baf2acb60e01b83523360048401528860248401528160448401525af18015610e6657611891575b50903382526009602052604082206118638154611af9565b9055337fab9980fb1d2916bce9017edd1be458e3f56d0899b3367cb3a8be97483fbe069b8380a36001805580f35b8161189b91611aab565b3861184b565b634e487b7160e01b82526011600452602482fd5b633e67a62960e01b8252600482fd5b90506020813d6020116118ee575b816118df60209383611aab565b81010312610d365751386117fc565b3d91506118d2565b9092506020813d602011611922575b8161191260209383611aab565b81010312610797575191386117d7565b3d9150611905565b636797856560e11b8152600490fd5b63cd1c886760e01b8152600490fd5b63ebe2300160e01b8152600490fd5b634036ad5b60e01b8152600490fd5b5034610220576020366003190112610220577fc977af333cf8813c2d0975c679d4face4e304c8f859030b4379c4b21c84963a260206119a3611a41565b6119ab611ea2565b151560ff196005541660ff821617600555604051908152a180f35b9050346107975760203660031901126107975760209160ff906040906001600160a01b036119f2611a02565b1681526007855220541615158152f35b600435906001600160a01b038216820361033357565b919060208301926002821015611a2b5752565b634e487b7160e01b600052602160045260246000fd5b60043590811515820361033357565b906020808351928381520192019060005b818110611a6e5750505090565b8251845260209384019390920191600101611a61565b34610333576040366003190112610333576020610a9e611aa2611a02565b60243590611b62565b90601f801991011681019081106001600160401b03821117611acc57604052565b634e487b7160e01b600052604160045260246000fd5b6001600160401b038111611acc5760051b60200190565b6000198114611b085760010190565b634e487b7160e01b600052601160045260246000fd5b8051821015611b325760209160051b010190565b634e487b7160e01b600052603260045260246000fd5b91908203918211611b0857565b8015611b08576000190190565b60ff60025460a01c166002811015611a2b57611ba05760018060a01b0316600052600660205260406000209060005260205260ff6040600020541690565b60018060a01b031680600052600660205260406000208260005260205260ff60406000205416611c1b5760009060055b6001811015611be1575b5050101590565b81600052600660205260406000208160005260205260ff60406000205416611c1157611c0c90611b55565b611bd0565b9150503880611bda565b5050600190565b60055b6001811015611c35575050600090565b60018060a01b038216600052600660205260406000208160005260205260ff60406000205416611c6d57611c6890611b55565b611c25565b905090565b60ff60055460081c16158015611e80575b8015611db4575b611dad5760015b82811115611ca157505050600090565b611cab8183611b62565b80611ccb575b611cc357611cbe90611af9565b611c91565b505050600190565b506002546040516341dbe4eb60e01b8152600481018390526001600160a01b0390911690602081602481855afa908115611d6f57600091611d7b575b5060206024926040519384809263674db19560e01b82528760048301525afa918215611d6f57600092611d3c575b5010611cb1565b90916020823d8211611d67575b81611d5660209383611aab565b810103126102205750519038611d35565b3d9150611d49565b6040513d6000823e3d90fd5b906020823d8211611da5575b81611d9460209383611aab565b810103126102205750516020611d07565b3d9150611d87565b5050600090565b50600254604051629a9b7b60e01b8152906001600160a01b0316602082600481845afa918215611d6f57600092611e4b575b50906020600492604051938480926348dd18bd60e11b82525afa918215611d6f57600092611e17575b501015611c8a565b9091506020813d602011611e43575b81611e3360209383611aab565b8101031261033357519038611e0f565b3d9150611e26565b91506020823d602011611e78575b81611e6660209383611aab565b81010312610333579051906020611de6565b3d9150611e59565b506001600160a01b03811660009081526007602052604090205460ff16611c83565b6000546001600160a01b03163303611eb657565b63118cdaa760e01b6000523360045260246000fd5b600260015414611edc576002600155565b633ee5aeb560e01b60005260046000fdfea2646970667358221220df22dc4abd295cd7d4adc9e7cac875d3f49d1228b1204ddb92bd6bb7d453f9e564736f6c634300081b0033
Constructor Arguments (ABI-Encoded and is the last bytes of the Contract Creation Code above)
0000000000000000000000000000000000000000000000003782dace9d9000000000000000000000000000000000000000000000000000003782dace9d9000000000000000000000000000000000000000000000000000000000000000000002
-----Decoded View---------------
Arg [0] : initialPublicMintPrice (uint256): 4000000000000000000
Arg [1] : initialWhitelistMintPrice (uint256): 4000000000000000000
Arg [2] : initialMaxPublicMintsPerUser (uint256): 2
-----Encoded View---------------
3 Constructor Arguments found :
Arg [0] : 0000000000000000000000000000000000000000000000003782dace9d900000
Arg [1] : 0000000000000000000000000000000000000000000000003782dace9d900000
Arg [2] : 0000000000000000000000000000000000000000000000000000000000000002
Loading...
Loading
Loading...
Loading
Loading...
Loading
Net Worth in USD
$0.00
Net Worth in HYPE
Multichain Portfolio | 35 Chains
| Chain | Token | Portfolio % | Price | Amount | Value |
|---|
Loading...
Loading
Loading...
Loading
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.