Overview
ETH Balance
2.361268024187177038 ETH
Eth Value
$7,797.44 (@ $3,302.23/ETH)More Info
Private Name Tags
ContractCreator
Latest 25 from a total of 504 transactions
Transaction Hash |
Method
|
Block
|
From
|
To
|
Value | ||||
---|---|---|---|---|---|---|---|---|---|
Withdraw Rewards | 19495037 | 102 days ago | IN | 0 ETH | 0.00093617 | ||||
Withdraw Rewards | 19137367 | 152 days ago | IN | 0 ETH | 0.00093019 | ||||
Withdraw Rewards | 19104801 | 157 days ago | IN | 0 ETH | 0.00132963 | ||||
Register NFT | 18920628 | 183 days ago | IN | 0 ETH | 0.00618425 | ||||
Withdraw Rewards | 18913113 | 184 days ago | IN | 0 ETH | 0.0013163 | ||||
Withdraw Rewards | 18913034 | 184 days ago | IN | 0 ETH | 0.00119161 | ||||
Withdraw Rewards | 18897056 | 186 days ago | IN | 0 ETH | 0.00108103 | ||||
Withdraw Rewards | 18894878 | 186 days ago | IN | 0 ETH | 0.00131317 | ||||
Withdraw Rewards | 18854759 | 192 days ago | IN | 0 ETH | 0.00115896 | ||||
Withdraw Rewards | 18848230 | 193 days ago | IN | 0 ETH | 0.00179314 | ||||
Withdraw Rewards | 18794692 | 200 days ago | IN | 0 ETH | 0.00240974 | ||||
Withdraw Rewards | 18755207 | 206 days ago | IN | 0 ETH | 0.00143578 | ||||
Withdraw Rewards | 18753146 | 206 days ago | IN | 0 ETH | 0.00190812 | ||||
Withdraw Rewards | 18725723 | 210 days ago | IN | 0 ETH | 0.00411263 | ||||
Register NFT | 18722582 | 210 days ago | IN | 0 ETH | 0.00181308 | ||||
Register NFT | 18722576 | 210 days ago | IN | 0 ETH | 0.00996746 | ||||
Withdraw Rewards | 18713304 | 212 days ago | IN | 0 ETH | 0.00286434 | ||||
Withdraw Rewards | 18696469 | 214 days ago | IN | 0 ETH | 0.00159289 | ||||
Withdraw Rewards | 18674494 | 217 days ago | IN | 0 ETH | 0.00270532 | ||||
Withdraw Rewards | 18670886 | 218 days ago | IN | 0 ETH | 0.01091674 | ||||
Withdraw Rewards | 18653574 | 220 days ago | IN | 0 ETH | 0.0010524 | ||||
Withdraw Rewards | 18639476 | 222 days ago | IN | 0 ETH | 0.00115191 | ||||
Withdraw Rewards | 18627201 | 224 days ago | IN | 0 ETH | 0.00178369 | ||||
Withdraw Rewards | 18624660 | 224 days ago | IN | 0 ETH | 0.00206453 | ||||
Withdraw Rewards | 18620181 | 225 days ago | IN | 0 ETH | 0.00193343 |
Latest 25 internal transactions (View All)
Advanced mode:
Parent Transaction Hash | Block | From | To | Value | ||
---|---|---|---|---|---|---|
20144949 | 11 days ago | 0.00042369 ETH | ||||
19495037 | 102 days ago | 0.00454009 ETH | ||||
19137367 | 152 days ago | 0.00454099 ETH | ||||
19104801 | 157 days ago | 0.12334892 ETH | ||||
18920628 | 183 days ago | 0.01760079 ETH | ||||
18913113 | 184 days ago | 0.04961279 ETH | ||||
18913034 | 184 days ago | 0.02480639 ETH | ||||
18897056 | 186 days ago | 0.05277941 ETH | ||||
18894878 | 186 days ago | 0.02227221 ETH | ||||
18882722 | 188 days ago | 0.0000475 ETH | ||||
18854759 | 192 days ago | 0.04540935 ETH | ||||
18848230 | 193 days ago | 0.02480633 ETH | ||||
18794692 | 200 days ago | 0.04540935 ETH | ||||
18755207 | 206 days ago | 0.00454093 ETH | ||||
18753146 | 206 days ago | 0.02299091 ETH | ||||
18725723 | 210 days ago | 0.02289872 ETH | ||||
18713304 | 212 days ago | 0.04702292 ETH | ||||
18696469 | 214 days ago | 0.0441696 ETH | ||||
18674494 | 217 days ago | 0.22522491 ETH | ||||
18670886 | 218 days ago | 0.03626799 ETH | ||||
18653574 | 220 days ago | 0.00882104 ETH | ||||
18639476 | 222 days ago | 0.04436284 ETH | ||||
18627201 | 224 days ago | 0.00908006 ETH | ||||
18624660 | 224 days ago | 0.02206733 ETH | ||||
18620181 | 225 days ago | 0.02256976 ETH |
Loading...
Loading
Contract Name:
NFTRegistry
Compiler Version
v0.8.17+commit.8df45f5f
Optimization Enabled:
Yes with 200 runs
Other Settings:
default evmVersion
Contract Source Code (Solidity Standard Json-Input format)
// SPDX-License-Identifier: MIT pragma solidity 0.8.17; interface IXENNFTContract { function ownerOf(uint256) external view returns (address); } contract NFTRegistry { struct NFT { uint256 tokenId; string category; } struct User { NFT[] userNFTs; uint256 userRewards; // Tracks total rewards sebt to user. uint256 userPoints; uint256 lastRewardRatio; } mapping(address => User) public users; mapping(uint256 => string) private categoryMap; mapping(uint256 => address) public currentHolder; mapping(string => uint256) public globalCounters; uint256 private constant XUNICORN_MIN_ID = 1; uint256 private constant XUNICORN_MAX_ID = 100; uint256 private constant EXOTIC_MIN_ID = 101; uint256 private constant EXOTIC_MAX_ID = 1000; uint256 private constant LEGENDARY_MIN_ID = 1001; uint256 private constant LEGENDARY_MAX_ID = 3000; uint256 private constant EPIC_MIN_ID = 3001; uint256 private constant EPIC_MAX_ID = 6000; uint256 private constant RARE_MIN_ID = 6001; uint256 private constant RARE_MAX_ID = 10000; mapping(uint256 => uint256) private rewardsMap; address public nftContractAddress; uint256 public totalRewards; uint256 public totalPoints; uint256 public rewardRatio; uint256 private constant XUNICORN_WEIGHT = 50; uint256 private constant EXOTIC_WEIGHT = 50; uint256 private constant LEGENDARY_WEIGHT = 25; uint256 private constant EPIC_WEIGHT = 10; uint256 private constant RARE_WEIGHT = 5; uint256 private constant COLLECTOR_WEIGHT = 0; constructor(address _nftContractAddress) { nftContractAddress = _nftContractAddress; rewardsMap[XUNICORN_WEIGHT] = 50; rewardsMap[EXOTIC_WEIGHT] = 50; rewardsMap[LEGENDARY_WEIGHT] = 25; rewardsMap[EPIC_WEIGHT] = 10; rewardsMap[RARE_WEIGHT] = 5; rewardsMap[COLLECTOR_WEIGHT] = 0; // Initialize totalRewards and totalPoints with small non-zero values totalRewards = 1 wei; // 1 wei totalPoints = 1; } event NFTRegistered(address indexed user, uint256 tokenId, uint256 rewards); event RewardsWithdrawn(address indexed user, uint256 amount); receive() external payable { totalRewards += msg.value; rewardRatio += msg.value / totalPoints; } function addToPool() external payable { totalRewards += msg.value; rewardRatio += msg.value / totalPoints; } function registerNFT(uint256 tokenId) public { address player = msg.sender; require(IXENNFTContract(nftContractAddress).ownerOf(tokenId) == player, "You don't own this NFT."); // Calculate the reward points for the NFT uint256 rewardPoints = getTokenWeight(tokenId); // Check if the NFT was previously registered to a different user address previousOwner = getNFTOwner(tokenId); require(previousOwner != player, "You already have this NFT regestered"); if (previousOwner != address(0) && previousOwner != player) { User storage previousOwnerData = users[previousOwner]; uint256 previousRewardAmount = calculateReward(previousOwner); address payable previousOwnerpay = payable(previousOwner); // Remove the previous owner's points previousOwnerData.userPoints -= rewardPoints; totalPoints -= rewardPoints; previousOwnerData.userRewards += previousRewardAmount; previousOwnerData.lastRewardRatio = rewardRatio; // Remove the NFT from the previous owner's list for (uint256 i = 0; i < previousOwnerData.userNFTs.length; i++) { if (previousOwnerData.userNFTs[i].tokenId == tokenId) { // Shift all elements to the left for (uint256 j = i; j < previousOwnerData.userNFTs.length - 1; j++) { previousOwnerData.userNFTs[j] = previousOwnerData.userNFTs[j + 1]; } // Remove the last element previousOwnerData.userNFTs.pop(); break; } } // Pay the previous owner their rewards previousOwnerpay.transfer(previousRewardAmount); } User storage currentUserData = users[player]; if (currentUserData.lastRewardRatio != rewardRatio && currentUserData.lastRewardRatio != 0) { withdrawRewards(); } // Update the user's rewards, points, and last rewarded timestamp currentUserData.userPoints += rewardPoints; totalPoints += rewardPoints; currentUserData.lastRewardRatio = rewardRatio; // Update the NFT ownership setNFTOwner(tokenId, player); emit NFTRegistered(player, tokenId, rewardPoints); } function registerNFTs(uint256[] memory tokenIds) external { uint len = tokenIds.length; for (uint256 i = 0; i < len; i++) { registerNFT(tokenIds[i]); } } function isNFTRegistered(uint256 tokenId) public view returns (bool) { address player = msg.sender; NFT[] storage userNFTs = users[player].userNFTs; uint len = userNFTs.length; for (uint256 j = 0; j < len; j++) { if (userNFTs[j].tokenId == tokenId) { return true; } } return false; } function setNFTOwner(uint256 tokenId, address owner) private { require(currentHolder[tokenId] != owner, "NFT already registered by the caller."); string memory category = getCategory(tokenId); currentHolder[tokenId] = owner; // Increment the global counter for the NFT class globalCounters[category]++; // Add the token ID to the user's NFTs users[owner].userNFTs.push(NFT(tokenId, category)); } function getNFTOwner(uint256 tokenId) public view returns (address) { return currentHolder[tokenId]; } function getCategory(uint256 tokenId) public pure returns (string memory) { if (tokenId >= XUNICORN_MIN_ID && tokenId <= XUNICORN_MAX_ID) { return "Xunicorn"; } else if (tokenId >= EXOTIC_MIN_ID && tokenId <= EXOTIC_MAX_ID) { return "Exotic"; } else if (tokenId >= LEGENDARY_MIN_ID && tokenId <= LEGENDARY_MAX_ID) { return "Legendary"; } else if (tokenId >= EPIC_MIN_ID && tokenId <= EPIC_MAX_ID) { return "Epic"; } else if (tokenId >= RARE_MIN_ID && tokenId <= RARE_MAX_ID) { return "Rare"; } else if (tokenId > RARE_MAX_ID) { return "Collector"; } else { revert("Invalid token ID."); } } function calculateReward(address user) public view returns (uint256) { User storage userData = users[user]; uint256 lastRewardRatio = userData.lastRewardRatio; uint256 newRewards = rewardRatio - lastRewardRatio; return newRewards * userData.userPoints; } function withdrawRewards() public payable { address player = msg.sender; User storage userData = users[player]; require(userData.userPoints > 0, "No XenFT's registered for this user"); if (!_hasValidOwnership(player)) { for (uint256 i = 0; i < userData.userNFTs.length; i++) { if(!_isNFTOwner(userData.userNFTs[i].tokenId, player)) { // remove points for this NFT userData.userPoints -= getTokenWeight(userData.userNFTs[i].tokenId); // remove NFT from user's list for (uint256 j = i; j < userData.userNFTs.length - 1; j++) { userData.userNFTs[j] = userData.userNFTs[j + 1]; } userData.userNFTs.pop(); // decrease i to rerun the check for the NFT that was shifted from the right i--; } } } uint256 rewardAmount = calculateReward(player); require(rewardAmount > 0, "No new rewards available for withdrawal."); // Effects userData.userRewards += rewardAmount; userData.lastRewardRatio = rewardRatio; // Interactions payable(player).transfer(rewardAmount); emit RewardsWithdrawn(player, rewardAmount); } function _isNFTOwner(uint256 tokenId, address owner) public view returns (bool) { IXENNFTContract nftContract = IXENNFTContract(nftContractAddress); address nftOwner = nftContract.ownerOf(tokenId); return nftOwner == owner; } function getTokenWeight(uint256 tokenId) public pure returns (uint256) { if (tokenId >= XUNICORN_MIN_ID && tokenId <= XUNICORN_MAX_ID) { return XUNICORN_WEIGHT; } else if (tokenId >= EXOTIC_MIN_ID && tokenId <= EXOTIC_MAX_ID) { return EXOTIC_WEIGHT; } else if (tokenId >= LEGENDARY_MIN_ID && tokenId <= LEGENDARY_MAX_ID) { return LEGENDARY_WEIGHT; } else if (tokenId >= EPIC_MIN_ID && tokenId <= EPIC_MAX_ID) { return EPIC_WEIGHT; } else if (tokenId >= RARE_MIN_ID && tokenId <= RARE_MAX_ID) { return RARE_WEIGHT; } else if (tokenId > EPIC_MAX_ID) { return COLLECTOR_WEIGHT; } else { revert("Invalid token ID."); } } function getUserNFTCounts(address user) external view returns (uint256[] memory) { uint256[] memory nftCounts = new uint256[](6); // Array to store NFT counts for each category User storage userData = users[user]; NFT[] storage userNFTs = userData.userNFTs; // Iterate over the user's registered NFTs and count them for each category uint len = userNFTs.length; for (uint256 i = 0; i < len; i++) { NFT storage nft = userNFTs[i]; string memory category = nft.category; if (keccak256(bytes(category)) == keccak256(bytes("Xunicorn"))) { nftCounts[0]++; } else if (keccak256(bytes(category)) == keccak256(bytes("Exotic"))) { nftCounts[1]++; } else if (keccak256(bytes(category)) == keccak256(bytes("Legendary"))) { nftCounts[2]++; } else if (keccak256(bytes(category)) == keccak256(bytes("Epic"))) { nftCounts[3]++; } else if (keccak256(bytes(category)) == keccak256(bytes("Rare"))) { nftCounts[4]++; } else if (keccak256(bytes(category)) == keccak256(bytes("Collector"))) { nftCounts[5]++; } } return nftCounts; } function _hasValidOwnership(address user) public view returns (bool) { User storage userData = users[user]; uint256 totalPointsOwned = 0; uint len = userData.userNFTs.length; for (uint256 i = 0; i < len; i++) { NFT storage nft = userData.userNFTs[i]; if (_isNFTOwner(nft.tokenId, user)) { totalPointsOwned += getTokenWeight(nft.tokenId); } else { return false; } } return totalPointsOwned == userData.userPoints; } }
{ "optimizer": { "enabled": true, "runs": 200 }, "outputSelection": { "*": { "*": [ "evm.bytecode", "evm.deployedBytecode", "devdoc", "userdoc", "metadata", "abi" ] } } }
Contract Security Audit
- No Contract Security Audit Submitted- Submit Audit Here
[{"inputs":[{"internalType":"address","name":"_nftContractAddress","type":"address"}],"stateMutability":"nonpayable","type":"constructor"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"user","type":"address"},{"indexed":false,"internalType":"uint256","name":"tokenId","type":"uint256"},{"indexed":false,"internalType":"uint256","name":"rewards","type":"uint256"}],"name":"NFTRegistered","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"user","type":"address"},{"indexed":false,"internalType":"uint256","name":"amount","type":"uint256"}],"name":"RewardsWithdrawn","type":"event"},{"inputs":[{"internalType":"address","name":"user","type":"address"}],"name":"_hasValidOwnership","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"uint256","name":"tokenId","type":"uint256"},{"internalType":"address","name":"owner","type":"address"}],"name":"_isNFTOwner","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"addToPool","outputs":[],"stateMutability":"payable","type":"function"},{"inputs":[{"internalType":"address","name":"user","type":"address"}],"name":"calculateReward","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"uint256","name":"","type":"uint256"}],"name":"currentHolder","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"uint256","name":"tokenId","type":"uint256"}],"name":"getCategory","outputs":[{"internalType":"string","name":"","type":"string"}],"stateMutability":"pure","type":"function"},{"inputs":[{"internalType":"uint256","name":"tokenId","type":"uint256"}],"name":"getNFTOwner","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"uint256","name":"tokenId","type":"uint256"}],"name":"getTokenWeight","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"pure","type":"function"},{"inputs":[{"internalType":"address","name":"user","type":"address"}],"name":"getUserNFTCounts","outputs":[{"internalType":"uint256[]","name":"","type":"uint256[]"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"string","name":"","type":"string"}],"name":"globalCounters","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"uint256","name":"tokenId","type":"uint256"}],"name":"isNFTRegistered","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"nftContractAddress","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"uint256","name":"tokenId","type":"uint256"}],"name":"registerNFT","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"uint256[]","name":"tokenIds","type":"uint256[]"}],"name":"registerNFTs","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"rewardRatio","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"totalPoints","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"totalRewards","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"","type":"address"}],"name":"users","outputs":[{"internalType":"uint256","name":"userRewards","type":"uint256"},{"internalType":"uint256","name":"userPoints","type":"uint256"},{"internalType":"uint256","name":"lastRewardRatio","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"withdrawRewards","outputs":[],"stateMutability":"payable","type":"function"},{"stateMutability":"payable","type":"receive"}]
Contract Creation Code
608060405234801561001057600080fd5b50604051611c7f380380611c7f83398101604081905261002f91610118565b600580546001600160a01b0319166001600160a01b0392909216919091178155600460205260327feaa72e3626d79eea854e214b64a34b95d0c9348f5b8df0b074d774f7dba83c655560197feb5726be0cc40daa58a5f8f81528465ddb0c35e1e56e157eca916d69d6c3432455600a7f5c6b02db8b672415ffad906d7ccee10bd53dbad7d0b29e2bc0e50c93d5f31093557f04cde762ef08b6b6c5ded8e8c4c0b3f4e5c9ad7342c88fcc93681b4588b73f055560008080527f17ef568e3e12ab5b9c7254a8d58478811de00f9e6eb34345acd53bf8fd09d3ec5560016006819055600755610148565b60006020828403121561012a57600080fd5b81516001600160a01b038116811461014157600080fd5b9392505050565b611b28806101576000396000f3fe6080604052600436106101185760003560e01c8063c07401f0116100a0578063d96c98e911610064578063d96c98e914610383578063ddc9904e146103a3578063deaea2e3146103c3578063f3052d26146103f9578063fb71070d1461042657600080fd5b8063c07401f0146102fd578063c70d588d14610305578063c7b8981c1461033b578063d6ec26ef14610343578063d82e39621461036357600080fd5b806378de4e16116100e757806378de4e16146101e15780639b9d9b5614610219578063a87430ba14610249578063aae282e1146102a3578063b4c2c7fa146102db57600080fd5b80630e15561a1461015f578063155bb24a14610188578063567142be146101b5578063646033bc146101cb57600080fd5b3661015a57346006600082825461012f9190611544565b90915550506007546101419034611557565b600860008282546101529190611544565b925050819055005b600080fd5b34801561016b57600080fd5b5061017560065481565b6040519081526020015b60405180910390f35b34801561019457600080fd5b506101a86101a336600461158e565b610446565b60405161017f91906115b2565b3480156101c157600080fd5b5061017560075481565b3480156101d757600080fd5b5061017560085481565b3480156101ed57600080fd5b506101756101fc36600461163d565b805160208183018101805160038252928201919093012091525481565b34801561022557600080fd5b506102396102343660046116d2565b6107b9565b604051901515815260200161017f565b34801561025557600080fd5b5061028861026436600461158e565b60006020819052908152604090206001810154600282015460039092015490919083565b6040805193845260208401929092529082015260600161017f565b3480156102af57600080fd5b506005546102c3906001600160a01b031681565b6040516001600160a01b03909116815260200161017f565b3480156102e757600080fd5b506102fb6102f6366004611702565b610844565b005b6102fb610c6b565b34801561031157600080fd5b506102c3610320366004611702565b6002602052600090815260409020546001600160a01b031681565b6102fb610ca7565b34801561034f57600080fd5b5061023961035e366004611702565b610fa8565b34801561036f57600080fd5b5061017561037e36600461158e565b61101a565b34801561038f57600080fd5b5061023961039e36600461158e565b611062565b3480156103af57600080fd5b506102fb6103be36600461171b565b61110d565b3480156103cf57600080fd5b506102c36103de366004611702565b6000908152600260205260409020546001600160a01b031690565b34801561040557600080fd5b50610419610414366004611702565b611153565b60405161017f91906117e5565b34801561043257600080fd5b50610175610441366004611702565b6112e5565b60408051600680825260e08201909252606091600091906020820160c0803683375050506001600160a01b038416600090815260208190526040812080549293509182915b818110156107ae5760008382815481106104a7576104a7611818565b9060005260206000209060020201905060008160010180546104c89061182e565b80601f01602080910402602001604051908101604052809291908181526020018280546104f49061182e565b80156105415780601f1061051657610100808354040283529160200191610541565b820191906000526020600020905b81548152906001019060200180831161052457829003601f168201915b50505050509050604051806040016040528060088152602001672c3ab734b1b7b93760c11b815250805190602001208180519060200120036105ad578660008151811061059057610590611818565b6020026020010180518091906105a590611868565b905250610799565b60408051808201909152600681526545786f74696360d01b6020918201528151908201207f93b0ca3fd1c3bd20b6987f90e3f1c7ef956d919cc33073e92d0088399baec7120161060a578660018151811061059057610590611818565b6040805180820190915260098152684c6567656e6461727960b81b6020918201528151908201207fe7e141c5705ecfdb92b6402edc53ab7b64fa4232fd394ecdd38721d5c6775cf00161066a578660028151811061059057610590611818565b6040805180820190915260048152634570696360e01b6020918201528151908201207f989b27fb2a8d7a5162b3bd33c7fc882c2f11646f006113355cd2c4d1c17280e9016106c5578660038151811061059057610590611818565b6040805180820190915260048152635261726560e01b6020918201528151908201207f2fd1cebe571f50f6d32c331c60e06e19e17e57e917c1a75b78067093c4dc720601610720578660048151811061059057610590611818565b60408051808201909152600981526821b7b63632b1ba37b960b91b6020918201528151908201207fc23ed5ba4c4fbe22cebb9a8c63e79efed3160dbaa51afdfe9aa3d6c1cb3ff13501610799578660058151811061078057610780611818565b60200260200101805180919061079590611868565b9052505b505080806107a690611868565b91505061048b565b509295945050505050565b6005546040516331a9108f60e11b8152600481018490526000916001600160a01b03169082908290636352211e90602401602060405180830381865afa158015610807573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061082b9190611881565b6001600160a01b03858116911614925050505b92915050565b6005546040516331a9108f60e11b815260048101839052339182916001600160a01b0390911690636352211e90602401602060405180830381865afa158015610891573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906108b59190611881565b6001600160a01b0316146109105760405162461bcd60e51b815260206004820152601760248201527f596f7520646f6e2774206f776e2074686973204e46542e00000000000000000060448201526064015b60405180910390fd5b600061091b836112e5565b6000848152600260205260409020549091506001600160a01b0390811690831681036109955760405162461bcd60e51b8152602060048201526024808201527f596f7520616c726561647920686176652074686973204e465420726567657374604482015263195c995960e21b6064820152608401610907565b6001600160a01b038116158015906109bf5750826001600160a01b0316816001600160a01b031614155b15610b9e576001600160a01b0381166000908152602081905260408120906109e68361101a565b9050600083905084836002016000828254610a01919061189e565b925050819055508460076000828254610a1a919061189e565b9250508190555081836001016000828254610a359190611544565b9091555050600854600384015560005b8354811015610b625787846000018281548110610a6457610a64611818565b90600052602060002090600202016000015403610b5057805b8454610a8b9060019061189e565b811015610b0f5784610a9e826001611544565b81548110610aae57610aae611818565b9060005260206000209060020201856000018281548110610ad157610ad1611818565b600091825260209091208254600290920201908155600180820190610af8908401826118f7565b509050508080610b0790611868565b915050610a7d565b508354849080610b2157610b216119d8565b60008281526020812060026000199093019283020181815590610b4760018301826114d8565b50509055610b62565b80610b5a81611868565b915050610a45565b506040516001600160a01b0382169083156108fc029084906000818181858888f19350505050158015610b99573d6000803e3d6000fd5b505050505b6001600160a01b0383166000908152602081905260409020600854600382015414801590610bcf5750600381015415155b15610bdc57610bdc610ca7565b82816002016000828254610bf09190611544565b925050819055508260076000828254610c099190611544565b90915550506008546003820155610c20858561139b565b60408051868152602081018590526001600160a01b038616917f3da6b273ca5aedb9aeade54d2494bfb1fb3cb2088595921bcbf8ee9f3ba49ef5910160405180910390a25050505050565b3460066000828254610c7d9190611544565b9091555050600754610c8f9034611557565b60086000828254610ca09190611544565b9091555050565b3360008181526020819052604090206002810154610d135760405162461bcd60e51b815260206004820152602360248201527f4e6f2058656e46542773207265676973746572656420666f722074686973207560448201526239b2b960e91b6064820152608401610907565b610d1c82611062565b610e9a5760005b8154811015610e9857610d5c826000018281548110610d4457610d44611818565b906000526020600020906002020160000154846107b9565b610e8657610d8f826000018281548110610d7857610d78611818565b9060005260206000209060020201600001546112e5565b826002016000828254610da2919061189e565b909155508190505b8254610db89060019061189e565b811015610e3c5782610dcb826001611544565b81548110610ddb57610ddb611818565b9060005260206000209060020201836000018281548110610dfe57610dfe611818565b600091825260209091208254600290920201908155600180820190610e25908401826118f7565b509050508080610e3490611868565b915050610daa565b508154829080610e4e57610e4e6119d8565b60008281526020812060026000199093019283020181815590610e7460018301826114d8565b5050905580610e82816119ee565b9150505b80610e9081611868565b915050610d23565b505b6000610ea58361101a565b905060008111610f085760405162461bcd60e51b815260206004820152602860248201527f4e6f206e6577207265776172647320617661696c61626c6520666f722077697460448201526734323930bbb0b61760c11b6064820152608401610907565b80826001016000828254610f1c9190611544565b909155505060085460038301556040516001600160a01b0384169082156108fc029083906000818181858888f19350505050158015610f5f573d6000803e3d6000fd5b50826001600160a01b03167f8a43c4352486ec339f487f64af78ca5cbf06cd47833f073d3baf3a193e50316182604051610f9b91815260200190565b60405180910390a2505050565b3360008181526020819052604081208054919291835b8181101561100e5785838281548110610fd957610fd9611818565b90600052602060002090600202016000015403610ffc5750600195945050505050565b8061100681611868565b915050610fbe565b50600095945050505050565b6001600160a01b03811660009081526020819052604081206003810154600854839061104790839061189e565b90508260020154816110599190611a05565b95945050505050565b6001600160a01b038116600090815260208190526040812080548290815b818110156110fe57600084600001828154811061109f5761109f611818565b906000526020600020906002020190506110bd8160000154886107b9565b156110de5780546110cd906112e5565b6110d79085611544565b93506110eb565b5060009695505050505050565b50806110f681611868565b915050611080565b50506002909101541492915050565b805160005b8181101561114e5761113c83828151811061112f5761112f611818565b6020026020010151610844565b8061114681611868565b915050611112565b505050565b606060018210158015611167575060648211155b156111905750506040805180820190915260088152672c3ab734b1b7b93760c11b602082015290565b606582101580156111a357506103e88211155b156111ca57505060408051808201909152600681526545786f74696360d01b602082015290565b6103e982101580156111de5750610bb88211155b156112085750506040805180820190915260098152684c6567656e6461727960b81b602082015290565b610bb9821015801561121c57506117708211155b156112415750506040805180820190915260048152634570696360e01b602082015290565b611771821015801561125557506127108211155b1561127a5750506040805180820190915260048152635261726560e01b602082015290565b6127108211156112a957505060408051808201909152600981526821b7b63632b1ba37b960b91b602082015290565b60405162461bcd60e51b815260206004820152601160248201527024b73b30b634b2103a37b5b2b71024a21760791b6044820152606401610907565b6000600182101580156112f9575060648211155b1561130657506032919050565b6065821015801561131957506103e88211155b1561132657506032919050565b6103e9821015801561133a5750610bb88211155b1561134757506019919050565b610bb9821015801561135b57506117708211155b156113685750600a919050565b611771821015801561137c57506127108211155b1561138957506005919050565b6117708211156112a957506000919050565b6000828152600260205260409020546001600160a01b038083169116036114125760405162461bcd60e51b815260206004820152602560248201527f4e465420616c7265616479207265676973746572656420627920746865206361604482015264363632b91760d91b6064820152608401610907565b600061141d83611153565b6000848152600260205260409081902080546001600160a01b0319166001600160a01b03861617905551909150600390611458908390611a1c565b908152604051908190036020019020805490600061147583611868565b90915550506001600160a01b0382166000908152602081815260408083208151808301909252868252818301858152815460018181018455928652939094208251600290940201928355925190928201906114d09082611a38565b505050505050565b5080546114e49061182e565b6000825580601f106114f4575050565b601f0160209004906000526020600020908101906115129190611515565b50565b5b8082111561152a5760008155600101611516565b5090565b634e487b7160e01b600052601160045260246000fd5b8082018082111561083e5761083e61152e565b60008261157457634e487b7160e01b600052601260045260246000fd5b500490565b6001600160a01b038116811461151257600080fd5b6000602082840312156115a057600080fd5b81356115ab81611579565b9392505050565b6020808252825182820181905260009190848201906040850190845b818110156115ea578351835292840192918401916001016115ce565b50909695505050505050565b634e487b7160e01b600052604160045260246000fd5b604051601f8201601f1916810167ffffffffffffffff81118282101715611635576116356115f6565b604052919050565b6000602080838503121561165057600080fd5b823567ffffffffffffffff8082111561166857600080fd5b818501915085601f83011261167c57600080fd5b81358181111561168e5761168e6115f6565b6116a0601f8201601f1916850161160c565b915080825286848285010111156116b657600080fd5b8084840185840137600090820190930192909252509392505050565b600080604083850312156116e557600080fd5b8235915060208301356116f781611579565b809150509250929050565b60006020828403121561171457600080fd5b5035919050565b6000602080838503121561172e57600080fd5b823567ffffffffffffffff8082111561174657600080fd5b818501915085601f83011261175a57600080fd5b81358181111561176c5761176c6115f6565b8060051b915061177d84830161160c565b818152918301840191848101908884111561179757600080fd5b938501935b838510156117b55784358252938501939085019061179c565b98975050505050505050565b60005b838110156117dc5781810151838201526020016117c4565b50506000910152565b60208152600082518060208401526118048160408501602087016117c1565b601f01601f19169190910160400192915050565b634e487b7160e01b600052603260045260246000fd5b600181811c9082168061184257607f821691505b60208210810361186257634e487b7160e01b600052602260045260246000fd5b50919050565b60006001820161187a5761187a61152e565b5060010190565b60006020828403121561189357600080fd5b81516115ab81611579565b8181038181111561083e5761083e61152e565b601f82111561114e57600081815260208120601f850160051c810160208610156118d85750805b601f850160051c820191505b818110156114d0578281556001016118e4565b818103611902575050565b61190c825461182e565b67ffffffffffffffff811115611924576119246115f6565b61193881611932845461182e565b846118b1565b6000601f82116001811461196c57600083156119545750848201545b600019600385901b1c1916600184901b1784556119d1565b600085815260209020601f19841690600086815260209020845b838110156119a65782860154825560019586019590910190602001611986565b50858310156119c45781850154600019600388901b60f8161c191681555b50505060018360011b0184555b5050505050565b634e487b7160e01b600052603160045260246000fd5b6000816119fd576119fd61152e565b506000190190565b808202811582820484141761083e5761083e61152e565b60008251611a2e8184602087016117c1565b9190910192915050565b815167ffffffffffffffff811115611a5257611a526115f6565b611a6081611932845461182e565b602080601f831160018114611a955760008415611a7d5750858301515b600019600386901b1c1916600185901b1785556114d0565b600085815260208120601f198616915b82811015611ac457888601518255948401946001909101908401611aa5565b5085821015611ae25787850151600019600388901b60f8161c191681555b5050505050600190811b0190555056fea2646970667358221220738d987c5f0b64263a69956f6b9b4e7b44dc7409dffa679f123660d7c85d924a64736f6c634300081100330000000000000000000000000a252663dbcc0b073063d6420a40319e438cfa59
Deployed Bytecode
0x6080604052600436106101185760003560e01c8063c07401f0116100a0578063d96c98e911610064578063d96c98e914610383578063ddc9904e146103a3578063deaea2e3146103c3578063f3052d26146103f9578063fb71070d1461042657600080fd5b8063c07401f0146102fd578063c70d588d14610305578063c7b8981c1461033b578063d6ec26ef14610343578063d82e39621461036357600080fd5b806378de4e16116100e757806378de4e16146101e15780639b9d9b5614610219578063a87430ba14610249578063aae282e1146102a3578063b4c2c7fa146102db57600080fd5b80630e15561a1461015f578063155bb24a14610188578063567142be146101b5578063646033bc146101cb57600080fd5b3661015a57346006600082825461012f9190611544565b90915550506007546101419034611557565b600860008282546101529190611544565b925050819055005b600080fd5b34801561016b57600080fd5b5061017560065481565b6040519081526020015b60405180910390f35b34801561019457600080fd5b506101a86101a336600461158e565b610446565b60405161017f91906115b2565b3480156101c157600080fd5b5061017560075481565b3480156101d757600080fd5b5061017560085481565b3480156101ed57600080fd5b506101756101fc36600461163d565b805160208183018101805160038252928201919093012091525481565b34801561022557600080fd5b506102396102343660046116d2565b6107b9565b604051901515815260200161017f565b34801561025557600080fd5b5061028861026436600461158e565b60006020819052908152604090206001810154600282015460039092015490919083565b6040805193845260208401929092529082015260600161017f565b3480156102af57600080fd5b506005546102c3906001600160a01b031681565b6040516001600160a01b03909116815260200161017f565b3480156102e757600080fd5b506102fb6102f6366004611702565b610844565b005b6102fb610c6b565b34801561031157600080fd5b506102c3610320366004611702565b6002602052600090815260409020546001600160a01b031681565b6102fb610ca7565b34801561034f57600080fd5b5061023961035e366004611702565b610fa8565b34801561036f57600080fd5b5061017561037e36600461158e565b61101a565b34801561038f57600080fd5b5061023961039e36600461158e565b611062565b3480156103af57600080fd5b506102fb6103be36600461171b565b61110d565b3480156103cf57600080fd5b506102c36103de366004611702565b6000908152600260205260409020546001600160a01b031690565b34801561040557600080fd5b50610419610414366004611702565b611153565b60405161017f91906117e5565b34801561043257600080fd5b50610175610441366004611702565b6112e5565b60408051600680825260e08201909252606091600091906020820160c0803683375050506001600160a01b038416600090815260208190526040812080549293509182915b818110156107ae5760008382815481106104a7576104a7611818565b9060005260206000209060020201905060008160010180546104c89061182e565b80601f01602080910402602001604051908101604052809291908181526020018280546104f49061182e565b80156105415780601f1061051657610100808354040283529160200191610541565b820191906000526020600020905b81548152906001019060200180831161052457829003601f168201915b50505050509050604051806040016040528060088152602001672c3ab734b1b7b93760c11b815250805190602001208180519060200120036105ad578660008151811061059057610590611818565b6020026020010180518091906105a590611868565b905250610799565b60408051808201909152600681526545786f74696360d01b6020918201528151908201207f93b0ca3fd1c3bd20b6987f90e3f1c7ef956d919cc33073e92d0088399baec7120161060a578660018151811061059057610590611818565b6040805180820190915260098152684c6567656e6461727960b81b6020918201528151908201207fe7e141c5705ecfdb92b6402edc53ab7b64fa4232fd394ecdd38721d5c6775cf00161066a578660028151811061059057610590611818565b6040805180820190915260048152634570696360e01b6020918201528151908201207f989b27fb2a8d7a5162b3bd33c7fc882c2f11646f006113355cd2c4d1c17280e9016106c5578660038151811061059057610590611818565b6040805180820190915260048152635261726560e01b6020918201528151908201207f2fd1cebe571f50f6d32c331c60e06e19e17e57e917c1a75b78067093c4dc720601610720578660048151811061059057610590611818565b60408051808201909152600981526821b7b63632b1ba37b960b91b6020918201528151908201207fc23ed5ba4c4fbe22cebb9a8c63e79efed3160dbaa51afdfe9aa3d6c1cb3ff13501610799578660058151811061078057610780611818565b60200260200101805180919061079590611868565b9052505b505080806107a690611868565b91505061048b565b509295945050505050565b6005546040516331a9108f60e11b8152600481018490526000916001600160a01b03169082908290636352211e90602401602060405180830381865afa158015610807573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061082b9190611881565b6001600160a01b03858116911614925050505b92915050565b6005546040516331a9108f60e11b815260048101839052339182916001600160a01b0390911690636352211e90602401602060405180830381865afa158015610891573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906108b59190611881565b6001600160a01b0316146109105760405162461bcd60e51b815260206004820152601760248201527f596f7520646f6e2774206f776e2074686973204e46542e00000000000000000060448201526064015b60405180910390fd5b600061091b836112e5565b6000848152600260205260409020549091506001600160a01b0390811690831681036109955760405162461bcd60e51b8152602060048201526024808201527f596f7520616c726561647920686176652074686973204e465420726567657374604482015263195c995960e21b6064820152608401610907565b6001600160a01b038116158015906109bf5750826001600160a01b0316816001600160a01b031614155b15610b9e576001600160a01b0381166000908152602081905260408120906109e68361101a565b9050600083905084836002016000828254610a01919061189e565b925050819055508460076000828254610a1a919061189e565b9250508190555081836001016000828254610a359190611544565b9091555050600854600384015560005b8354811015610b625787846000018281548110610a6457610a64611818565b90600052602060002090600202016000015403610b5057805b8454610a8b9060019061189e565b811015610b0f5784610a9e826001611544565b81548110610aae57610aae611818565b9060005260206000209060020201856000018281548110610ad157610ad1611818565b600091825260209091208254600290920201908155600180820190610af8908401826118f7565b509050508080610b0790611868565b915050610a7d565b508354849080610b2157610b216119d8565b60008281526020812060026000199093019283020181815590610b4760018301826114d8565b50509055610b62565b80610b5a81611868565b915050610a45565b506040516001600160a01b0382169083156108fc029084906000818181858888f19350505050158015610b99573d6000803e3d6000fd5b505050505b6001600160a01b0383166000908152602081905260409020600854600382015414801590610bcf5750600381015415155b15610bdc57610bdc610ca7565b82816002016000828254610bf09190611544565b925050819055508260076000828254610c099190611544565b90915550506008546003820155610c20858561139b565b60408051868152602081018590526001600160a01b038616917f3da6b273ca5aedb9aeade54d2494bfb1fb3cb2088595921bcbf8ee9f3ba49ef5910160405180910390a25050505050565b3460066000828254610c7d9190611544565b9091555050600754610c8f9034611557565b60086000828254610ca09190611544565b9091555050565b3360008181526020819052604090206002810154610d135760405162461bcd60e51b815260206004820152602360248201527f4e6f2058656e46542773207265676973746572656420666f722074686973207560448201526239b2b960e91b6064820152608401610907565b610d1c82611062565b610e9a5760005b8154811015610e9857610d5c826000018281548110610d4457610d44611818565b906000526020600020906002020160000154846107b9565b610e8657610d8f826000018281548110610d7857610d78611818565b9060005260206000209060020201600001546112e5565b826002016000828254610da2919061189e565b909155508190505b8254610db89060019061189e565b811015610e3c5782610dcb826001611544565b81548110610ddb57610ddb611818565b9060005260206000209060020201836000018281548110610dfe57610dfe611818565b600091825260209091208254600290920201908155600180820190610e25908401826118f7565b509050508080610e3490611868565b915050610daa565b508154829080610e4e57610e4e6119d8565b60008281526020812060026000199093019283020181815590610e7460018301826114d8565b5050905580610e82816119ee565b9150505b80610e9081611868565b915050610d23565b505b6000610ea58361101a565b905060008111610f085760405162461bcd60e51b815260206004820152602860248201527f4e6f206e6577207265776172647320617661696c61626c6520666f722077697460448201526734323930bbb0b61760c11b6064820152608401610907565b80826001016000828254610f1c9190611544565b909155505060085460038301556040516001600160a01b0384169082156108fc029083906000818181858888f19350505050158015610f5f573d6000803e3d6000fd5b50826001600160a01b03167f8a43c4352486ec339f487f64af78ca5cbf06cd47833f073d3baf3a193e50316182604051610f9b91815260200190565b60405180910390a2505050565b3360008181526020819052604081208054919291835b8181101561100e5785838281548110610fd957610fd9611818565b90600052602060002090600202016000015403610ffc5750600195945050505050565b8061100681611868565b915050610fbe565b50600095945050505050565b6001600160a01b03811660009081526020819052604081206003810154600854839061104790839061189e565b90508260020154816110599190611a05565b95945050505050565b6001600160a01b038116600090815260208190526040812080548290815b818110156110fe57600084600001828154811061109f5761109f611818565b906000526020600020906002020190506110bd8160000154886107b9565b156110de5780546110cd906112e5565b6110d79085611544565b93506110eb565b5060009695505050505050565b50806110f681611868565b915050611080565b50506002909101541492915050565b805160005b8181101561114e5761113c83828151811061112f5761112f611818565b6020026020010151610844565b8061114681611868565b915050611112565b505050565b606060018210158015611167575060648211155b156111905750506040805180820190915260088152672c3ab734b1b7b93760c11b602082015290565b606582101580156111a357506103e88211155b156111ca57505060408051808201909152600681526545786f74696360d01b602082015290565b6103e982101580156111de5750610bb88211155b156112085750506040805180820190915260098152684c6567656e6461727960b81b602082015290565b610bb9821015801561121c57506117708211155b156112415750506040805180820190915260048152634570696360e01b602082015290565b611771821015801561125557506127108211155b1561127a5750506040805180820190915260048152635261726560e01b602082015290565b6127108211156112a957505060408051808201909152600981526821b7b63632b1ba37b960b91b602082015290565b60405162461bcd60e51b815260206004820152601160248201527024b73b30b634b2103a37b5b2b71024a21760791b6044820152606401610907565b6000600182101580156112f9575060648211155b1561130657506032919050565b6065821015801561131957506103e88211155b1561132657506032919050565b6103e9821015801561133a5750610bb88211155b1561134757506019919050565b610bb9821015801561135b57506117708211155b156113685750600a919050565b611771821015801561137c57506127108211155b1561138957506005919050565b6117708211156112a957506000919050565b6000828152600260205260409020546001600160a01b038083169116036114125760405162461bcd60e51b815260206004820152602560248201527f4e465420616c7265616479207265676973746572656420627920746865206361604482015264363632b91760d91b6064820152608401610907565b600061141d83611153565b6000848152600260205260409081902080546001600160a01b0319166001600160a01b03861617905551909150600390611458908390611a1c565b908152604051908190036020019020805490600061147583611868565b90915550506001600160a01b0382166000908152602081815260408083208151808301909252868252818301858152815460018181018455928652939094208251600290940201928355925190928201906114d09082611a38565b505050505050565b5080546114e49061182e565b6000825580601f106114f4575050565b601f0160209004906000526020600020908101906115129190611515565b50565b5b8082111561152a5760008155600101611516565b5090565b634e487b7160e01b600052601160045260246000fd5b8082018082111561083e5761083e61152e565b60008261157457634e487b7160e01b600052601260045260246000fd5b500490565b6001600160a01b038116811461151257600080fd5b6000602082840312156115a057600080fd5b81356115ab81611579565b9392505050565b6020808252825182820181905260009190848201906040850190845b818110156115ea578351835292840192918401916001016115ce565b50909695505050505050565b634e487b7160e01b600052604160045260246000fd5b604051601f8201601f1916810167ffffffffffffffff81118282101715611635576116356115f6565b604052919050565b6000602080838503121561165057600080fd5b823567ffffffffffffffff8082111561166857600080fd5b818501915085601f83011261167c57600080fd5b81358181111561168e5761168e6115f6565b6116a0601f8201601f1916850161160c565b915080825286848285010111156116b657600080fd5b8084840185840137600090820190930192909252509392505050565b600080604083850312156116e557600080fd5b8235915060208301356116f781611579565b809150509250929050565b60006020828403121561171457600080fd5b5035919050565b6000602080838503121561172e57600080fd5b823567ffffffffffffffff8082111561174657600080fd5b818501915085601f83011261175a57600080fd5b81358181111561176c5761176c6115f6565b8060051b915061177d84830161160c565b818152918301840191848101908884111561179757600080fd5b938501935b838510156117b55784358252938501939085019061179c565b98975050505050505050565b60005b838110156117dc5781810151838201526020016117c4565b50506000910152565b60208152600082518060208401526118048160408501602087016117c1565b601f01601f19169190910160400192915050565b634e487b7160e01b600052603260045260246000fd5b600181811c9082168061184257607f821691505b60208210810361186257634e487b7160e01b600052602260045260246000fd5b50919050565b60006001820161187a5761187a61152e565b5060010190565b60006020828403121561189357600080fd5b81516115ab81611579565b8181038181111561083e5761083e61152e565b601f82111561114e57600081815260208120601f850160051c810160208610156118d85750805b601f850160051c820191505b818110156114d0578281556001016118e4565b818103611902575050565b61190c825461182e565b67ffffffffffffffff811115611924576119246115f6565b61193881611932845461182e565b846118b1565b6000601f82116001811461196c57600083156119545750848201545b600019600385901b1c1916600184901b1784556119d1565b600085815260209020601f19841690600086815260209020845b838110156119a65782860154825560019586019590910190602001611986565b50858310156119c45781850154600019600388901b60f8161c191681555b50505060018360011b0184555b5050505050565b634e487b7160e01b600052603160045260246000fd5b6000816119fd576119fd61152e565b506000190190565b808202811582820484141761083e5761083e61152e565b60008251611a2e8184602087016117c1565b9190910192915050565b815167ffffffffffffffff811115611a5257611a526115f6565b611a6081611932845461182e565b602080601f831160018114611a955760008415611a7d5750858301515b600019600386901b1c1916600185901b1785556114d0565b600085815260208120601f198616915b82811015611ac457888601518255948401946001909101908401611aa5565b5085821015611ae25787850151600019600388901b60f8161c191681555b5050505050600190811b0190555056fea2646970667358221220738d987c5f0b64263a69956f6b9b4e7b44dc7409dffa679f123660d7c85d924a64736f6c63430008110033
Constructor Arguments (ABI-Encoded and is the last bytes of the Contract Creation Code above)
0000000000000000000000000a252663dbcc0b073063d6420a40319e438cfa59
-----Decoded View---------------
Arg [0] : _nftContractAddress (address): 0x0a252663DBCc0b073063D6420a40319e438Cfa59
-----Encoded View---------------
1 Constructor Arguments found :
Arg [0] : 0000000000000000000000000a252663dbcc0b073063d6420a40319e438cfa59
Loading...
Loading
Loading...
Loading
Multichain Portfolio | 26 Chains
Chain | Token | Portfolio % | Price | Amount | Value |
---|---|---|---|---|---|
ETH | Ether (ETH) | 100.00% | $3,303.79 | 2.3613 | $7,801.14 |
Loading...
Loading
[ Download: CSV Export ]
[ Download: CSV Export ]
A contract address hosts a smart contract, which is a set of code stored on the blockchain that runs when predetermined conditions are met. Learn more about addresses in our Knowledge Base.