Source Code
Overview
ETH Balance
0.0003 ETH
Token Holdings
More Info
ContractCreator
Multichain Info
N/A
Latest 8 from a total of 8 transactions
Transaction Hash |
Method
|
Block
|
From
|
To
|
|||||
---|---|---|---|---|---|---|---|---|---|
Buy Battle Pass | 5639877 | 6 days ago | IN | 0.0001 ETH | 0.00000221 | ||||
Buy Battle Pass | 5639858 | 6 days ago | IN | 0.0001 ETH | 0.00000219 | ||||
Click | 5639816 | 6 days ago | IN | 0 ETH | 0.00000221 | ||||
Buy Battle Pass | 5639773 | 6 days ago | IN | 0.0001 ETH | 0.00000316 | ||||
Set Battle Pass ... | 5639743 | 6 days ago | IN | 0 ETH | 0.00000289 | ||||
Set Battle Pass ... | 5639572 | 6 days ago | IN | 0 ETH | 0.00000207 | ||||
Click | 5639282 | 6 days ago | IN | 0 ETH | 0.00000216 | ||||
Registration | 5639274 | 6 days ago | IN | 0 ETH | 0.00000399 |
Latest 25 internal transactions (View All)
Parent Transaction Hash | Block | From | To | |||
---|---|---|---|---|---|---|
5639877 | 6 days ago | 0 ETH | ||||
5639877 | 6 days ago | 0 ETH | ||||
5639877 | 6 days ago | 0.0001 ETH | ||||
5639858 | 6 days ago | 0 ETH | ||||
5639858 | 6 days ago | 0 ETH | ||||
5639858 | 6 days ago | 0.0001 ETH | ||||
5639816 | 6 days ago | 0 ETH | ||||
5639816 | 6 days ago | 0 ETH | ||||
5639816 | 6 days ago | 0 ETH | ||||
5639816 | 6 days ago | 0 ETH | ||||
5639816 | 6 days ago | 0 ETH | ||||
5639816 | 6 days ago | 0 ETH | ||||
5639773 | 6 days ago | 0 ETH | ||||
5639773 | 6 days ago | 0 ETH | ||||
5639773 | 6 days ago | 0.0001 ETH | ||||
5639743 | 6 days ago | 0 ETH | ||||
5639743 | 6 days ago | 0 ETH | ||||
5639572 | 6 days ago | 0 ETH | ||||
5639572 | 6 days ago | 0 ETH | ||||
5639282 | 6 days ago | 0 ETH | ||||
5639282 | 6 days ago | 0 ETH | ||||
5639282 | 6 days ago | 0 ETH | ||||
5639282 | 6 days ago | 0 ETH | ||||
5639282 | 6 days ago | 0 ETH | ||||
5639282 | 6 days ago | 0 ETH |
Loading...
Loading
This contract may be a proxy contract. Click on More Options and select Is this a proxy? to confirm and enable the "Read as Proxy" & "Write as Proxy" tabs.
Contract Source Code Verified (Exact Match)
Contract Name:
AbstractPizza
Compiler Version
v0.8.24+commit.e11b9ed9
ZkSolc Version
v1.5.7
Optimization Enabled:
Yes with Mode 3
Other Settings:
paris EvmVersion
Contract Source Code (Solidity Standard Json-Input format)
// SPDX-License-Identifier: MIT pragma solidity ^0.8.24; import "@openzeppelin/contracts/access/Ownable.sol"; import "@openzeppelin/contracts/utils/ReentrancyGuard.sol"; contract AbstractPizza is Ownable, ReentrancyGuard { // Constants uint256 private constant CLICK_COOLDOWN = 1 minutes; // 4 hours for mainnet uint256 private constant BASE_POINTS_PER_CLICK = 100; uint256 private constant REFERRAL_LEVEL1_PERCENT = 20; uint256 private constant REFERRAL_LEVEL2_PERCENT = 5; uint256 private constant TOP_USERS_LIMIT = 50; uint256 private constant MAX_BATTLE_PASSES = 3; uint256 private constant BATTLE_PASS_BONUS_PERCENT = 20; // Структура для хранения данных пользователя struct UserData { uint40 lastClickTime; uint32 points; uint32 totalReferralPoints; uint16 referralCount; uint8 battlePassCount; bool isRegistered; } // Структура для хранения реферальных наград struct ReferralRewards { uint32 pendingPoints; bool hasRewards; } // Структура для хранения очков пользователя при сортировке struct UserScore { address userAddress; uint256 points; } // State variables uint256 public battlePassPrice; mapping(address => UserData) private userData; mapping(address => address) private referralLevel1; mapping(address => address) private referralLevel2; mapping(address => ReferralRewards) private referralRewards; address[] private registeredUsersList; // Events event UserRegistered(address indexed user, address indexed referrer1, address indexed referrer2); event BattlePassPurchased(address indexed user, uint8 battlePassCount); event BattlePassPriceChanged(uint256 newPrice); event FundsWithdrawn(address indexed owner, uint256 amount); event PointsEarned(address indexed user, uint256 amount); event ReferralPointsEarned(address indexed referral, address indexed user, uint256 amount, uint256 level); event ReferralRewardsClaimed(address indexed user, uint256 amount); // Constructor constructor(uint256 initialPrice) Ownable(msg.sender) { battlePassPrice = initialPrice; } // Registration function with optional level 1 referral function registration(address referrer1) external { require(!userData[msg.sender].isRegistered, "User already registered"); if (referrer1 != address(0)) { require(referrer1 != msg.sender, "Cannot refer yourself"); require(userData[referrer1].isRegistered, "Referrer not registered"); referralLevel1[msg.sender] = referrer1; userData[referrer1].referralCount++; address potentialReferrer2 = referralLevel1[referrer1]; if (potentialReferrer2 != address(0) && potentialReferrer2 != msg.sender) { referralLevel2[msg.sender] = potentialReferrer2; userData[potentialReferrer2].referralCount++; } } userData[msg.sender].isRegistered = true; registeredUsersList.push(msg.sender); emit UserRegistered(msg.sender, referrer1, referralLevel2[msg.sender]); } // Calculate points multiplier based on battle pass count function getPointsMultiplier(uint8 battlePassCount) internal pure returns (uint256) { return 100 + (battlePassCount * BATTLE_PASS_BONUS_PERCENT); } // Click function to earn points function click() external { UserData storage user = userData[msg.sender]; require(user.isRegistered, "User not registered"); require(block.timestamp >= user.lastClickTime + CLICK_COOLDOWN, "Cooldown period not finished"); // Calculate base points with battle pass multiplier uint256 pointsToAdd = (BASE_POINTS_PER_CLICK * getPointsMultiplier(user.battlePassCount)) / 100; // Update user points and time user.points += uint32(pointsToAdd); user.lastClickTime = uint40(block.timestamp); emit PointsEarned(msg.sender, pointsToAdd); // Add referral rewards to pending address ref1 = referralLevel1[msg.sender]; if (ref1 != address(0)) { uint256 ref1Points = (pointsToAdd * REFERRAL_LEVEL1_PERCENT) / 100; referralRewards[ref1].pendingPoints += uint32(ref1Points); referralRewards[ref1].hasRewards = true; emit ReferralPointsEarned(ref1, msg.sender, ref1Points, 1); } address ref2 = referralLevel2[msg.sender]; if (ref2 != address(0)) { uint256 ref2Points = (pointsToAdd * REFERRAL_LEVEL2_PERCENT) / 100; referralRewards[ref2].pendingPoints += uint32(ref2Points); referralRewards[ref2].hasRewards = true; emit ReferralPointsEarned(ref2, msg.sender, ref2Points, 2); } } // Claim referral rewards function claimReferralRewards() external { ReferralRewards storage rewards = referralRewards[msg.sender]; require(rewards.hasRewards, "No rewards to claim"); require(rewards.pendingPoints > 0, "No points to claim"); uint256 pointsToClaim = rewards.pendingPoints; rewards.pendingPoints = 0; rewards.hasRewards = false; UserData storage user = userData[msg.sender]; user.points += uint32(pointsToClaim); user.totalReferralPoints += uint32(pointsToClaim); emit ReferralRewardsClaimed(msg.sender, pointsToClaim); } // Get next click timestamp function canClick(address user) public view returns (uint256) { UserData memory userInfo = userData[user]; if (!userInfo.isRegistered) return 0; uint256 nextClickTime = uint256(userInfo.lastClickTime) + CLICK_COOLDOWN; return nextClickTime > block.timestamp ? nextClickTime : 0; } // Get user stats function getUserStats(address user) external view returns ( uint256 points, uint256 referrals, uint8 battlePassCount, bool isRegistered, uint256 pendingReferralRewards, uint256 totalReferralPoints ) { UserData memory userInfo = userData[user]; return ( userInfo.points, userInfo.referralCount, userInfo.battlePassCount, userInfo.isRegistered, referralRewards[user].pendingPoints, userInfo.totalReferralPoints ); } // Get top 50 users by points function getAllUsersStats() external view returns ( address[] memory users, uint256[] memory points, uint256[] memory referralsCount ) { uint256 totalUsers = registeredUsersList.length; uint256 limit = totalUsers < TOP_USERS_LIMIT ? totalUsers : TOP_USERS_LIMIT; UserScore[] memory scores = new UserScore[](totalUsers); for (uint256 i = 0; i < totalUsers; i++) { address userAddress = registeredUsersList[i]; scores[i] = UserScore(userAddress, userData[userAddress].points); } for (uint256 i = 0; i < limit; i++) { for (uint256 j = i + 1; j < totalUsers; j++) { if (scores[j].points > scores[i].points) { UserScore memory temp = scores[i]; scores[i] = scores[j]; scores[j] = temp; } } } users = new address[](limit); points = new uint256[](limit); referralsCount = new uint256[](limit); for (uint256 i = 0; i < limit; i++) { users[i] = scores[i].userAddress; points[i] = scores[i].points; referralsCount[i] = userData[scores[i].userAddress].referralCount; } return (users, points, referralsCount); } // Get user referrals function getUserReferrals(address user) external view returns ( address referrer1, address referrer2 ) { return (referralLevel1[user], referralLevel2[user]); } // Check registration status function checkRegistration(address user) external view returns (bool) { return userData[user].isRegistered; } // Buy battlepass function function buyBattlePass() external payable nonReentrant { UserData storage user = userData[msg.sender]; require(user.isRegistered, "User not registered"); require(user.battlePassCount < MAX_BATTLE_PASSES, "Max battle passes reached"); require(msg.value == battlePassPrice, "Incorrect payment amount"); user.battlePassCount++; emit BattlePassPurchased(msg.sender, user.battlePassCount); } // Check battlepass count function checkBattlePass(address user) external view returns (uint8) { return userData[user].battlePassCount; } // Admin function to change battlepass price function setBattlePassPrice(uint256 newPrice) external onlyOwner { battlePassPrice = newPrice; emit BattlePassPriceChanged(newPrice); } // Admin function to withdraw funds function withdrawFunds() external onlyOwner nonReentrant { uint256 balance = address(this).balance; require(balance > 0, "No funds to withdraw"); (bool success, ) = owner().call{value: balance}(""); require(success, "Transfer failed"); emit FundsWithdrawn(owner(), balance); } }
// 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.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; } }
// 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; } }
{ "evmVersion": "paris", "optimizer": { "enabled": true, "mode": "3" }, "outputSelection": { "*": { "*": [ "abi", "metadata" ], "": [ "ast" ] } }, "detectMissingLibraries": false, "forceEVMLA": false, "enableEraVMExtensions": false, "libraries": {} }
[{"inputs":[{"internalType":"uint256","name":"initialPrice","type":"uint256"}],"stateMutability":"nonpayable","type":"constructor"},{"inputs":[{"internalType":"address","name":"owner","type":"address"}],"name":"OwnableInvalidOwner","type":"error"},{"inputs":[{"internalType":"address","name":"account","type":"address"}],"name":"OwnableUnauthorizedAccount","type":"error"},{"inputs":[],"name":"ReentrancyGuardReentrantCall","type":"error"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"uint256","name":"newPrice","type":"uint256"}],"name":"BattlePassPriceChanged","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"user","type":"address"},{"indexed":false,"internalType":"uint8","name":"battlePassCount","type":"uint8"}],"name":"BattlePassPurchased","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"owner","type":"address"},{"indexed":false,"internalType":"uint256","name":"amount","type":"uint256"}],"name":"FundsWithdrawn","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":true,"internalType":"address","name":"user","type":"address"},{"indexed":false,"internalType":"uint256","name":"amount","type":"uint256"}],"name":"PointsEarned","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"referral","type":"address"},{"indexed":true,"internalType":"address","name":"user","type":"address"},{"indexed":false,"internalType":"uint256","name":"amount","type":"uint256"},{"indexed":false,"internalType":"uint256","name":"level","type":"uint256"}],"name":"ReferralPointsEarned","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"user","type":"address"},{"indexed":false,"internalType":"uint256","name":"amount","type":"uint256"}],"name":"ReferralRewardsClaimed","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"user","type":"address"},{"indexed":true,"internalType":"address","name":"referrer1","type":"address"},{"indexed":true,"internalType":"address","name":"referrer2","type":"address"}],"name":"UserRegistered","type":"event"},{"inputs":[],"name":"battlePassPrice","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"buyBattlePass","outputs":[],"stateMutability":"payable","type":"function"},{"inputs":[{"internalType":"address","name":"user","type":"address"}],"name":"canClick","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"user","type":"address"}],"name":"checkBattlePass","outputs":[{"internalType":"uint8","name":"","type":"uint8"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"user","type":"address"}],"name":"checkRegistration","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"claimReferralRewards","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"click","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"getAllUsersStats","outputs":[{"internalType":"address[]","name":"users","type":"address[]"},{"internalType":"uint256[]","name":"points","type":"uint256[]"},{"internalType":"uint256[]","name":"referralsCount","type":"uint256[]"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"user","type":"address"}],"name":"getUserReferrals","outputs":[{"internalType":"address","name":"referrer1","type":"address"},{"internalType":"address","name":"referrer2","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"user","type":"address"}],"name":"getUserStats","outputs":[{"internalType":"uint256","name":"points","type":"uint256"},{"internalType":"uint256","name":"referrals","type":"uint256"},{"internalType":"uint8","name":"battlePassCount","type":"uint8"},{"internalType":"bool","name":"isRegistered","type":"bool"},{"internalType":"uint256","name":"pendingReferralRewards","type":"uint256"},{"internalType":"uint256","name":"totalReferralPoints","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"owner","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"referrer1","type":"address"}],"name":"registration","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"renounceOwnership","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"uint256","name":"newPrice","type":"uint256"}],"name":"setBattlePassPrice","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"newOwner","type":"address"}],"name":"transferOwnership","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"withdrawFunds","outputs":[],"stateMutability":"nonpayable","type":"function"}]
Contract Creation Code
9c4d535b000000000000000000000000000000000000000000000000000000000000000001000201f92642934a68953576469fee070f50140bdc865250eadcca0d8778c400000000000000000000000000000000000000000000000000000000000000600000000000000000000000000000000000000000000000000000000000000020000000000000000000000000000000000000000000000000002386f26fc10000
Deployed Bytecode
0x0004000000000002000900000000000200000060041002700000019e03400197000300000031035500020000000103550000019e0040019d0000000100200190000000700000c13d0000008002000039000000400020043f000000040030008c0000063e0000413d000000000201043b000000e002200270000001a80020009c0000009d0000213d000001b40020009c000000d30000213d000001ba0020009c000001de0000213d000001bd0020009c000002740000613d000001be0020009c0000063e0000c13d000000240030008c0000063e0000413d0000000002000416000000000002004b0000063e0000c13d0000000401100370000000000101043b000900000001001d000001a20010009c0000063e0000213d0000000001000411000000000010043f0000000301000039000000200010043f00000000010004140000019e0010009c0000019e01008041000000c001100210000001c8011001c70000801002000039067506700000040f00000001002001900000063e0000613d000000000101043b000000000101041a000001c1001001980000035a0000c13d0000000901000029000001a202100198000004060000c13d000900000002001d0000000001000411000000000010043f0000000301000039000000200010043f00000000010004140000019e0010009c0000019e01008041000000c001100210000001c8011001c70000801002000039067506700000040f00000001002001900000063e0000613d000000000101043b000000000201041a000001f202200197000001f3022001c7000000000021041b0000000702000039000000000102041a000001c30010009c000003710000213d0000000103100039000000000032041b000001c70110009a000000000201041a000001a1022001970000000003000411000000000232019f000000000021041b000000000030043f0000000501000039000000200010043f00000000010004140000019e0010009c0000019e01008041000000c001100210000001c8011001c70000801002000039067506700000040f00000001002001900000063e0000613d000000000101043b000000000101041a00000000020004140000019e0020009c0000019e02008041000000c002200210000001a207100197000001a3012001c70000800d020000390000000403000039000001f40400004100000000050004110000000906000029000003820000013d0000000002000416000000000002004b0000063e0000c13d0000001f023000390000019f022001970000008002200039000000400020043f0000001f0430018f000001a0053001980000008002500039000000810000613d0000008006000039000000000701034f000000007807043c0000000006860436000000000026004b0000007d0000c13d000000000004004b0000008e0000613d000000000151034f0000000304400210000000000502043300000000054501cf000000000545022f000000000101043b0000010004400089000000000141022f00000000014101cf000000000151019f0000000000120435000000200030008c0000063e0000413d0000000006000411000000000006004b000001270000c13d000000400100043d000001a6020000410000000000210435000000040210003900000000000204350000019e0010009c0000019e010080410000004001100210000001a7011001c70000067700010430000001a90020009c000001430000213d000001af0020009c0000022f0000213d000001b20020009c000002920000613d000001b30020009c0000063e0000c13d0000000001000416000000000001004b0000063e0000c13d0000000001000411000000000010043f0000000301000039000000200010043f00000000010004140000019e0010009c0000019e01008041000000c001100210000001c8011001c70000801002000039067506700000040f00000001002001900000063e0000613d000000000101043b000000000201041a000001c1002001980000032f0000613d000900000002001d000800000001001d000001d601000041000000000010044300000000010004140000019e0010009c0000019e01008041000000c001100210000001d7011001c70000800b02000039067506700000040f0000000100200190000003450000613d000000000101043b0000000903000029000001d8023001970000003c02200039000000000021004b000004100000813d000000400100043d0000004402100039000001e003000041000000000032043500000024021000390000001c03000039000005090000013d000001b50020009c0000023b0000213d000001b80020009c000002a60000613d000001b90020009c0000063e0000c13d000000240030008c0000063e0000413d0000000002000416000000000002004b0000063e0000c13d0000000401100370000000000201043b000001a20020009c0000063e0000213d000800000002001d000000000020043f0000000301000039000000200010043f00000000010000190675065a0000040f000900000001001d0675064d0000040f0000000902000029000000000202041a000001d803200197000000000331043600000028042002700000019e04400197000900000004001d000000000043043500000048032002700000019e033001970000004004100039000700000004001d000000000034043500000068032002700000ffff0430018f000600000004001d000000600310003900000000004304350000007803200270000000ff0430018f000500000004001d00000080031000390000000000430435000000a001100039000001c1002001980000000002000039000000010200c039000400000002001d00000000002104350000000801000029000000000010043f0000000601000039000000200010043f00000000010000190675065a0000040f000000000101041a00000007020000290000000002020433000000400300043d0000002004300039000000060500002900000000005404350000004004300039000000050500002900000000005404350000006004300039000000040500002900000000005404350000019e02200197000000a00430003900000000002404350000019e0110019700000080023000390000000000120435000000090100002900000000001304350000019e0030009c0000019e030080410000004001300210000001e3011001c7000006760001042e000000800100043d000900000001001d000000000100041a000001a102100197000000000262019f000000000020041b0000000002000414000001a2051001970000019e0020009c0000019e02008041000000c001200210000001a3011001c70000800d020000390000000303000039000001a4040000410675066b0000040f00000001002001900000063e0000613d0000000101000039000000000011041b00000002010000390000000902000029000000000021041b000000200100003900000100001004430000012000000443000001a501000041000006760001042e000001aa0020009c0000025b0000213d000001ad0020009c000002cb0000613d000001ae0020009c0000063e0000c13d0000000001000416000000000001004b0000063e0000c13d0000000701000039000000000b01041a0000003200b0008c000000320100003900000000010b4019000600000001001d000001c300b0009c000003710000213d0000000502b002100000003f01200039000001c404100197000001c50040009c000003710000213d0000008003400039000000400030043f0000008000b0043f00000000000b004b0000000001000019000003610000c13d000000060000006b000003d90000c13d000000060100002900000005011002100000003f0210003900000fe00420018f000000400300043d0000000002430019000700000003001d000000000032004b00000000030000390000000103004039000001c30020009c000003710000213d0000000100300190000003710000c13d000000400020043f0000000602000029000000070300002900000000092304360000001f0210018f00000000030000310000000203300367000000000001004b0000017f0000613d0000000005190019000000000603034f0000000007090019000000006806043c0000000007870436000000000057004b0000017b0000c13d000000000002004b000000400600043d0000000005460019000500000006001d000000000065004b00000000060000390000000106004039000001c30050009c000003710000213d0000000100600190000003710000c13d000000400050043f000000060500002900000005060000290000000005560436000300000005001d000000000001004b000001980000613d00000003070000290000000005170019000000000603034f000000006806043c0000000007870436000000000057004b000001940000c13d000000000002004b000000400500043d0000000004450019000400000005001d000000000054004b00000000050000390000000105004039000001c30040009c000003710000213d0000000100500190000003710000c13d000200000009001d000000400040043f000000060400002900000004050000290000000004450436000100000004001d000000000001004b000001b10000613d00000001040000290000000001140019000000003503043c0000000004540436000000000014004b000001ad0000c13d000000000002004b000000060000006b0000000203000029000005bd0000c13d000000400400043d00000060010000390000000001140436000000070200002900000000030204330000006002400039000000000032043500000000070400190000008002400039000000000003004b000001c80000613d000000000400001900000002060000290000000065060434000001a20550019700000000025204360000000104400039000000000034004b000001c20000413d000900000007001d000000000372004900000000003104350000000501000029067506400000040f000000000201001900000009030000290000000001310049000000400330003900000000001304350000000401000029067506400000040f000000090200002900000000012100490000019e0020009c0000019e0200804100000040022002100000019e0010009c0000019e010080410000006001100210000000000121019f000006760001042e000001bb0020009c000002d30000613d000001bc0020009c0000063e0000c13d000000240030008c0000063e0000413d0000000002000416000000000002004b0000063e0000c13d0000000401100370000000000101043b000001a20010009c0000063e0000213d000000000010043f0000000301000039000000200010043f00000000010004140000019e0010009c0000019e01008041000000c001100210000001c8011001c70000801002000039067506700000040f00000001002001900000063e0000613d000000400200043d000001c60020009c000003710000213d000000000101043b000000c003200039000000400030043f000000000101041a000000a003200039000001c1001001980000000004000039000000010400c03900000000004304350000007803100270000000ff0330018f0000008004200039000000000034043500000068031002700000ffff0330018f0000006004200039000000000034043500000048031002700000019e033001970000004004200039000000000034043500000028031002700000019e0330019700000020042000390000000000340435000001d80310019700000000003204350000000001000019000002280000613d000900000003001d000001d601000041000000000010044300000000010004140000019e0010009c0000019e01008041000000c001100210000001d7011001c70000800b02000039067506700000040f0000000100200190000003450000613d000000000201043b00000009010000290000003c01100039000000000021004b000000000100a019000000400200043d00000000001204350000019e0020009c0000019e020080410000004001200210000001eb011001c7000006760001042e000001b00020009c000002e70000613d000001b10020009c0000063e0000c13d0000000001000416000000000001004b0000063e0000c13d000000000100041a000001a201100197000000800010043f000001c201000041000006760001042e000001b60020009c000002ff0000613d000001b70020009c0000063e0000c13d000000240030008c0000063e0000413d0000000002000416000000000002004b0000063e0000c13d0000000401100370000000000101043b000001a20010009c0000063e0000213d000000000010043f0000000401000039000000200010043f00000000010000190675065a0000040f000000000101041a000900000001001d0000000501000039000000200010043f00000000010000190675065a0000040f000000000101041a0000000902000029000001a202200197000000800020043f000001a201100197000000a00010043f000001e201000041000006760001042e000001ab0020009c000003070000613d000001ac0020009c0000063e0000c13d000000240030008c0000063e0000413d0000000002000416000000000002004b0000063e0000c13d0000000401100370000000000101043b000001a20010009c0000063e0000213d000000000200041a000001a2032001970000000005000411000000000053004b000003360000c13d000001a206100198000003770000c13d000001a601000041000000800010043f000000840000043f000001c00100004100000677000104300000000001000416000000000001004b0000063e0000c13d0000000001000411000000000010043f0000000601000039000000200010043f00000000010004140000019e0010009c0000019e01008041000000c001100210000001c8011001c70000801002000039067506700000040f00000001002001900000063e0000613d000000000101043b000000000201041a000001f500200198000003460000c13d000001cc01000041000000800010043f0000002001000039000000840010043f0000001301000039000000a40010043f000001fc01000041000000c40010043f000001fd0100004100000677000104300000000001000416000000000001004b0000063e0000c13d000000000100041a000001a2021001970000000005000411000000000052004b000003360000c13d000001a101100197000000000010041b00000000010004140000019e0010009c0000019e01008041000000c001100210000001a3011001c70000800d020000390000000303000039000001a4040000410000000006000019000003820000013d0000000001000416000000000001004b0000063e0000c13d000000000100041a000001a2021001970000000001000411000000000012004b0000033b0000c13d0000000102000039000000000102041a000000020010008c000002cf0000613d0000000201000039000000000012041b000001e40100004100000000001004430000000001000410000000040010044300000000010004140000019e0010009c0000019e01008041000000c001100210000001e5011001c70000800a02000039067506700000040f0000000100200190000003450000613d000000000301043b000000000003004b0000041f0000c13d000000400100043d0000004402100039000001e803000041000000000032043500000024021000390000001403000039000005090000013d0000000101000039000000000201041a000000020020008c0000031c0000c13d000001e901000041000000800010043f000001ea010000410000067700010430000000240030008c0000063e0000413d0000000002000416000000000002004b0000063e0000c13d0000000401100370000000000101043b000001a20010009c0000063e0000213d000000000010043f0000000301000039000000200010043f00000000010000190675065a0000040f000000000101041a0000007801100270000000ff0110018f000000800010043f000001c201000041000006760001042e000000240030008c0000063e0000413d0000000002000416000000000002004b0000063e0000c13d000000000200041a000001a2032001970000000002000411000000000023004b000003400000c13d0000000401100370000000000101043b0000000202000039000000000012041b000000800010043f00000000010004140000019e0010009c0000019e01008041000000c001100210000001d4011001c70000800d020000390000000103000039000001d504000041000003820000013d0000000001000416000000000001004b0000063e0000c13d0000000201000039000000000101041a000000800010043f000001c201000041000006760001042e000000240030008c0000063e0000413d0000000002000416000000000002004b0000063e0000c13d0000000401100370000000000101043b000001a20010009c0000063e0000213d000000000010043f0000000301000039000000200010043f00000000010000190675065a0000040f000000000101041a000001c1001001980000000001000039000000010100c039000000800010043f000001c201000041000006760001042e0000000202000039000000000021041b0000000001000411000000000010043f0000000301000039000000200010043f00000000010004140000019e0010009c0000019e01008041000000c001100210000001c8011001c70000801002000039067506700000040f00000001002001900000063e0000613d000000000201043b000000000302041a000001c1003001980000034f0000c13d000000400100043d0000004402100039000001e103000041000000000032043500000024021000390000001303000039000005090000013d000001bf01000041000000800010043f000000840050043f000001c0010000410000067700010430000001bf02000041000000800020043f000000840010043f000001c0010000410000067700010430000001bf01000041000000800010043f000000840020043f000001c0010000410000067700010430000000000001042f0000019e03200198000003870000c13d000000400100043d0000004402100039000001fb03000041000000000032043500000024021000390000001203000039000005090000013d000000400100043d0000007804300270000000ff0440018f000000030040008c000003be0000413d0000004402100039000001d303000041000000000032043500000024021000390000001903000039000005090000013d000000400100043d0000004402100039000001ec03000041000000000032043500000024021000390000001703000039000005090000013d000001c60040009c000003710000213d00000000010000190000004004300039000000400040043f000000200430003900000000000404350000000000030435000000a00410003900000000003404350000002001100039000000000021004b0000042d0000813d000000400300043d000001c90030009c000003640000a13d000001ca01000041000000000010043f0000004101000039000000040010043f000001a7010000410000067700010430000001a101200197000000000161019f000000000010041b00000000010004140000019e0010009c0000019e01008041000000c001100210000001a3011001c70000800d020000390000000303000039000001a4040000410675066b0000040f00000001002001900000063e0000613d0000000001000019000006760001042e000900000003001d000001f602200197000000000021041b0000000001000411000000000010043f0000000301000039000000200010043f00000000010004140000019e0010009c0000019e01008041000000c001100210000001c8011001c70000801002000039067506700000040f00000001002001900000063e0000613d000000000101043b000000000201041a00000028032002700000019e0330019700000009050000290000000003530019000001de0030009c000004190000813d0000002803300210000001d903300197000001f704200197000000000343019f000000000031041b00000048022002700000019e0220019700000000025200190000019e0020009c000004190000213d000001f8033001970000004802200210000001f902200197000000000223019f000000000021041b000000400100043d00000000005104350000019e0010009c0000019e01008041000000400110021000000000020004140000019e0020009c0000019e02008041000000c002200210000000000112019f000001d1011001c70000800d020000390000000203000039000001fa040000410000000005000411000003820000013d0000000205000039000000000505041a0000000006000416000000000056004b000004270000c13d000001ce033001970000007804400210000001cf0440009a000001d005400197000000000335019f000000000032041b000000780240027000000000002104350000019e0010009c0000019e01008041000000400110021000000000020004140000019e0020009c0000019e02008041000000c002200210000000000112019f000001d1011001c70000800d020000390000000203000039000001d20400004100000000050004110000054a0000013d0000000002000019000003dd0000013d000000060020006c000001610000813d000000000302001900000001022000390000000000b2004b000003db0000813d0000000504300210000000a0044000390000000005020019000003e80000013d00000001055000390000000000b5004b000003db0000813d000000000051004b000004000000a13d000000000031004b000004000000a13d0000000506500210000000a0066000390000000008060433000000200780003900000000090704330000000007040433000000200a700039000000000a0a04330000000000a9004b000003e50000a13d0000000000840435000000800100043d000000000031004b000004000000a13d000000000051004b000004000000a13d0000000000760435000000800100043d000000000051004b000003e50000213d000001ca01000041000000000010043f0000003201000039000000040010043f000001a70100004100000677000104300000000001000411000000000012004b0000045f0000c13d000000400100043d0000004402100039000001f103000041000000000032043500000024021000390000001503000039000005090000013d00000028023002700000019e022001970000007803300270000000ff0330018f00000014033000c9000000640330003900000000022300190000019e0020009c000004740000a13d000001ca01000041000000000010043f0000001101000039000000040010043f000001a7010000410000067700010430000000000200041a0000000001000414000001a204200197000000040040008c000004f10000c13d00000001010000310000000108000039000004ff0000013d0000004402100039000001cb03000041000000000032043500000024021000390000001803000039000005090000013d000000000300001900070000000b001d0000000701000039000000000101041a000000000031004b000004000000a13d000900000003001d000001c70130009a000000000101041a000001a201100197000800000001001d000000000010043f0000000301000039000000200010043f00000000010004140000019e0010009c0000019e01008041000000c001100210000001c8011001c70000801002000039067506700000040f00000001002001900000063e0000613d000000400200043d000001c90020009c000000070b000029000003710000213d000000000101043b000000000101041a0000004003200039000000400030043f0000000803000029000000000332043600000028011002700000019e011001970000000000130435000000800100043d0000000903000029000000000031004b000004000000a13d0000000501300210000000a0011000390000000000210435000000800100043d000000000031004b000004000000a13d00000001033000390000000000b3004b0000042f0000413d0000015f0000013d000900000002001d000000000020043f0000000301000039000000200010043f00000000010004140000019e0010009c0000019e01008041000000c001100210000001c8011001c70000801002000039067506700000040f00000001002001900000063e0000613d000000000101043b000000000101041a000001c100100198000005510000c13d000000400100043d0000004402100039000001f0030000410000035d0000013d000001d8011001970000002802200210000001d902200197000000000121019f0000000804000029000000000204041a000001da02200197000000000121019f000000000014041b000000400100043d000900000003001d00000000003104350000019e0010009c0000019e01008041000000400110021000000000020004140000019e0020009c0000019e02008041000000c002200210000000000112019f000001d1011001c70000800d020000390000000203000039000001db0400004100000000050004110675066b0000040f00000001002001900000063e0000613d0000000001000411000000000010043f0000000401000039000000200010043f00000000010004140000019e0010009c0000019e01008041000000c001100210000001c8011001c70000801002000039067506700000040f00000001002001900000063e0000613d000000000101043b000000000101041a000801a20010019c000005fd0000c13d0000000001000411000000000010043f0000000501000039000000200010043f00000000010004140000019e0010009c0000019e01008041000000c001100210000001c8011001c70000801002000039067506700000040f00000001002001900000063e0000613d000000000101043b000000000101041a000801a20010019c000003850000613d0000000801000029000000000010043f0000000601000039000000200010043f00000000010004140000019e0010009c0000019e01008041000000c001100210000001c8011001c70000801002000039067506700000040f00000001002001900000063e0000613d00000009020000290009001400200122000000000101043b000000000201041a0000019e0320019700000009033000290000019e0030009c000004190000213d000001dc02200197000000000223019f000000000021041b0000000801000029000000000010043f0000000601000039000000200010043f00000000010004140000019e0010009c0000019e01008041000000c001100210000001c8011001c70000801002000039067506700000040f00000001002001900000063e0000613d000000000101043b000000000201041a000001dd02200197000001de022001c7000000000021041b000000400100043d000000200210003900000002030000390000000000320435000000090200002900000000002104350000019e0010009c0000019e01008041000000400110021000000000020004140000019e0020009c0000019e02008041000000c002200210000000000112019f000001c8011001c70000800d020000390000000303000039000001df0400004100000008050000290000000006000411000003820000013d0000019e0010009c0000019e01008041000000c001100210000001a3011001c700008009020000390000000005000019000900000003001d0675066b0000040f0000000903000029000000010820018f000300000001035500000060011002700001019e0010019d0000019e01100197000000000001004b000005140000c13d000000400100043d000000000008004b0000053b0000c13d0000004402100039000001e703000041000000000032043500000024021000390000000f030000390000000000320435000001cc0200004100000000002104350000000402100039000000200300003900000000003204350000019e0010009c0000019e010080410000004001100210000001cd011001c700000677000104300000001f04100039000001fe044001970000003f04400039000001fe04400197000000400600043d0000000004460019000000000064004b00000000050000390000000105004039000001c30040009c000003710000213d0000000100500190000003710000c13d000000400040043f0000000005160436000001fe021001980000001f0910018f000000000125001900000003040003670000052d0000613d000000000604034f000000006706043c0000000005750436000000000015004b000005290000c13d000000000009004b000005010000613d000000000224034f0000000305900210000000000401043300000000045401cf000000000454022f000000000202043b0000010005500089000000000252022f00000000025201cf000000000242019f0000000000210435000005010000013d000000000200041a00000000003104350000019e0010009c0000019e01008041000000400110021000000000030004140000019e0030009c0000019e03008041000000c003300210000000000113019f000001d1011001c7000001a2052001970000800d020000390000000203000039000001e6040000410675066b0000040f00000001002001900000063e0000613d0000000101000039000000000011041b0000000001000019000006760001042e0000000001000411000000000010043f0000000401000039000000200010043f00000000010004140000019e0010009c0000019e01008041000000c001100210000001c8011001c70000801002000039067506700000040f00000001002001900000063e0000613d000000000101043b000000000201041a000001a1022001970000000903000029000000000232019f000000000021041b000000000030043f0000000301000039000000200010043f00000000010004140000019e0010009c0000019e01008041000000c001100210000001c8011001c70000801002000039067506700000040f00000001002001900000063e0000613d000000000101043b000000000201041a00000068032002700000ffff0330018f0000ffff0030008c000004190000613d000001ed022001970000006803300210000001ee0330009a000001ef03300197000000000223019f000000000021041b0000000901000029000000000010043f0000000401000039000000200010043f00000000010004140000019e0010009c0000019e01008041000000c001100210000001c8011001c70000801002000039067506700000040f00000001002001900000063e0000613d000000000101043b000000000101041a000801a20010019c0000000902000029000000370000613d0000000001000411000000080010006b000000370000613d000000000010043f0000000501000039000000200010043f00000000010004140000019e0010009c0000019e01008041000000c001100210000001c8011001c70000801002000039067506700000040f00000001002001900000063e0000613d000000000101043b000000000201041a000001a1022001970000000803000029000000000232019f000000000021041b000000000030043f0000000301000039000000200010043f00000000010004140000019e0010009c0000019e01008041000000c001100210000001c8011001c70000801002000039067506700000040f00000001002001900000063e0000613d000000000101043b000000000201041a00000068032002700000ffff0330018f0000ffff0030008c000004190000613d000001ed022001970000006803300210000001ee0330009a000001ef03300197000000000223019f000000000021041b0000000902000029000000370000013d0000000004000019000000800100043d000000000041004b000004000000a13d00000007010000290000000001010433000000000041004b000004000000a13d0000000505400210000000a001500039000000000235001900000000030104330000000003030433000001a2033001970000000000320435000000800200043d000000000042004b000004000000a13d00000005020000290000000002020433000000000042004b000004000000a13d00000003025000290000000003010433000000200330003900000000030304330000000000320435000000800200043d000000000042004b000004000000a13d000800000005001d000900000004001d00000000010104330000000001010433000001a201100197000000000010043f0000000301000039000000200010043f00000000010004140000019e0010009c0000019e01008041000000c001100210000001c8011001c70000801002000039067506700000040f00000001002001900000063e0000613d000000040200002900000000020204330000000904000029000000000042004b00000002030000290000000805000029000004000000a13d0000000102500029000000000101043b000000000101041a00000068011002700000ffff0110018f00000000001204350000000104400039000000060040006c000005be0000413d000001b50000013d0000000801000029000000000010043f0000000601000039000000200010043f00000000010004140000019e0010009c0000019e01008041000000c001100210000001c8011001c70000801002000039067506700000040f00000001002001900000063e0000613d00000009020000290007000500200122000000000101043b000000000201041a0000019e0320019700000007033000290000019e0030009c000004190000213d000001dc02200197000000000223019f000000000021041b0000000801000029000000000010043f0000000601000039000000200010043f00000000010004140000019e0010009c0000019e01008041000000c001100210000001c8011001c70000801002000039067506700000040f00000001002001900000063e0000613d000000000101043b000000000201041a000001dd02200197000001de022001c7000000000021041b0000000101000039000000400200043d00000020032000390000000000130435000000070100002900000000001204350000019e0020009c0000019e02008041000000400120021000000000020004140000019e0020009c0000019e02008041000000c002200210000000000112019f000001c8011001c70000800d020000390000000303000039000001df04000041000000080500002900000000060004110675066b0000040f0000000100200190000004a10000c13d00000000010000190000067700010430000000000301001900000000040104330000000001420436000000000004004b0000064c0000613d00000000020000190000002003300039000000000503043300000000015104360000000102200039000000000042004b000006460000413d000000000001042d000000400100043d000001ff0010009c000006530000813d000000c002100039000000400020043f000000000001042d000001ca01000041000000000010043f0000004101000039000000040010043f000001a7010000410000067700010430000000000001042f00000000020004140000019e0020009c0000019e02008041000000c0022002100000019e0010009c0000019e010080410000004001100210000000000121019f000001c8011001c70000801002000039067506700000040f0000000100200190000006690000613d000000000101043b000000000001042d000000000100001900000677000104300000066e002104210000000102000039000000000001042d0000000002000019000000000001042d00000673002104230000000102000039000000000001042d0000000002000019000000000001042d0000067500000432000006760001042e000006770001043000000000000000000000000000000000000000000000000000000000ffffffff00000000000000000000000000000000000000000000000000000001ffffffe000000000000000000000000000000000000000000000000000000000ffffffe0ffffffffffffffffffffffff0000000000000000000000000000000000000000000000000000000000000000ffffffffffffffffffffffffffffffffffffffff02000000000000000000000000000000000000000000000000000000000000008be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e000000002000000000000000000000000000000400000010000000000000000001e4fbdf700000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000002400000000000000000000000000000000000000000000000000000000000000000000000000000000715018a500000000000000000000000000000000000000000000000000000000a7757f5000000000000000000000000000000000000000000000000000000000e2a4128200000000000000000000000000000000000000000000000000000000e2a4128300000000000000000000000000000000000000000000000000000000f2fde38b00000000000000000000000000000000000000000000000000000000a7757f5100000000000000000000000000000000000000000000000000000000c5dce43c000000000000000000000000000000000000000000000000000000008b1ec71c000000000000000000000000000000000000000000000000000000008b1ec71d000000000000000000000000000000000000000000000000000000008da5cb5b00000000000000000000000000000000000000000000000000000000715018a6000000000000000000000000000000000000000000000000000000007d55923d0000000000000000000000000000000000000000000000000000000024600fc2000000000000000000000000000000000000000000000000000000005397da86000000000000000000000000000000000000000000000000000000005397da8700000000000000000000000000000000000000000000000000000000575cea6b0000000000000000000000000000000000000000000000000000000024600fc3000000000000000000000000000000000000000000000000000000004e43603a000000000000000000000000000000000000000000000000000000001bb123ed000000000000000000000000000000000000000000000000000000001bb123ee0000000000000000000000000000000000000000000000000000000020ee29ce0000000000000000000000000000000000000000000000000000000005eaab4b000000000000000000000000000000000000000000000000000000000840605a118cdaa7000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000024000000800000000000000000000000000000000000000000000000ff000000000000000000000000000000000000000000000000000000000000000000000020000000800000000000000000000000000000000000000000000000000000000000000000ffffffffffffffff7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0000000000000000000000000000000000000000000000000ffffffffffffff7f000000000000000000000000000000000000000000000000ffffffffffffff3f599336d74a1247d50642b66dd6abeaa5484f6bd96b415b31bb99e26578c939780200000000000000000000000000000000000040000000000000000000000000000000000000000000000000000000000000000000000000ffffffffffffffbf4e487b7100000000000000000000000000000000000000000000000000000000496e636f7272656374207061796d656e7420616d6f756e74000000000000000008c379a0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000064000000000000000000000000ffffffffffffffffffffffffffffffff00ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00000000000000000000000000000000000000000000000000000000000000ff00000000000000000000000000000002000000000000000000000000000000000000200000000000000000000000002ca3a869468497ac8aaa58840422f15436165121abdeca2d8a2c0743197651fe4d617820626174746c65207061737365732072656163686564000000000000000200000000000000000000000000000000000020000000800000000000000000f5adce8f4e3279f541bb9ad785c8d0f9f5d6d8dea2b65778d848a8e6d4d72f52796b89b91644bc98cd93958e4c9038275d622183e25ac5af08cc6b5d955391320200000200000000000000000000000000000004000000000000000000000000000000000000000000000000000000000000000000000000000000ffffffffff0000000000000000000000000000000000000000000000ffffffff0000000000ffffffffffffffffffffffffffffffffffffffffffffff0000000000000000002c4c0dc427a50c4a69d2fc184c47a311acf950d8d2f289fbaee64e83e9b28967ffffffffffffffffffffffffffffffffffffffffffffffffffffffff00000000ffffffffffffffffffffffffffffffffffffffffffffffffffffff00ffffffff00000000000000000000000000000000000000000000000000000001000000001324b6d93080a8996651b8def13df586817313170f80fd5d5168292456d9e2c8436f6f6c646f776e20706572696f64206e6f742066696e69736865640000000055736572206e6f74207265676973746572656400000000000000000000000000000000000000000000000000000000000000004000000080000000000000000000000000000000000000000000000000000000c00000000000000000000000009cc7f708afc65944829bd487b90b72536b1951864fbfc14e125fc972a6507f390200000200000000000000000000000000000024000000000000000000000000eaff4b37086828766ad3268786972c0cd24259d4c87a80f9d3963a3c3d999b0d5472616e73666572206661696c656400000000000000000000000000000000004e6f2066756e647320746f2077697468647261770000000000000000000000003ee5aeb500000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000400000080000000000000000000000000000000000000000000000000000000200000000000000000000000005573657220616c72656164792072656769737465726564000000000000000000ffffffffffffffffffffffffffffffffff0000ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff000000000000000000000000000000000000000000000000000000000000ffff000000000000000000000000005265666572726572206e6f74207265676973746572656400000000000000000043616e6e6f7420726566657220796f757273656c660000000000000000000000ffffffffffffffffffffffffffffff00ffffffffffffffffffffffffffffffff00000000000000000000000000000001000000000000000000000000000000000b74774e4141658915edba9d58702af343e4b36c30f6805f93721612f387587b000000000000000000000000000000000000000000000000000000ff00000000ffffffffffffffffffffffffffffffffffffffffffffffffffffff0000000000ffffffffffffffffffffffffffffffffffffffffffffff00000000ffffffffffffffffffffffffffffffffffffffffffffffff00000000ffffffffffffffffff00000000000000000000000000000000000000ffffffff00000000000000000098741ecf35c5d20a8ed68dbd8540500684864a6c98c2a41a5844d0b3a2357d434e6f20706f696e747320746f20636c61696d00000000000000000000000000004e6f207265776172647320746f20636c61696d000000000000000000000000000000000000000000000000000000000000000064000000800000000000000000ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0000000000000000000000000000000000000000000000000ffffffffffffff406cb9d04c77f6af6108cbcf730e97e2e4ace4881423aa5f8e4167e51b58274178
Constructor Arguments (ABI-Encoded and is the last bytes of the Contract Creation Code above)
000000000000000000000000000000000000000000000000002386f26fc10000
-----Decoded View---------------
Arg [0] : initialPrice (uint256): 10000000000000000
-----Encoded View---------------
1 Constructor Arguments found :
Arg [0] : 000000000000000000000000000000000000000000000000002386f26fc10000
Loading...
Loading
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.