Overview
ETH Balance
0.0071 ETH
Eth Value
$15.56 (@ $2,191.94/ETH)More Info
Private Name Tags
ContractCreator
Latest 24 from a total of 24 transactions
Transaction Hash |
Method
|
Block
|
From
|
To
|
|||||
---|---|---|---|---|---|---|---|---|---|
Transfer | 18327896 | 510 days ago | IN | 0 ETH | 0.00054586 | ||||
Transfer | 18153971 | 534 days ago | IN | 0 ETH | 0.00042247 | ||||
Transfer | 18153967 | 534 days ago | IN | 0.01 ETH | 0.00049393 | ||||
Transfer | 18153951 | 534 days ago | IN | 0.026 ETH | 0.00057397 | ||||
Transfer | 18153890 | 534 days ago | IN | 0 ETH | 0.00038293 | ||||
Transfer | 18153886 | 534 days ago | IN | 0 ETH | 0.00042697 | ||||
Transfer | 18153881 | 534 days ago | IN | 0 ETH | 0.00039243 | ||||
Transfer | 18153878 | 534 days ago | IN | 0 ETH | 0.00042788 | ||||
Transfer | 18153826 | 534 days ago | IN | 0 ETH | 0.00045126 | ||||
Transfer | 17855015 | 576 days ago | IN | 0 ETH | 0.00069354 | ||||
Transfer | 17703505 | 597 days ago | IN | 0 ETH | 0.00068135 | ||||
Transfer | 17590240 | 613 days ago | IN | 0 ETH | 0.00112675 | ||||
Transfer | 17583008 | 614 days ago | IN | 0.026 ETH | 0.00150131 | ||||
Transfer | 17582506 | 614 days ago | IN | 0.022 ETH | 0.00174879 | ||||
Transfer | 17581767 | 614 days ago | IN | 0.03 ETH | 0.00226845 | ||||
Transfer | 17580251 | 614 days ago | IN | 0.012 ETH | 0.00206269 | ||||
Transfer | 17577400 | 615 days ago | IN | 1 ETH | 0.00136149 | ||||
Transfer | 17576247 | 615 days ago | IN | 0.69 ETH | 0.00150196 | ||||
Transfer | 17576155 | 615 days ago | IN | 0.69 ETH | 0.00141005 | ||||
Transfer | 17576123 | 615 days ago | IN | 0.69 ETH | 0.00140219 | ||||
Transfer | 17569019 | 616 days ago | IN | 0 ETH | 0.0010722 | ||||
Transfer | 17561799 | 617 days ago | IN | 0.02 ETH | 0.00243862 | ||||
Renounce Ownersh... | 17561785 | 617 days ago | IN | 0 ETH | 0.00035283 | ||||
Start | 17561782 | 617 days ago | IN | 0 ETH | 0.00074518 |
Latest 25 internal transactions (View All)
Advanced mode:
Parent Transaction Hash | Block |
From
|
To
|
|||
---|---|---|---|---|---|---|
18153971 | 534 days ago | 0.0676 ETH | ||||
18153967 | 534 days ago | 0.0005 ETH | ||||
18153967 | 534 days ago | 0.0005 ETH | ||||
18153951 | 534 days ago | 0.0013 ETH | ||||
18153951 | 534 days ago | 0.0013 ETH | ||||
18153890 | 534 days ago | 0.078 ETH | ||||
18153886 | 534 days ago | 0.0572 ETH | ||||
18153881 | 534 days ago | 0.0312 ETH | ||||
18153878 | 534 days ago | 0.05265 ETH | ||||
18153826 | 534 days ago | 1.365 ETH | ||||
17855015 | 576 days ago | 0.6825 ETH | ||||
17703505 | 597 days ago | 0.52 ETH | ||||
17590240 | 613 days ago | 0.0325 ETH | ||||
17583008 | 614 days ago | 0.0013 ETH | ||||
17583008 | 614 days ago | 0.0013 ETH | ||||
17582506 | 614 days ago | 0.0011 ETH | ||||
17582506 | 614 days ago | 0.0011 ETH | ||||
17581767 | 614 days ago | 0.0015 ETH | ||||
17581767 | 614 days ago | 0.0015 ETH | ||||
17580251 | 614 days ago | 0.0006 ETH | ||||
17580251 | 614 days ago | 0.0006 ETH | ||||
17577400 | 615 days ago | 0.05 ETH | ||||
17577400 | 615 days ago | 0.05 ETH | ||||
17576247 | 615 days ago | 0.0345 ETH | ||||
17576247 | 615 days ago | 0.0345 ETH |
Loading...
Loading
Contract Source Code Verified (Exact Match)
Contract Name:
SecretInvest
Compiler Version
v0.8.20+commit.a1b79de6
Optimization Enabled:
No with 200 runs
Other Settings:
default evmVersion
Contract Source Code (Solidity Standard Json-Input format)
// SPDX-License-Identifier: MIT pragma solidity 0.8.20; /** * * ETH CRYPTOCURRENCY DISTRIBUTION PROJECT * * Web - https://secretinvest.club * Twitter - https://twitter.com/secretinvesteth * Telegram_channel - https://t.me/secretinvestchanal * Telegram_chat - https://t.me/secretinvesteth * * - GAIN PER 24 HOURS: * -- Contract balance < 20 Ether: 3,25 % * -- Contract balance >= 20 Ether: 3.50 % * -- Contract balance >= 40 Ether: 3.75 % * -- Contract balance >= 60 Ether: 4.00 % * -- Contract balance >= 80 Ether: 4.25 % * -- Contract balance >= 100 Ether: 4.50 % * - Life-long payments * - The revolutionary reliability * - Minimal contribution 0.01 eth * - Currency and payment - ETH * - Contribution allocation schemes: * -- 90% payments * -- 10% Marketing + Operating Expenses * * ---How to use: * 1. Send from ETH wallet to the smart contract address * any amount from 0.01 ETH. * 2. Verify your transaction in the history of your application or etherscan.io, specifying the address * of your wallet. * 3. Claim your profit by sending 0 ether transaction (every day, every week, i don't care unless you're * spending too much on GAS) * * RECOMMENDED GAS LIMIT: 200000 * RECOMMENDED GAS PRICE: https://ethgasstation.info/ * You can check the payments on the etherscan.io site, in the "Internal Txns" tab of your wallet. * * ---It is not allowed to transfer from exchanges, only from your personal ETH wallet, for which you * have private keys. * * Contracts reviewed and approved by pros! * */ import "@openzeppelin/contracts/access/Ownable.sol"; import "@openzeppelin/contracts/security/ReentrancyGuard.sol"; contract SecretInvest is Ownable, ReentrancyGuard { // Constants uint256 public FEE_MARKETING_MAIN = 500; uint256 public FEE_MARKETING_RESERVE = 500; // The marks of the balance on the contract after which the percentage of payments will change uint256 public constant MIN_BALANCE_STEP_1 = 0 ether; uint256 public constant MIN_BALANCE_STEP_2 = 20 ether; uint256 public constant MIN_BALANCE_STEP_3 = 40 ether; uint256 public constant MIN_BALANCE_STEP_4 = 60 ether; uint256 public constant MIN_BALANCE_STEP_5 = 80 ether; uint256 public constant MIN_BALANCE_STEP_6 = 100 ether; uint256 public constant PERCENT_STEP_1 = 325; uint256 public constant PERCENT_STEP_2 = 350; uint256 public constant PERCENT_STEP_3 = 375; uint256 public constant PERCENT_STEP_4 = 400; uint256 public constant PERCENT_STEP_5 = 425; uint256 public constant PERCENT_STEP_6 = 450; // The time through which dividends will be paid uint256 public constant DIVIDENDS_TIME = 1 days; uint256 public constant MIN_INVESTMENT = 0.01 ether; // Properties // Investors balances mapping(address => uint256) public balances; // The time of payment mapping(address => uint256) public time; uint256 public totalValueLocked; uint256 public totalDividendsPaid; uint256 public totalInvestors; uint256 public lastPayment; bool public isStarted; address public immutable marketingMain; address public immutable marketingReserve; // Constructor constructor(address marketingMain_, address marketingReserve_) { marketingMain = marketingMain_; marketingReserve = marketingReserve_; } // Events event NewInvestor(address indexed investor, uint256 deposit); event PayOffDividends(address indexed investor, uint256 value); event NewDeposit(address indexed investor, uint256 value); event Error(address indexed investor, uint256 value); // Modifiers /// Checking the positive balance of the beneficiary modifier isInvestor() { require(balances[msg.sender] > 0, "SecretInvest: Deposit not found"); _; } // Checking if contract is started modifier started() { require( isStarted == true, "SecretInvest: Contract is not started. Please wait." ); _; } // Private functions function _receivePayment() private isInvestor nonReentrant { (uint256 unpaid, uint256 numDaysToPay) = unpaidDividends(); require( numDaysToPay > 0, "SecretInvest: Too fast payout request. The time of payment has not yet come" ); time[msg.sender] += numDaysToPay * DIVIDENDS_TIME; payable(msg.sender).transfer(unpaid); totalDividendsPaid += unpaid; lastPayment = block.timestamp; emit PayOffDividends(msg.sender, unpaid); } function _calcFeeMarketingMain( uint256 value ) private view returns (uint256 fee) { fee = (value * FEE_MARKETING_MAIN) / 10000; } function _calcFeeMarketingReserve( uint256 value ) private view returns (uint256 fee) { fee = (value * FEE_MARKETING_RESERVE) / 10000; } function _createDeposit() private started { if (msg.value > 0) { require( msg.value >= MIN_INVESTMENT, "SecretInvest: msg.value must be >= minInvesment" ); if (balances[msg.sender] == 0) { emit NewInvestor(msg.sender, msg.value); totalInvestors += 1; } // Fee uint256 mainMarketingFee = _calcFeeMarketingMain(msg.value); payable(marketingMain).transfer(mainMarketingFee); uint256 reserveMarketingFee = _calcFeeMarketingReserve(msg.value); payable(marketingReserve).transfer(reserveMarketingFee); // Check if we need to pay any dividend now to this wallet (uint256 unpaid, uint256 numDaysToPay) = unpaidDividends(); if (unpaid > 0 && numDaysToPay > 0) { _receivePayment(); } // Save new amount to balance of this wallet balances[msg.sender] = balances[msg.sender] + msg.value; time[msg.sender] = block.timestamp; totalValueLocked += msg.value; emit NewDeposit(msg.sender, msg.value); } else { _receivePayment(); } } function _numDaysToPay() private view returns (uint256 numDaysToPay) { numDaysToPay = (block.timestamp - time[msg.sender]) / DIVIDENDS_TIME; } // Public functions function claimDividends() public { _receivePayment(); } function unpaidDividends() public view returns (uint256 unpaid, uint256 numDaysToPay) { uint256 dividendPerDay = (balances[msg.sender] * currentPercent()) / 10000; numDaysToPay = _numDaysToPay(); unpaid = dividendPerDay * numDaysToPay; } function isAutorizedPayment() public view returns (bool result) { result = balances[msg.sender] > 0 && _numDaysToPay() > 0; } function currentLevel() public view returns (uint256 level) { uint256 contractBalance = address(this).balance; level = 0; if ( contractBalance >= MIN_BALANCE_STEP_1 && contractBalance < MIN_BALANCE_STEP_2 ) { level = 1; } else if ( contractBalance >= MIN_BALANCE_STEP_2 && contractBalance < MIN_BALANCE_STEP_3 ) { level = 2; } else if ( contractBalance >= MIN_BALANCE_STEP_3 && contractBalance < MIN_BALANCE_STEP_4 ) { level = 3; } else if ( contractBalance >= MIN_BALANCE_STEP_4 && contractBalance < MIN_BALANCE_STEP_5 ) { level = 4; } else if ( contractBalance >= MIN_BALANCE_STEP_5 && contractBalance < MIN_BALANCE_STEP_6 ) { level = 5; } else { level = 6; } } function currentPercent() public view returns (uint256 percent) { uint256 level = currentLevel(); if (level == 1) { percent = PERCENT_STEP_1; } else if (level == 2) { percent = PERCENT_STEP_2; } else if (level == 3) { percent = PERCENT_STEP_3; } else if (level == 4) { percent = PERCENT_STEP_4; } else if (level == 5) { percent = PERCENT_STEP_5; } else { percent = PERCENT_STEP_6; } } function start() public onlyOwner { isStarted = true; } function balanceOfInvestor(address wallet_) public view returns (uint256 amount) { amount = balances[wallet_]; } /// Function that is launched when transferring money to a contract receive() external payable { _createDeposit(); } }
// SPDX-License-Identifier: MIT // OpenZeppelin Contracts (last updated v4.7.0) (access/Ownable.sol) pragma solidity ^0.8.0; import "../utils/Context.sol"; /** * @dev Contract module which provides a basic access control mechanism, where * there is an account (an owner) that can be granted exclusive access to * specific functions. * * By default, the owner account will be the one that deploys the contract. This * can later be changed with {transferOwnership}. * * This module is used through inheritance. It will make available the modifier * `onlyOwner`, which can be applied to your functions to restrict their use to * the owner. */ abstract contract Ownable is Context { address private _owner; event OwnershipTransferred(address indexed previousOwner, address indexed newOwner); /** * @dev Initializes the contract setting the deployer as the initial owner. */ constructor() { _transferOwnership(_msgSender()); } /** * @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 { require(owner() == _msgSender(), "Ownable: caller is not the owner"); } /** * @dev Leaves the contract without owner. It will not be possible to call * `onlyOwner` functions anymore. Can only be called by the current owner. * * NOTE: Renouncing ownership will leave the contract without an owner, * thereby removing any functionality that is only available to the owner. */ function renounceOwnership() public virtual onlyOwner { _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 { require(newOwner != address(0), "Ownable: new owner is the zero address"); _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 v4.8.0) (security/ReentrancyGuard.sol) pragma solidity ^0.8.0; /** * @dev Contract module that helps prevent reentrant calls to a function. * * Inheriting from `ReentrancyGuard` will make the {nonReentrant} modifier * available, which can be applied to functions to make sure there are no nested * (reentrant) calls to them. * * Note that because there is a single `nonReentrant` guard, functions marked as * `nonReentrant` may not call one another. This can be worked around by making * those functions `private`, and then adding `external` `nonReentrant` entry * points to them. * * TIP: If you would like to learn more about reentrancy and alternative ways * to protect against it, check out our blog post * https://blog.openzeppelin.com/reentrancy-after-istanbul/[Reentrancy After Istanbul]. */ abstract contract ReentrancyGuard { // Booleans are more expensive than uint256 or any type that takes up a full // word because each write operation emits an extra SLOAD to first read the // slot's contents, replace the bits taken up by the boolean, and then write // back. This is the compiler's defense against contract upgrades and // 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; 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 require(_status != _ENTERED, "ReentrancyGuard: reentrant call"); // 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; } }
// SPDX-License-Identifier: MIT // OpenZeppelin Contracts v4.4.1 (utils/Context.sol) pragma solidity ^0.8.0; /** * @dev Provides information about the current execution context, including the * sender of the transaction and its data. While these are generally available * via msg.sender and msg.data, they should not be accessed in such a direct * manner, since when dealing with meta-transactions the account sending and * paying for execution may not be the actual sender (as far as an application * is concerned). * * This contract is only required for intermediate, library-like contracts. */ abstract contract Context { function _msgSender() internal view virtual returns (address) { return msg.sender; } function _msgData() internal view virtual returns (bytes calldata) { return msg.data; } }
{ "optimizer": { "enabled": false, "runs": 200 }, "outputSelection": { "*": { "*": [ "evm.bytecode", "evm.deployedBytecode", "devdoc", "userdoc", "metadata", "abi" ] } }, "libraries": {} }
Contract Security Audit
- No Contract Security Audit Submitted- Submit Audit Here
Contract ABI
API[{"inputs":[{"internalType":"address","name":"marketingMain_","type":"address"},{"internalType":"address","name":"marketingReserve_","type":"address"}],"stateMutability":"nonpayable","type":"constructor"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"investor","type":"address"},{"indexed":false,"internalType":"uint256","name":"value","type":"uint256"}],"name":"Error","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"investor","type":"address"},{"indexed":false,"internalType":"uint256","name":"value","type":"uint256"}],"name":"NewDeposit","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"investor","type":"address"},{"indexed":false,"internalType":"uint256","name":"deposit","type":"uint256"}],"name":"NewInvestor","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":"investor","type":"address"},{"indexed":false,"internalType":"uint256","name":"value","type":"uint256"}],"name":"PayOffDividends","type":"event"},{"inputs":[],"name":"DIVIDENDS_TIME","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"FEE_MARKETING_MAIN","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"FEE_MARKETING_RESERVE","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"MIN_BALANCE_STEP_1","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"MIN_BALANCE_STEP_2","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"MIN_BALANCE_STEP_3","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"MIN_BALANCE_STEP_4","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"MIN_BALANCE_STEP_5","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"MIN_BALANCE_STEP_6","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"MIN_INVESTMENT","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"PERCENT_STEP_1","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"PERCENT_STEP_2","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"PERCENT_STEP_3","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"PERCENT_STEP_4","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"PERCENT_STEP_5","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"PERCENT_STEP_6","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"wallet_","type":"address"}],"name":"balanceOfInvestor","outputs":[{"internalType":"uint256","name":"amount","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"","type":"address"}],"name":"balances","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"claimDividends","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"currentLevel","outputs":[{"internalType":"uint256","name":"level","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"currentPercent","outputs":[{"internalType":"uint256","name":"percent","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"isAutorizedPayment","outputs":[{"internalType":"bool","name":"result","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"isStarted","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"lastPayment","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"marketingMain","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"marketingReserve","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"owner","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"renounceOwnership","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"start","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"","type":"address"}],"name":"time","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"totalDividendsPaid","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"totalInvestors","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"totalValueLocked","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"newOwner","type":"address"}],"name":"transferOwnership","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"unpaidDividends","outputs":[{"internalType":"uint256","name":"unpaid","type":"uint256"},{"internalType":"uint256","name":"numDaysToPay","type":"uint256"}],"stateMutability":"view","type":"function"},{"stateMutability":"payable","type":"receive"}]
Contract Creation Code
60c06040526101f46002556101f46003553480156200001c575f80fd5b5060405162001d0338038062001d03833981810160405281019062000042919062000206565b6200006262000056620000d960201b60201c565b620000e060201b60201c565b600180819055508173ffffffffffffffffffffffffffffffffffffffff1660808173ffffffffffffffffffffffffffffffffffffffff16815250508073ffffffffffffffffffffffffffffffffffffffff1660a08173ffffffffffffffffffffffffffffffffffffffff168152505050506200024b565b5f33905090565b5f805f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff169050815f806101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055508173ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a35050565b5f80fd5b5f73ffffffffffffffffffffffffffffffffffffffff82169050919050565b5f620001d082620001a5565b9050919050565b620001e281620001c4565b8114620001ed575f80fd5b50565b5f815190506200020081620001d7565b92915050565b5f80604083850312156200021f576200021e620001a1565b5b5f6200022e85828601620001f0565b92505060206200024185828601620001f0565b9150509250929050565b60805160a051611a886200027b5f395f81816109a20152610bd401525f81816109320152610b830152611a885ff3fe608060405260043610610207575f3560e01c80637c67a3e211610117578063c9e189861161009f578063dfec3e8c1161006e578063dfec3e8c14610701578063ec18154e1461072b578063f2fde38b14610755578063f77b8d121461077d578063f8f2aa7d146107a757610216565b8063c9e1898614610659578063cfa9f5f414610683578063d5950f07146106ad578063d98221b0146106d757610216565b80638da5cb5b116100e65780638da5cb5b1461059a57806391580177146105c45780639dc4b9c9146105ee578063be9a655514610618578063c662fd8e1461062e57610216565b80637c67a3e2146104ce5780637e8ecf4f1461050a57806381e170de1461054657806382883bd11461057057610216565b80633f40316d1161019a57806365d4580e1161016957806365d4580e14610424578063668038e01461044e5780636818cb1b1461046457806369f465821461048e578063715018a6146104b857610216565b80633f40316d1461037c5780634ef8ff33146103a6578063544736e6146103d05780635b49e017146103fa57610216565b806327e235e3116101d657806327e235e3146102c257806329b8caff146102fe57806339ee3f67146103285780633e85713d1461035257610216565b806307e3b3561461021a5780630de6600e1461024457806311d8739a1461026e578063254ba92e1461029857610216565b36610216576102146107d1565b005b5f80fd5b348015610225575f80fd5b5061022e610b74565b60405161023b9190611457565b60405180910390f35b34801561024f575f80fd5b50610258610b81565b60405161026591906114af565b60405180910390f35b348015610279575f80fd5b50610282610ba5565b60405161028f9190611457565b60405180910390f35b3480156102a3575f80fd5b506102ac610bab565b6040516102b99190611457565b60405180910390f35b3480156102cd575f80fd5b506102e860048036038101906102e391906114f6565b610bb1565b6040516102f59190611457565b60405180910390f35b348015610309575f80fd5b50610312610bc6565b60405161031f9190611457565b60405180910390f35b348015610333575f80fd5b5061033c610bcc565b6040516103499190611457565b60405180910390f35b34801561035d575f80fd5b50610366610bd2565b60405161037391906114af565b60405180910390f35b348015610387575f80fd5b50610390610bf6565b60405161039d9190611457565b60405180910390f35b3480156103b1575f80fd5b506103ba610c03565b6040516103c79190611457565b60405180910390f35b3480156103db575f80fd5b506103e4610c0e565b6040516103f1919061153b565b60405180910390f35b348015610405575f80fd5b5061040e610c20565b60405161041b919061153b565b60405180910390f35b34801561042f575f80fd5b50610438610c78565b6040516104459190611457565b60405180910390f35b348015610459575f80fd5b50610462610c85565b005b34801561046f575f80fd5b50610478610c8f565b6040516104859190611457565b60405180910390f35b348015610499575f80fd5b506104a2610c95565b6040516104af9190611457565b60405180910390f35b3480156104c3575f80fd5b506104cc610ca2565b005b3480156104d9575f80fd5b506104f460048036038101906104ef91906114f6565b610cb5565b6040516105019190611457565b60405180910390f35b348015610515575f80fd5b50610530600480360381019061052b91906114f6565b610cca565b60405161053d9190611457565b60405180910390f35b348015610551575f80fd5b5061055a610d10565b6040516105679190611457565b60405180910390f35b34801561057b575f80fd5b50610584610d16565b6040516105919190611457565b60405180910390f35b3480156105a5575f80fd5b506105ae610d1a565b6040516105bb91906114af565b60405180910390f35b3480156105cf575f80fd5b506105d8610d41565b6040516105e59190611457565b60405180910390f35b3480156105f9575f80fd5b50610602610d47565b60405161060f9190611457565b60405180910390f35b348015610623575f80fd5b5061062c610e3e565b005b348015610639575f80fd5b50610642610e62565b604051610650929190611554565b60405180910390f35b348015610664575f80fd5b5061066d610ee1565b60405161067a9190611457565b60405180910390f35b34801561068e575f80fd5b50610697610ee7565b6040516106a49190611457565b60405180910390f35b3480156106b8575f80fd5b506106c1610eee565b6040516106ce9190611457565b60405180910390f35b3480156106e2575f80fd5b506106eb610ef4565b6040516106f89190611457565b60405180910390f35b34801561070c575f80fd5b50610715610efa565b6040516107229190611457565b60405180910390f35b348015610736575f80fd5b5061073f610f00565b60405161074c9190611457565b60405180910390f35b348015610760575f80fd5b5061077b600480360381019061077691906114f6565b610f06565b005b348015610788575f80fd5b50610791610f88565b60405161079e9190611457565b60405180910390f35b3480156107b2575f80fd5b506107bb610f95565b6040516107c89190611457565b60405180910390f35b60011515600a5f9054906101000a900460ff16151514610826576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161081d906115fb565b60405180910390fd5b5f341115610b6957662386f26fc10000341015610878576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161086f90611689565b60405180910390fd5b5f60045f3373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205403610924573373ffffffffffffffffffffffffffffffffffffffff167f3ea43d7cccef4082f1b722579c174bffc4fed08469258b70da775c6909aa7b28346040516109029190611457565b60405180910390a2600160085f82825461091c91906116d4565b925050819055505b5f61092e34611009565b90507f000000000000000000000000000000000000000000000000000000000000000073ffffffffffffffffffffffffffffffffffffffff166108fc8290811502906040515f60405180830381858888f19350505050158015610993573d5f803e3d5ffd5b505f61099e3461102c565b90507f000000000000000000000000000000000000000000000000000000000000000073ffffffffffffffffffffffffffffffffffffffff166108fc8290811502906040515f60405180830381858888f19350505050158015610a03573d5f803e3d5ffd5b505f80610a0e610e62565b915091505f82118015610a2057505f81115b15610a2e57610a2d61104f565b5b3460045f3373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f2054610a7791906116d4565b60045f3373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f20819055504260055f3373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f20819055503460065f828254610b0b91906116d4565b925050819055503373ffffffffffffffffffffffffffffffffffffffff167f2cb77763bc1e8490c1a904905c4d74b4269919aca114464f4bb4d911e60de36434604051610b589190611457565b60405180910390a250505050610b72565b610b7161104f565b5b565b6801158e460913d0000081565b7f000000000000000000000000000000000000000000000000000000000000000081565b60035481565b61019081565b6004602052805f5260405f205f915090505481565b60085481565b61014581565b7f000000000000000000000000000000000000000000000000000000000000000081565b68056bc75e2d6310000081565b662386f26fc1000081565b600a5f9054906101000a900460ff1681565b5f8060045f3373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f2054118015610c7357505f610c71611244565b115b905090565b68022b1c8c1227a0000081565b610c8d61104f565b565b6101c281565b6804563918244f40000081565b610caa6112a1565b610cb35f61131f565b565b6005602052805f5260405f205f915090505481565b5f60045f8373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f20549050919050565b60095481565b5f81565b5f805f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff16905090565b61017781565b5f804790505f91505f8110158015610d6757506801158e460913d0000081105b15610d755760019150610e3a565b6801158e460913d000008110158015610d96575068022b1c8c1227a0000081105b15610da45760029150610e39565b68022b1c8c1227a000008110158015610dc55750680340aad21b3b70000081105b15610dd35760039150610e38565b680340aad21b3b7000008110158015610df457506804563918244f40000081105b15610e025760049150610e37565b6804563918244f4000008110158015610e23575068056bc75e2d6310000081105b15610e315760059150610e36565b600691505b5b5b5b5b5090565b610e466112a1565b6001600a5f6101000a81548160ff021916908315150217905550565b5f805f612710610e70610f95565b60045f3373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f2054610eb89190611707565b610ec29190611775565b9050610ecc611244565b91508181610eda9190611707565b9250509091565b60075481565b6201518081565b6101a981565b60025481565b61015e81565b60065481565b610f0e6112a1565b5f73ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff1603610f7c576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610f7390611815565b60405180910390fd5b610f858161131f565b50565b680340aad21b3b70000081565b5f80610f9f610d47565b905060018103610fb3576101459150611005565b60028103610fc55761015e9150611004565b60038103610fd7576101779150611003565b60048103610fe9576101909150611002565b60058103610ffb576101a99150611001565b6101c291505b5b5b5b5b5090565b5f6127106002548361101b9190611707565b6110259190611775565b9050919050565b5f6127106003548361103e9190611707565b6110489190611775565b9050919050565b5f60045f3373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f2054116110ce576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016110c59061187d565b60405180910390fd5b6110d66113e0565b5f806110e0610e62565b915091505f8111611126576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161111d90611931565b60405180910390fd5b62015180816111359190611707565b60055f3373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f82825461118091906116d4565b925050819055503373ffffffffffffffffffffffffffffffffffffffff166108fc8390811502906040515f60405180830381858888f193505050501580156111ca573d5f803e3d5ffd5b508160075f8282546111dc91906116d4565b92505081905550426009819055503373ffffffffffffffffffffffffffffffffffffffff167f38b3cd63b7181dfb8515c2b900548258df82fee21db5246ce3818c0efdf51685836040516112309190611457565b60405180910390a2505061124261142f565b565b5f6201518060055f3373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205442611292919061194f565b61129c9190611775565b905090565b6112a9611438565b73ffffffffffffffffffffffffffffffffffffffff166112c7610d1a565b73ffffffffffffffffffffffffffffffffffffffff161461131d576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611314906119cc565b60405180910390fd5b565b5f805f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff169050815f806101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055508173ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a35050565b600260015403611425576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161141c90611a34565b60405180910390fd5b6002600181905550565b60018081905550565b5f33905090565b5f819050919050565b6114518161143f565b82525050565b5f60208201905061146a5f830184611448565b92915050565b5f73ffffffffffffffffffffffffffffffffffffffff82169050919050565b5f61149982611470565b9050919050565b6114a98161148f565b82525050565b5f6020820190506114c25f8301846114a0565b92915050565b5f80fd5b6114d58161148f565b81146114df575f80fd5b50565b5f813590506114f0816114cc565b92915050565b5f6020828403121561150b5761150a6114c8565b5b5f611518848285016114e2565b91505092915050565b5f8115159050919050565b61153581611521565b82525050565b5f60208201905061154e5f83018461152c565b92915050565b5f6040820190506115675f830185611448565b6115746020830184611448565b9392505050565b5f82825260208201905092915050565b7f536563726574496e766573743a20436f6e7472616374206973206e6f742073745f8201527f61727465642e20506c6561736520776169742e00000000000000000000000000602082015250565b5f6115e560338361157b565b91506115f08261158b565b604082019050919050565b5f6020820190508181035f830152611612816115d9565b9050919050565b7f536563726574496e766573743a206d73672e76616c7565206d757374206265205f8201527f3e3d206d696e496e7665736d656e740000000000000000000000000000000000602082015250565b5f611673602f8361157b565b915061167e82611619565b604082019050919050565b5f6020820190508181035f8301526116a081611667565b9050919050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52601160045260245ffd5b5f6116de8261143f565b91506116e98361143f565b9250828201905080821115611701576117006116a7565b5b92915050565b5f6117118261143f565b915061171c8361143f565b925082820261172a8161143f565b91508282048414831517611741576117406116a7565b5b5092915050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52601260045260245ffd5b5f61177f8261143f565b915061178a8361143f565b92508261179a57611799611748565b5b828204905092915050565b7f4f776e61626c653a206e6577206f776e657220697320746865207a65726f20615f8201527f6464726573730000000000000000000000000000000000000000000000000000602082015250565b5f6117ff60268361157b565b915061180a826117a5565b604082019050919050565b5f6020820190508181035f83015261182c816117f3565b9050919050565b7f536563726574496e766573743a204465706f736974206e6f7420666f756e64005f82015250565b5f611867601f8361157b565b915061187282611833565b602082019050919050565b5f6020820190508181035f8301526118948161185b565b9050919050565b7f536563726574496e766573743a20546f6f2066617374207061796f75742072655f8201527f71756573742e205468652074696d65206f66207061796d656e7420686173206e60208201527f6f742079657420636f6d65000000000000000000000000000000000000000000604082015250565b5f61191b604b8361157b565b91506119268261189b565b606082019050919050565b5f6020820190508181035f8301526119488161190f565b9050919050565b5f6119598261143f565b91506119648361143f565b925082820390508181111561197c5761197b6116a7565b5b92915050565b7f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e65725f82015250565b5f6119b660208361157b565b91506119c182611982565b602082019050919050565b5f6020820190508181035f8301526119e3816119aa565b9050919050565b7f5265656e7472616e637947756172643a207265656e7472616e742063616c6c005f82015250565b5f611a1e601f8361157b565b9150611a29826119ea565b602082019050919050565b5f6020820190508181035f830152611a4b81611a12565b905091905056fea2646970667358221220470970042100d71ce3804cac16d58be8353be845eeacdd69bb3bb67c6b551a4b64736f6c634300081400330000000000000000000000006cda7c0b24d5b02ce1787b8e2ea4d32698c3369c000000000000000000000000f2226a2c29d9b75074ae7a23942d6f2d3b504cbc
Deployed Bytecode
0x608060405260043610610207575f3560e01c80637c67a3e211610117578063c9e189861161009f578063dfec3e8c1161006e578063dfec3e8c14610701578063ec18154e1461072b578063f2fde38b14610755578063f77b8d121461077d578063f8f2aa7d146107a757610216565b8063c9e1898614610659578063cfa9f5f414610683578063d5950f07146106ad578063d98221b0146106d757610216565b80638da5cb5b116100e65780638da5cb5b1461059a57806391580177146105c45780639dc4b9c9146105ee578063be9a655514610618578063c662fd8e1461062e57610216565b80637c67a3e2146104ce5780637e8ecf4f1461050a57806381e170de1461054657806382883bd11461057057610216565b80633f40316d1161019a57806365d4580e1161016957806365d4580e14610424578063668038e01461044e5780636818cb1b1461046457806369f465821461048e578063715018a6146104b857610216565b80633f40316d1461037c5780634ef8ff33146103a6578063544736e6146103d05780635b49e017146103fa57610216565b806327e235e3116101d657806327e235e3146102c257806329b8caff146102fe57806339ee3f67146103285780633e85713d1461035257610216565b806307e3b3561461021a5780630de6600e1461024457806311d8739a1461026e578063254ba92e1461029857610216565b36610216576102146107d1565b005b5f80fd5b348015610225575f80fd5b5061022e610b74565b60405161023b9190611457565b60405180910390f35b34801561024f575f80fd5b50610258610b81565b60405161026591906114af565b60405180910390f35b348015610279575f80fd5b50610282610ba5565b60405161028f9190611457565b60405180910390f35b3480156102a3575f80fd5b506102ac610bab565b6040516102b99190611457565b60405180910390f35b3480156102cd575f80fd5b506102e860048036038101906102e391906114f6565b610bb1565b6040516102f59190611457565b60405180910390f35b348015610309575f80fd5b50610312610bc6565b60405161031f9190611457565b60405180910390f35b348015610333575f80fd5b5061033c610bcc565b6040516103499190611457565b60405180910390f35b34801561035d575f80fd5b50610366610bd2565b60405161037391906114af565b60405180910390f35b348015610387575f80fd5b50610390610bf6565b60405161039d9190611457565b60405180910390f35b3480156103b1575f80fd5b506103ba610c03565b6040516103c79190611457565b60405180910390f35b3480156103db575f80fd5b506103e4610c0e565b6040516103f1919061153b565b60405180910390f35b348015610405575f80fd5b5061040e610c20565b60405161041b919061153b565b60405180910390f35b34801561042f575f80fd5b50610438610c78565b6040516104459190611457565b60405180910390f35b348015610459575f80fd5b50610462610c85565b005b34801561046f575f80fd5b50610478610c8f565b6040516104859190611457565b60405180910390f35b348015610499575f80fd5b506104a2610c95565b6040516104af9190611457565b60405180910390f35b3480156104c3575f80fd5b506104cc610ca2565b005b3480156104d9575f80fd5b506104f460048036038101906104ef91906114f6565b610cb5565b6040516105019190611457565b60405180910390f35b348015610515575f80fd5b50610530600480360381019061052b91906114f6565b610cca565b60405161053d9190611457565b60405180910390f35b348015610551575f80fd5b5061055a610d10565b6040516105679190611457565b60405180910390f35b34801561057b575f80fd5b50610584610d16565b6040516105919190611457565b60405180910390f35b3480156105a5575f80fd5b506105ae610d1a565b6040516105bb91906114af565b60405180910390f35b3480156105cf575f80fd5b506105d8610d41565b6040516105e59190611457565b60405180910390f35b3480156105f9575f80fd5b50610602610d47565b60405161060f9190611457565b60405180910390f35b348015610623575f80fd5b5061062c610e3e565b005b348015610639575f80fd5b50610642610e62565b604051610650929190611554565b60405180910390f35b348015610664575f80fd5b5061066d610ee1565b60405161067a9190611457565b60405180910390f35b34801561068e575f80fd5b50610697610ee7565b6040516106a49190611457565b60405180910390f35b3480156106b8575f80fd5b506106c1610eee565b6040516106ce9190611457565b60405180910390f35b3480156106e2575f80fd5b506106eb610ef4565b6040516106f89190611457565b60405180910390f35b34801561070c575f80fd5b50610715610efa565b6040516107229190611457565b60405180910390f35b348015610736575f80fd5b5061073f610f00565b60405161074c9190611457565b60405180910390f35b348015610760575f80fd5b5061077b600480360381019061077691906114f6565b610f06565b005b348015610788575f80fd5b50610791610f88565b60405161079e9190611457565b60405180910390f35b3480156107b2575f80fd5b506107bb610f95565b6040516107c89190611457565b60405180910390f35b60011515600a5f9054906101000a900460ff16151514610826576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161081d906115fb565b60405180910390fd5b5f341115610b6957662386f26fc10000341015610878576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161086f90611689565b60405180910390fd5b5f60045f3373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205403610924573373ffffffffffffffffffffffffffffffffffffffff167f3ea43d7cccef4082f1b722579c174bffc4fed08469258b70da775c6909aa7b28346040516109029190611457565b60405180910390a2600160085f82825461091c91906116d4565b925050819055505b5f61092e34611009565b90507f0000000000000000000000006cda7c0b24d5b02ce1787b8e2ea4d32698c3369c73ffffffffffffffffffffffffffffffffffffffff166108fc8290811502906040515f60405180830381858888f19350505050158015610993573d5f803e3d5ffd5b505f61099e3461102c565b90507f000000000000000000000000f2226a2c29d9b75074ae7a23942d6f2d3b504cbc73ffffffffffffffffffffffffffffffffffffffff166108fc8290811502906040515f60405180830381858888f19350505050158015610a03573d5f803e3d5ffd5b505f80610a0e610e62565b915091505f82118015610a2057505f81115b15610a2e57610a2d61104f565b5b3460045f3373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f2054610a7791906116d4565b60045f3373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f20819055504260055f3373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f20819055503460065f828254610b0b91906116d4565b925050819055503373ffffffffffffffffffffffffffffffffffffffff167f2cb77763bc1e8490c1a904905c4d74b4269919aca114464f4bb4d911e60de36434604051610b589190611457565b60405180910390a250505050610b72565b610b7161104f565b5b565b6801158e460913d0000081565b7f0000000000000000000000006cda7c0b24d5b02ce1787b8e2ea4d32698c3369c81565b60035481565b61019081565b6004602052805f5260405f205f915090505481565b60085481565b61014581565b7f000000000000000000000000f2226a2c29d9b75074ae7a23942d6f2d3b504cbc81565b68056bc75e2d6310000081565b662386f26fc1000081565b600a5f9054906101000a900460ff1681565b5f8060045f3373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f2054118015610c7357505f610c71611244565b115b905090565b68022b1c8c1227a0000081565b610c8d61104f565b565b6101c281565b6804563918244f40000081565b610caa6112a1565b610cb35f61131f565b565b6005602052805f5260405f205f915090505481565b5f60045f8373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f20549050919050565b60095481565b5f81565b5f805f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff16905090565b61017781565b5f804790505f91505f8110158015610d6757506801158e460913d0000081105b15610d755760019150610e3a565b6801158e460913d000008110158015610d96575068022b1c8c1227a0000081105b15610da45760029150610e39565b68022b1c8c1227a000008110158015610dc55750680340aad21b3b70000081105b15610dd35760039150610e38565b680340aad21b3b7000008110158015610df457506804563918244f40000081105b15610e025760049150610e37565b6804563918244f4000008110158015610e23575068056bc75e2d6310000081105b15610e315760059150610e36565b600691505b5b5b5b5b5090565b610e466112a1565b6001600a5f6101000a81548160ff021916908315150217905550565b5f805f612710610e70610f95565b60045f3373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f2054610eb89190611707565b610ec29190611775565b9050610ecc611244565b91508181610eda9190611707565b9250509091565b60075481565b6201518081565b6101a981565b60025481565b61015e81565b60065481565b610f0e6112a1565b5f73ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff1603610f7c576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610f7390611815565b60405180910390fd5b610f858161131f565b50565b680340aad21b3b70000081565b5f80610f9f610d47565b905060018103610fb3576101459150611005565b60028103610fc55761015e9150611004565b60038103610fd7576101779150611003565b60048103610fe9576101909150611002565b60058103610ffb576101a99150611001565b6101c291505b5b5b5b5b5090565b5f6127106002548361101b9190611707565b6110259190611775565b9050919050565b5f6127106003548361103e9190611707565b6110489190611775565b9050919050565b5f60045f3373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f2054116110ce576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016110c59061187d565b60405180910390fd5b6110d66113e0565b5f806110e0610e62565b915091505f8111611126576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161111d90611931565b60405180910390fd5b62015180816111359190611707565b60055f3373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f82825461118091906116d4565b925050819055503373ffffffffffffffffffffffffffffffffffffffff166108fc8390811502906040515f60405180830381858888f193505050501580156111ca573d5f803e3d5ffd5b508160075f8282546111dc91906116d4565b92505081905550426009819055503373ffffffffffffffffffffffffffffffffffffffff167f38b3cd63b7181dfb8515c2b900548258df82fee21db5246ce3818c0efdf51685836040516112309190611457565b60405180910390a2505061124261142f565b565b5f6201518060055f3373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205442611292919061194f565b61129c9190611775565b905090565b6112a9611438565b73ffffffffffffffffffffffffffffffffffffffff166112c7610d1a565b73ffffffffffffffffffffffffffffffffffffffff161461131d576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611314906119cc565b60405180910390fd5b565b5f805f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff169050815f806101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055508173ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a35050565b600260015403611425576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161141c90611a34565b60405180910390fd5b6002600181905550565b60018081905550565b5f33905090565b5f819050919050565b6114518161143f565b82525050565b5f60208201905061146a5f830184611448565b92915050565b5f73ffffffffffffffffffffffffffffffffffffffff82169050919050565b5f61149982611470565b9050919050565b6114a98161148f565b82525050565b5f6020820190506114c25f8301846114a0565b92915050565b5f80fd5b6114d58161148f565b81146114df575f80fd5b50565b5f813590506114f0816114cc565b92915050565b5f6020828403121561150b5761150a6114c8565b5b5f611518848285016114e2565b91505092915050565b5f8115159050919050565b61153581611521565b82525050565b5f60208201905061154e5f83018461152c565b92915050565b5f6040820190506115675f830185611448565b6115746020830184611448565b9392505050565b5f82825260208201905092915050565b7f536563726574496e766573743a20436f6e7472616374206973206e6f742073745f8201527f61727465642e20506c6561736520776169742e00000000000000000000000000602082015250565b5f6115e560338361157b565b91506115f08261158b565b604082019050919050565b5f6020820190508181035f830152611612816115d9565b9050919050565b7f536563726574496e766573743a206d73672e76616c7565206d757374206265205f8201527f3e3d206d696e496e7665736d656e740000000000000000000000000000000000602082015250565b5f611673602f8361157b565b915061167e82611619565b604082019050919050565b5f6020820190508181035f8301526116a081611667565b9050919050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52601160045260245ffd5b5f6116de8261143f565b91506116e98361143f565b9250828201905080821115611701576117006116a7565b5b92915050565b5f6117118261143f565b915061171c8361143f565b925082820261172a8161143f565b91508282048414831517611741576117406116a7565b5b5092915050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52601260045260245ffd5b5f61177f8261143f565b915061178a8361143f565b92508261179a57611799611748565b5b828204905092915050565b7f4f776e61626c653a206e6577206f776e657220697320746865207a65726f20615f8201527f6464726573730000000000000000000000000000000000000000000000000000602082015250565b5f6117ff60268361157b565b915061180a826117a5565b604082019050919050565b5f6020820190508181035f83015261182c816117f3565b9050919050565b7f536563726574496e766573743a204465706f736974206e6f7420666f756e64005f82015250565b5f611867601f8361157b565b915061187282611833565b602082019050919050565b5f6020820190508181035f8301526118948161185b565b9050919050565b7f536563726574496e766573743a20546f6f2066617374207061796f75742072655f8201527f71756573742e205468652074696d65206f66207061796d656e7420686173206e60208201527f6f742079657420636f6d65000000000000000000000000000000000000000000604082015250565b5f61191b604b8361157b565b91506119268261189b565b606082019050919050565b5f6020820190508181035f8301526119488161190f565b9050919050565b5f6119598261143f565b91506119648361143f565b925082820390508181111561197c5761197b6116a7565b5b92915050565b7f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e65725f82015250565b5f6119b660208361157b565b91506119c182611982565b602082019050919050565b5f6020820190508181035f8301526119e3816119aa565b9050919050565b7f5265656e7472616e637947756172643a207265656e7472616e742063616c6c005f82015250565b5f611a1e601f8361157b565b9150611a29826119ea565b602082019050919050565b5f6020820190508181035f830152611a4b81611a12565b905091905056fea2646970667358221220470970042100d71ce3804cac16d58be8353be845eeacdd69bb3bb67c6b551a4b64736f6c63430008140033
Constructor Arguments (ABI-Encoded and is the last bytes of the Contract Creation Code above)
0000000000000000000000006cda7c0b24d5b02ce1787b8e2ea4d32698c3369c000000000000000000000000f2226a2c29d9b75074ae7a23942d6f2d3b504cbc
-----Decoded View---------------
Arg [0] : marketingMain_ (address): 0x6Cda7c0b24D5B02CE1787b8e2eA4D32698c3369c
Arg [1] : marketingReserve_ (address): 0xf2226a2c29d9b75074ae7a23942d6f2d3B504cbc
-----Encoded View---------------
2 Constructor Arguments found :
Arg [0] : 0000000000000000000000006cda7c0b24d5b02ce1787b8e2ea4d32698c3369c
Arg [1] : 000000000000000000000000f2226a2c29d9b75074ae7a23942d6f2d3b504cbc
Loading...
Loading
Loading...
Loading
Multichain Portfolio | 31 Chains
Chain | Token | Portfolio % | Price | Amount | Value |
---|---|---|---|---|---|
ETH | 100.00% | $2,191.94 | 0.0071 | $15.56 |
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.