Feature Tip: Add private address tag to any address under My Name Tag !
Overview
ETH Balance
0 ETH
Eth Value
$0.00More Info
Private Name Tags
ContractCreator
Latest 25 from a total of 519 transactions
Transaction Hash |
Method
|
Block
|
From
|
To
|
|||||
---|---|---|---|---|---|---|---|---|---|
Transfer | 14816507 | 980 days ago | IN | 0.045 ETH | 0.00078495 | ||||
Withdraw Unclaim... | 13207971 | 1231 days ago | IN | 0 ETH | 0.00165201 | ||||
Claim | 13027834 | 1259 days ago | IN | 0 ETH | 0.00167475 | ||||
Claim | 13027625 | 1259 days ago | IN | 0 ETH | 0.00229271 | ||||
Claim | 13026687 | 1259 days ago | IN | 0 ETH | 0.00169473 | ||||
Claim | 13024353 | 1260 days ago | IN | 0 ETH | 0.00265812 | ||||
Claim | 13021894 | 1260 days ago | IN | 0 ETH | 0.00306302 | ||||
Claim | 13017366 | 1261 days ago | IN | 0 ETH | 0.00295409 | ||||
Claim | 13010120 | 1262 days ago | IN | 0 ETH | 0.00192472 | ||||
Claim | 13007381 | 1262 days ago | IN | 0 ETH | 0.00235706 | ||||
Claim | 13004020 | 1263 days ago | IN | 0 ETH | 0.00334951 | ||||
Claim | 13002100 | 1263 days ago | IN | 0 ETH | 0.00211081 | ||||
Claim | 12997440 | 1264 days ago | IN | 0 ETH | 0.00259062 | ||||
Claim | 12997206 | 1264 days ago | IN | 0 ETH | 0.00192286 | ||||
Claim | 12997045 | 1264 days ago | IN | 0 ETH | 0.00164183 | ||||
Claim | 12996619 | 1264 days ago | IN | 0 ETH | 0.00219918 | ||||
Claim | 12996524 | 1264 days ago | IN | 0 ETH | 0.00235208 | ||||
Claim | 12996480 | 1264 days ago | IN | 0 ETH | 0.00297183 | ||||
Claim | 12996376 | 1264 days ago | IN | 0 ETH | 0.00250919 | ||||
Claim | 12996317 | 1264 days ago | IN | 0 ETH | 0.00273864 | ||||
Claim | 12996283 | 1264 days ago | IN | 0 ETH | 0.00277397 | ||||
Claim | 12996243 | 1264 days ago | IN | 0 ETH | 0.00232264 | ||||
Claim | 12995940 | 1264 days ago | IN | 0 ETH | 0.00210895 | ||||
Claim | 12995937 | 1264 days ago | IN | 0 ETH | 0.00205999 | ||||
Claim | 12995810 | 1264 days ago | IN | 0 ETH | 0.00209054 |
Latest 1 internal transaction
Advanced mode:
Parent Transaction Hash | Block |
From
|
To
|
|||
---|---|---|---|---|---|---|
12825040 | 1291 days ago | 525.99149899 ETH |
Loading...
Loading
Contract Source Code Verified (Exact Match)
Contract Name:
TXJPInitialOffering
Compiler Version
v0.6.12+commit.27d51765
Contract Source Code (Solidity)
/** *Submitted for verification at Etherscan.io on 2021-07-04 */ // File: @openzeppelin/contracts/token/ERC20/IERC20.sol // SPDX-License-Identifier: MIT pragma solidity ^0.6.0; /** * @dev Interface of the ERC20 standard as defined in the EIP. */ interface IERC20 { /** * @dev Returns the amount of tokens in existence. */ function totalSupply() external view returns (uint256); /** * @dev Returns the amount of tokens owned by `account`. */ function balanceOf(address account) external view returns (uint256); /** * @dev Moves `amount` tokens from the caller's account to `recipient`. * * Returns a boolean value indicating whether the operation succeeded. * * Emits a {Transfer} event. */ function transfer(address recipient, uint256 amount) external returns (bool); /** * @dev Returns the remaining number of tokens that `spender` will be * allowed to spend on behalf of `owner` through {transferFrom}. This is * zero by default. * * This value changes when {approve} or {transferFrom} are called. */ function allowance(address owner, address spender) external view returns (uint256); /** * @dev Sets `amount` as the allowance of `spender` over the caller's tokens. * * Returns a boolean value indicating whether the operation succeeded. * * IMPORTANT: Beware that changing an allowance with this method brings the risk * that someone may use both the old and the new allowance by unfortunate * transaction ordering. One possible solution to mitigate this race * condition is to first reduce the spender's allowance to 0 and set the * desired value afterwards: * https://github.com/ethereum/EIPs/issues/20#issuecomment-263524729 * * Emits an {Approval} event. */ function approve(address spender, uint256 amount) external returns (bool); /** * @dev Moves `amount` tokens from `sender` to `recipient` using the * allowance mechanism. `amount` is then deducted from the caller's * allowance. * * Returns a boolean value indicating whether the operation succeeded. * * Emits a {Transfer} event. */ function transferFrom(address sender, address recipient, uint256 amount) external returns (bool); /** * @dev Emitted when `value` tokens are moved from one account (`from`) to * another (`to`). * * Note that `value` may be zero. */ event Transfer(address indexed from, address indexed to, uint256 value); /** * @dev Emitted when the allowance of a `spender` for an `owner` is set by * a call to {approve}. `value` is the new allowance. */ event Approval(address indexed owner, address indexed spender, uint256 value); } // File: @openzeppelin/contracts/math/SafeMath.sol pragma solidity ^0.6.0; /** * @dev Wrappers over Solidity's arithmetic operations with added overflow * checks. * * Arithmetic operations in Solidity wrap on overflow. This can easily result * in bugs, because programmers usually assume that an overflow raises an * error, which is the standard behavior in high level programming languages. * `SafeMath` restores this intuition by reverting the transaction when an * operation overflows. * * Using this library instead of the unchecked operations eliminates an entire * class of bugs, so it's recommended to use it always. */ library SafeMath { /** * @dev Returns the addition of two unsigned integers, reverting on * overflow. * * Counterpart to Solidity's `+` operator. * * Requirements: * * - Addition cannot overflow. */ function add(uint256 a, uint256 b) internal pure returns (uint256) { uint256 c = a + b; require(c >= a, "SafeMath: addition overflow"); return c; } /** * @dev Returns the subtraction of two unsigned integers, reverting on * overflow (when the result is negative). * * Counterpart to Solidity's `-` operator. * * Requirements: * * - Subtraction cannot overflow. */ function sub(uint256 a, uint256 b) internal pure returns (uint256) { return sub(a, b, "SafeMath: subtraction overflow"); } /** * @dev Returns the subtraction of two unsigned integers, reverting with custom message on * overflow (when the result is negative). * * Counterpart to Solidity's `-` operator. * * Requirements: * * - Subtraction cannot overflow. */ function sub(uint256 a, uint256 b, string memory errorMessage) internal pure returns (uint256) { require(b <= a, errorMessage); uint256 c = a - b; return c; } /** * @dev Returns the multiplication of two unsigned integers, reverting on * overflow. * * Counterpart to Solidity's `*` operator. * * Requirements: * * - Multiplication cannot overflow. */ function mul(uint256 a, uint256 b) internal pure returns (uint256) { // Gas optimization: this is cheaper than requiring 'a' not being zero, but the // benefit is lost if 'b' is also tested. // See: https://github.com/OpenZeppelin/openzeppelin-contracts/pull/522 if (a == 0) { return 0; } uint256 c = a * b; require(c / a == b, "SafeMath: multiplication overflow"); return c; } /** * @dev Returns the integer division of two unsigned integers. Reverts on * division by zero. The result is rounded towards zero. * * Counterpart to Solidity's `/` operator. Note: this function uses a * `revert` opcode (which leaves remaining gas untouched) while Solidity * uses an invalid opcode to revert (consuming all remaining gas). * * Requirements: * * - The divisor cannot be zero. */ function div(uint256 a, uint256 b) internal pure returns (uint256) { return div(a, b, "SafeMath: division by zero"); } /** * @dev Returns the integer division of two unsigned integers. Reverts with custom message on * division by zero. The result is rounded towards zero. * * Counterpart to Solidity's `/` operator. Note: this function uses a * `revert` opcode (which leaves remaining gas untouched) while Solidity * uses an invalid opcode to revert (consuming all remaining gas). * * Requirements: * * - The divisor cannot be zero. */ function div(uint256 a, uint256 b, string memory errorMessage) internal pure returns (uint256) { require(b > 0, errorMessage); uint256 c = a / b; // assert(a == b * c + a % b); // There is no case in which this doesn't hold return c; } /** * @dev Returns the remainder of dividing two unsigned integers. (unsigned integer modulo), * Reverts when dividing by zero. * * Counterpart to Solidity's `%` operator. This function uses a `revert` * opcode (which leaves remaining gas untouched) while Solidity uses an * invalid opcode to revert (consuming all remaining gas). * * Requirements: * * - The divisor cannot be zero. */ function mod(uint256 a, uint256 b) internal pure returns (uint256) { return mod(a, b, "SafeMath: modulo by zero"); } /** * @dev Returns the remainder of dividing two unsigned integers. (unsigned integer modulo), * Reverts with custom message when dividing by zero. * * Counterpart to Solidity's `%` operator. This function uses a `revert` * opcode (which leaves remaining gas untouched) while Solidity uses an * invalid opcode to revert (consuming all remaining gas). * * Requirements: * * - The divisor cannot be zero. */ function mod(uint256 a, uint256 b, string memory errorMessage) internal pure returns (uint256) { require(b != 0, errorMessage); return a % b; } } // File: @openzeppelin/contracts/utils/Address.sol pragma solidity ^0.6.2; /** * @dev Collection of functions related to the address type */ library Address { /** * @dev Returns true if `account` is a contract. * * [IMPORTANT] * ==== * It is unsafe to assume that an address for which this function returns * false is an externally-owned account (EOA) and not a contract. * * Among others, `isContract` will return false for the following * types of addresses: * * - an externally-owned account * - a contract in construction * - an address where a contract will be created * - an address where a contract lived, but was destroyed * ==== */ function isContract(address account) internal view returns (bool) { // According to EIP-1052, 0x0 is the value returned for not-yet created accounts // and 0xc5d2460186f7233c927e7db2dcc703c0e500b653ca82273b7bfad8045d85a470 is returned // for accounts without code, i.e. `keccak256('')` bytes32 codehash; bytes32 accountHash = 0xc5d2460186f7233c927e7db2dcc703c0e500b653ca82273b7bfad8045d85a470; // solhint-disable-next-line no-inline-assembly assembly { codehash := extcodehash(account) } return (codehash != accountHash && codehash != 0x0); } /** * @dev Replacement for Solidity's `transfer`: sends `amount` wei to * `recipient`, forwarding all available gas and reverting on errors. * * https://eips.ethereum.org/EIPS/eip-1884[EIP1884] increases the gas cost * of certain opcodes, possibly making contracts go over the 2300 gas limit * imposed by `transfer`, making them unable to receive funds via * `transfer`. {sendValue} removes this limitation. * * https://diligence.consensys.net/posts/2019/09/stop-using-soliditys-transfer-now/[Learn more]. * * IMPORTANT: because control is transferred to `recipient`, care must be * taken to not create reentrancy vulnerabilities. Consider using * {ReentrancyGuard} or the * https://solidity.readthedocs.io/en/v0.5.11/security-considerations.html#use-the-checks-effects-interactions-pattern[checks-effects-interactions pattern]. */ function sendValue(address payable recipient, uint256 amount) internal { require(address(this).balance >= amount, "Address: insufficient balance"); // solhint-disable-next-line avoid-low-level-calls, avoid-call-value (bool success, ) = recipient.call{ value: amount }(""); require(success, "Address: unable to send value, recipient may have reverted"); } /** * @dev Performs a Solidity function call using a low level `call`. A * plain`call` is an unsafe replacement for a function call: use this * function instead. * * If `target` reverts with a revert reason, it is bubbled up by this * function (like regular Solidity function calls). * * Returns the raw returned data. To convert to the expected return value, * use https://solidity.readthedocs.io/en/latest/units-and-global-variables.html?highlight=abi.decode#abi-encoding-and-decoding-functions[`abi.decode`]. * * Requirements: * * - `target` must be a contract. * - calling `target` with `data` must not revert. * * _Available since v3.1._ */ function functionCall(address target, bytes memory data) internal returns (bytes memory) { return functionCall(target, data, "Address: low-level call failed"); } /** * @dev Same as {xref-Address-functionCall-address-bytes-}[`functionCall`], but with * `errorMessage` as a fallback revert reason when `target` reverts. * * _Available since v3.1._ */ function functionCall(address target, bytes memory data, string memory errorMessage) internal returns (bytes memory) { return _functionCallWithValue(target, data, 0, errorMessage); } /** * @dev Same as {xref-Address-functionCall-address-bytes-}[`functionCall`], * but also transferring `value` wei to `target`. * * Requirements: * * - the calling contract must have an ETH balance of at least `value`. * - the called Solidity function must be `payable`. * * _Available since v3.1._ */ function functionCallWithValue(address target, bytes memory data, uint256 value) internal returns (bytes memory) { return functionCallWithValue(target, data, value, "Address: low-level call with value failed"); } /** * @dev Same as {xref-Address-functionCallWithValue-address-bytes-uint256-}[`functionCallWithValue`], but * with `errorMessage` as a fallback revert reason when `target` reverts. * * _Available since v3.1._ */ function functionCallWithValue(address target, bytes memory data, uint256 value, string memory errorMessage) internal returns (bytes memory) { require(address(this).balance >= value, "Address: insufficient balance for call"); return _functionCallWithValue(target, data, value, errorMessage); } function _functionCallWithValue(address target, bytes memory data, uint256 weiValue, string memory errorMessage) private returns (bytes memory) { require(isContract(target), "Address: call to non-contract"); // solhint-disable-next-line avoid-low-level-calls (bool success, bytes memory returndata) = target.call{ value: weiValue }(data); if (success) { return returndata; } else { // Look for revert reason and bubble it up if present if (returndata.length > 0) { // The easiest way to bubble the revert reason is using memory via assembly // solhint-disable-next-line no-inline-assembly assembly { let returndata_size := mload(returndata) revert(add(32, returndata), returndata_size) } } else { revert(errorMessage); } } } } // File: @openzeppelin/contracts/token/ERC20/SafeERC20.sol pragma solidity ^0.6.0; /** * @title SafeERC20 * @dev Wrappers around ERC20 operations that throw on failure (when the token * contract returns false). Tokens that return no value (and instead revert or * throw on failure) are also supported, non-reverting calls are assumed to be * successful. * To use this library you can add a `using SafeERC20 for IERC20;` statement to your contract, * which allows you to call the safe operations as `token.safeTransfer(...)`, etc. */ library SafeERC20 { using SafeMath for uint256; using Address for address; function safeTransfer(IERC20 token, address to, uint256 value) internal { _callOptionalReturn(token, abi.encodeWithSelector(token.transfer.selector, to, value)); } function safeTransferFrom(IERC20 token, address from, address to, uint256 value) internal { _callOptionalReturn(token, abi.encodeWithSelector(token.transferFrom.selector, from, to, value)); } /** * @dev Deprecated. This function has issues similar to the ones found in * {IERC20-approve}, and its usage is discouraged. * * Whenever possible, use {safeIncreaseAllowance} and * {safeDecreaseAllowance} instead. */ function safeApprove(IERC20 token, address spender, uint256 value) internal { // safeApprove should only be called when setting an initial allowance, // or when resetting it to zero. To increase and decrease it, use // 'safeIncreaseAllowance' and 'safeDecreaseAllowance' // solhint-disable-next-line max-line-length require((value == 0) || (token.allowance(address(this), spender) == 0), "SafeERC20: approve from non-zero to non-zero allowance" ); _callOptionalReturn(token, abi.encodeWithSelector(token.approve.selector, spender, value)); } function safeIncreaseAllowance(IERC20 token, address spender, uint256 value) internal { uint256 newAllowance = token.allowance(address(this), spender).add(value); _callOptionalReturn(token, abi.encodeWithSelector(token.approve.selector, spender, newAllowance)); } function safeDecreaseAllowance(IERC20 token, address spender, uint256 value) internal { uint256 newAllowance = token.allowance(address(this), spender).sub(value, "SafeERC20: decreased allowance below zero"); _callOptionalReturn(token, abi.encodeWithSelector(token.approve.selector, spender, newAllowance)); } /** * @dev Imitates a Solidity high-level call (i.e. a regular function call to a contract), relaxing the requirement * on the return value: the return value is optional (but if data is returned, it must not be false). * @param token The token targeted by the call. * @param data The call data (encoded using abi.encode or one of its variants). */ function _callOptionalReturn(IERC20 token, bytes memory data) private { // We need to perform a low level call here, to bypass Solidity's return data size checking mechanism, since // we're implementing it ourselves. We use {Address.functionCall} to perform this call, which verifies that // the target address contains contract code and also asserts for success in the low-level call. bytes memory returndata = address(token).functionCall(data, "SafeERC20: low-level call failed"); if (returndata.length > 0) { // Return data is optional // solhint-disable-next-line max-line-length require(abi.decode(returndata, (bool)), "SafeERC20: ERC20 operation did not succeed"); } } } // File: @openzeppelin/contracts/GSN/Context.sol pragma solidity ^0.6.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 GSN 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 payable) { return msg.sender; } function _msgData() internal view virtual returns (bytes memory) { this; // silence state mutability warning without generating bytecode - see https://github.com/ethereum/solidity/issues/2691 return msg.data; } } // File: @openzeppelin/contracts/access/Ownable.sol pragma solidity ^0.6.0; /** * @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. */ 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 () internal { address msgSender = _msgSender(); _owner = msgSender; emit OwnershipTransferred(address(0), msgSender); } /** * @dev Returns the address of the current owner. */ function owner() public view returns (address) { return _owner; } /** * @dev Throws if called by any account other than the owner. */ modifier onlyOwner() { 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 { emit OwnershipTransferred(_owner, address(0)); _owner = 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"); emit OwnershipTransferred(_owner, newOwner); _owner = newOwner; } } // File: contracts/InitialOffering/TXJPInitialOffering.sol pragma solidity 0.6.12; /** * TXJP * Copyright (C) 2020 TXJP Protocol * * This program is free software: you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by * the Free Software Foundation, either version 3 of the License, or * (at your option) any later version. * * This program is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the * GNU General Public License for more details. * * You should have received a copy of the GNU General Public License * along with this program. If not, see <http://www.gnu.org/licenses/>. */ /** * @author 0xMotoko * @title TXJP Initial Offering * @notice some description */ contract TXJPInitialOffering is Ownable { using SafeERC20 for IERC20; using SafeMath for uint; event Claimed(address indexed account, uint userShare, uint TXJPAmount); event Received(address indexed account, uint amount); uint public constant START = 1625799600; //1day = 86400 uint public constant END = START + 5 days + 9 hours; uint public constant TOTAL_DISTRIBUTE_AMOUNT = 36000e8; uint public constant MINIMAL_PROVIDE_AMOUNT = 1 ether; uint public totalProvided = 0; mapping(address => uint) public provided; IERC20 public TXJP; constructor(IERC20 _TXJP) public { TXJP = _TXJP; } receive() external payable { require(START <= block.timestamp, "The offering has not started yet"); require(block.timestamp <= END, "The offering has already ended"); totalProvided += msg.value; provided[msg.sender] += msg.value; emit Received(msg.sender, msg.value); } function claim() external { require(block.timestamp > END); require(provided[msg.sender] > 0); uint userShare = provided[msg.sender]; provided[msg.sender] = 0; if(totalProvided >= MINIMAL_PROVIDE_AMOUNT) { uint TXJPAmount = TOTAL_DISTRIBUTE_AMOUNT .mul(userShare) .div(totalProvided); TXJP.safeTransfer(msg.sender, TXJPAmount); emit Claimed(msg.sender, userShare, TXJPAmount); } else { msg.sender.transfer(userShare); emit Claimed(msg.sender, userShare, 0); } } function withdrawProvidedETH() external onlyOwner { require(END < block.timestamp, "The offering must be completed"); require( totalProvided >= MINIMAL_PROVIDE_AMOUNT, "The required amount has not been provided!" ); payable(owner()).transfer(address(this).balance); } function withdrawTXJP() external onlyOwner { require(END < block.timestamp, "The offering must be completed"); require( totalProvided < MINIMAL_PROVIDE_AMOUNT, "The required amount has been provided!" ); TXJP.safeTransfer(owner(), TXJP.balanceOf(address(this))); } function withdrawUnclaimedTXJP() external onlyOwner { require(END + 30 days < block.timestamp, "Withdrawal unavailable yet"); TXJP.safeTransfer(owner(), TXJP.balanceOf(address(this))); } }
Contract Security Audit
- No Contract Security Audit Submitted- Submit Audit Here
[{"inputs":[{"internalType":"contract IERC20","name":"_TXJP","type":"address"}],"stateMutability":"nonpayable","type":"constructor"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"account","type":"address"},{"indexed":false,"internalType":"uint256","name":"userShare","type":"uint256"},{"indexed":false,"internalType":"uint256","name":"TXJPAmount","type":"uint256"}],"name":"Claimed","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":"account","type":"address"},{"indexed":false,"internalType":"uint256","name":"amount","type":"uint256"}],"name":"Received","type":"event"},{"inputs":[],"name":"END","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"MINIMAL_PROVIDE_AMOUNT","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"START","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"TOTAL_DISTRIBUTE_AMOUNT","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"TXJP","outputs":[{"internalType":"contract IERC20","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"claim","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"owner","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"","type":"address"}],"name":"provided","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"renounceOwnership","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"totalProvided","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":"withdrawProvidedETH","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"withdrawTXJP","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"withdrawUnclaimedTXJP","outputs":[],"stateMutability":"nonpayable","type":"function"},{"stateMutability":"payable","type":"receive"}]
Contract Creation Code
6080604052600060015534801561001557600080fd5b506040516110173803806110178339818101604052602081101561003857600080fd5b505160006100446100b3565b600080546001600160a01b0319166001600160a01b0383169081178255604051929350917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0908290a350600380546001600160a01b0319166001600160a01b03929092169190911790556100b7565b3390565b610f51806100c66000396000f3fe6080604052600436106100e15760003560e01c80638da5cb5b1161007f578063ba9a061a11610059578063ba9a061a14610317578063e43608d81461032c578063efe7a50414610341578063f2fde38b14610356576101f2565b80638da5cb5b146102ba5780639ddb9ee1146102cf578063aa1cf2a214610302576101f2565b8063715018a6116100bb578063715018a61461024a57806371feef691461025f57806378032cce1461027457806379f0c5ed146102a5576101f2565b806302e3cb0b146101f75780632a0722a61461021e5780634e71d92d14610233576101f2565b366101f257426360e7bbb0111561013f576040805162461bcd60e51b815260206004820181905260248201527f546865206f66666572696e6720686173206e6f74207374617274656420796574604482015290519081900360640190fd5b6360eed1c0421115610198576040805162461bcd60e51b815260206004820152601e60248201527f546865206f66666572696e672068617320616c726561647920656e6465640000604482015290519081900360640190fd5b6001805434908101909155336000818152600260209081526040918290208054850190558151938452905191927f88a5966d370b9919b20f3e2c13ff65706f196a4e32cc2c12bf57088f88525874929081900390910190a2005b600080fd5b34801561020357600080fd5b5061020c610389565b60408051918252519081900360200190f35b34801561022a57600080fd5b5061020c61038f565b34801561023f57600080fd5b5061024861039b565b005b34801561025657600080fd5b506102486104cf565b34801561026b57600080fd5b50610248610571565b34801561028057600080fd5b506102896106b8565b604080516001600160a01b039092168252519081900360200190f35b3480156102b157600080fd5b506102486106c7565b3480156102c657600080fd5b506102896107bf565b3480156102db57600080fd5b5061020c600480360360208110156102f257600080fd5b50356001600160a01b03166107ce565b34801561030e57600080fd5b5061020c6107e0565b34801561032357600080fd5b5061020c6107ea565b34801561033857600080fd5b506102486107f2565b34801561034d57600080fd5b5061020c61092b565b34801561036257600080fd5b506102486004803603602081101561037957600080fd5b50356001600160a01b0316610933565b60015481565b670de0b6b3a764000081565b6360eed1c042116103ab57600080fd5b336000908152600260205260409020546103c457600080fd5b3360009081526002602052604081208054919055600154670de0b6b3a764000011610463576001546000906104099061040365034630b8a00085610a2b565b90610a8d565b600354909150610423906001600160a01b03163383610acf565b6040805183815260208101839052815133927f987d620f307ff6b94d58743cb7a7509f24071586a77759b77c2d4e29f75a2f9a928290030190a2506104cc565b604051339082156108fc029083906000818181858888f19350505050158015610490573d6000803e3d6000fd5b506040805182815260006020820152815133927f987d620f307ff6b94d58743cb7a7509f24071586a77759b77c2d4e29f75a2f9a928290030190a25b50565b6104d7610b26565b6000546001600160a01b03908116911614610527576040805162461bcd60e51b81526020600482018190526024820152600080516020610ed2833981519152604482015290519081900360640190fd5b600080546040516001600160a01b03909116907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0908390a3600080546001600160a01b0319169055565b610579610b26565b6000546001600160a01b039081169116146105c9576040805162461bcd60e51b81526020600482018190526024820152600080516020610ed2833981519152604482015290519081900360640190fd5b426361165ec010610621576040805162461bcd60e51b815260206004820152601a60248201527f5769746864726177616c20756e617661696c61626c6520796574000000000000604482015290519081900360640190fd5b6106b661062c6107bf565b600354604080516370a0823160e01b815230600482015290516001600160a01b03909216916370a0823191602480820192602092909190829003018186803b15801561067757600080fd5b505afa15801561068b573d6000803e3d6000fd5b505050506040513d60208110156106a157600080fd5b50516003546001600160a01b03169190610acf565b565b6003546001600160a01b031681565b6106cf610b26565b6000546001600160a01b0390811691161461071f576040805162461bcd60e51b81526020600482018190526024820152600080516020610ed2833981519152604482015290519081900360640190fd5b426360eed1c010610777576040805162461bcd60e51b815260206004820152601e60248201527f546865206f66666572696e67206d75737420626520636f6d706c657465640000604482015290519081900360640190fd5b670de0b6b3a7640000600154106106215760405162461bcd60e51b8152600401808060200182810382526026815260200180610e616026913960400191505060405180910390fd5b6000546001600160a01b031690565b60026020526000908152604090205481565b65034630b8a00081565b6360e7bbb081565b6107fa610b26565b6000546001600160a01b0390811691161461084a576040805162461bcd60e51b81526020600482018190526024820152600080516020610ed2833981519152604482015290519081900360640190fd5b426360eed1c0106108a2576040805162461bcd60e51b815260206004820152601e60248201527f546865206f66666572696e67206d75737420626520636f6d706c657465640000604482015290519081900360640190fd5b670de0b6b3a764000060015410156108eb5760405162461bcd60e51b815260040180806020018281038252602a815260200180610e87602a913960400191505060405180910390fd5b6108f36107bf565b6001600160a01b03166108fc479081150290604051600060405180830381858888f193505050501580156104cc573d6000803e3d6000fd5b6360eed1c081565b61093b610b26565b6000546001600160a01b0390811691161461098b576040805162461bcd60e51b81526020600482018190526024820152600080516020610ed2833981519152604482015290519081900360640190fd5b6001600160a01b0381166109d05760405162461bcd60e51b8152600401808060200182810382526026815260200180610e3b6026913960400191505060405180910390fd5b600080546040516001600160a01b03808516939216917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e091a3600080546001600160a01b0319166001600160a01b0392909216919091179055565b600082610a3a57506000610a87565b82820282848281610a4757fe5b0414610a845760405162461bcd60e51b8152600401808060200182810382526021815260200180610eb16021913960400191505060405180910390fd5b90505b92915050565b6000610a8483836040518060400160405280601a81526020017f536166654d6174683a206469766973696f6e206279207a65726f000000000000815250610b2a565b604080516001600160a01b038416602482015260448082018490528251808303909101815260649091019091526020810180516001600160e01b031663a9059cbb60e01b179052610b21908490610bcc565b505050565b3390565b60008183610bb65760405162461bcd60e51b81526004018080602001828103825283818151815260200191508051906020019080838360005b83811015610b7b578181015183820152602001610b63565b50505050905090810190601f168015610ba85780820380516001836020036101000a031916815260200191505b509250505060405180910390fd5b506000838581610bc257fe5b0495945050505050565b6060610c21826040518060400160405280602081526020017f5361666545524332303a206c6f772d6c6576656c2063616c6c206661696c6564815250856001600160a01b0316610c7d9092919063ffffffff16565b805190915015610b2157808060200190516020811015610c4057600080fd5b5051610b215760405162461bcd60e51b815260040180806020018281038252602a815260200180610ef2602a913960400191505060405180910390fd5b6060610c8c8484600085610c94565b949350505050565b6060610c9f85610e01565b610cf0576040805162461bcd60e51b815260206004820152601d60248201527f416464726573733a2063616c6c20746f206e6f6e2d636f6e7472616374000000604482015290519081900360640190fd5b60006060866001600160a01b031685876040518082805190602001908083835b60208310610d2f5780518252601f199092019160209182019101610d10565b6001836020036101000a03801982511681845116808217855250505050505090500191505060006040518083038185875af1925050503d8060008114610d91576040519150601f19603f3d011682016040523d82523d6000602084013e610d96565b606091505b50915091508115610daa579150610c8c9050565b805115610dba5780518082602001fd5b60405162461bcd60e51b8152602060048201818152865160248401528651879391928392604401919085019080838360008315610b7b578181015183820152602001610b63565b6000813f7fc5d2460186f7233c927e7db2dcc703c0e500b653ca82273b7bfad8045d85a470818114801590610c8c57505015159291505056fe4f776e61626c653a206e6577206f776e657220697320746865207a65726f206164647265737354686520726571756972656420616d6f756e7420686173206265656e2070726f76696465642154686520726571756972656420616d6f756e7420686173206e6f74206265656e2070726f766964656421536166654d6174683a206d756c7469706c69636174696f6e206f766572666c6f774f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e65725361666545524332303a204552433230206f7065726174696f6e20646964206e6f742073756363656564a264697066735822122086e39d6fd9e8870f0fdac2dddb6ebd875d551af065ca0c223e9eefb0a71c67ec64736f6c634300060c0033000000000000000000000000961dd84059505d59f82ce4fb87d3c09bec65301d
Deployed Bytecode
0x6080604052600436106100e15760003560e01c80638da5cb5b1161007f578063ba9a061a11610059578063ba9a061a14610317578063e43608d81461032c578063efe7a50414610341578063f2fde38b14610356576101f2565b80638da5cb5b146102ba5780639ddb9ee1146102cf578063aa1cf2a214610302576101f2565b8063715018a6116100bb578063715018a61461024a57806371feef691461025f57806378032cce1461027457806379f0c5ed146102a5576101f2565b806302e3cb0b146101f75780632a0722a61461021e5780634e71d92d14610233576101f2565b366101f257426360e7bbb0111561013f576040805162461bcd60e51b815260206004820181905260248201527f546865206f66666572696e6720686173206e6f74207374617274656420796574604482015290519081900360640190fd5b6360eed1c0421115610198576040805162461bcd60e51b815260206004820152601e60248201527f546865206f66666572696e672068617320616c726561647920656e6465640000604482015290519081900360640190fd5b6001805434908101909155336000818152600260209081526040918290208054850190558151938452905191927f88a5966d370b9919b20f3e2c13ff65706f196a4e32cc2c12bf57088f88525874929081900390910190a2005b600080fd5b34801561020357600080fd5b5061020c610389565b60408051918252519081900360200190f35b34801561022a57600080fd5b5061020c61038f565b34801561023f57600080fd5b5061024861039b565b005b34801561025657600080fd5b506102486104cf565b34801561026b57600080fd5b50610248610571565b34801561028057600080fd5b506102896106b8565b604080516001600160a01b039092168252519081900360200190f35b3480156102b157600080fd5b506102486106c7565b3480156102c657600080fd5b506102896107bf565b3480156102db57600080fd5b5061020c600480360360208110156102f257600080fd5b50356001600160a01b03166107ce565b34801561030e57600080fd5b5061020c6107e0565b34801561032357600080fd5b5061020c6107ea565b34801561033857600080fd5b506102486107f2565b34801561034d57600080fd5b5061020c61092b565b34801561036257600080fd5b506102486004803603602081101561037957600080fd5b50356001600160a01b0316610933565b60015481565b670de0b6b3a764000081565b6360eed1c042116103ab57600080fd5b336000908152600260205260409020546103c457600080fd5b3360009081526002602052604081208054919055600154670de0b6b3a764000011610463576001546000906104099061040365034630b8a00085610a2b565b90610a8d565b600354909150610423906001600160a01b03163383610acf565b6040805183815260208101839052815133927f987d620f307ff6b94d58743cb7a7509f24071586a77759b77c2d4e29f75a2f9a928290030190a2506104cc565b604051339082156108fc029083906000818181858888f19350505050158015610490573d6000803e3d6000fd5b506040805182815260006020820152815133927f987d620f307ff6b94d58743cb7a7509f24071586a77759b77c2d4e29f75a2f9a928290030190a25b50565b6104d7610b26565b6000546001600160a01b03908116911614610527576040805162461bcd60e51b81526020600482018190526024820152600080516020610ed2833981519152604482015290519081900360640190fd5b600080546040516001600160a01b03909116907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0908390a3600080546001600160a01b0319169055565b610579610b26565b6000546001600160a01b039081169116146105c9576040805162461bcd60e51b81526020600482018190526024820152600080516020610ed2833981519152604482015290519081900360640190fd5b426361165ec010610621576040805162461bcd60e51b815260206004820152601a60248201527f5769746864726177616c20756e617661696c61626c6520796574000000000000604482015290519081900360640190fd5b6106b661062c6107bf565b600354604080516370a0823160e01b815230600482015290516001600160a01b03909216916370a0823191602480820192602092909190829003018186803b15801561067757600080fd5b505afa15801561068b573d6000803e3d6000fd5b505050506040513d60208110156106a157600080fd5b50516003546001600160a01b03169190610acf565b565b6003546001600160a01b031681565b6106cf610b26565b6000546001600160a01b0390811691161461071f576040805162461bcd60e51b81526020600482018190526024820152600080516020610ed2833981519152604482015290519081900360640190fd5b426360eed1c010610777576040805162461bcd60e51b815260206004820152601e60248201527f546865206f66666572696e67206d75737420626520636f6d706c657465640000604482015290519081900360640190fd5b670de0b6b3a7640000600154106106215760405162461bcd60e51b8152600401808060200182810382526026815260200180610e616026913960400191505060405180910390fd5b6000546001600160a01b031690565b60026020526000908152604090205481565b65034630b8a00081565b6360e7bbb081565b6107fa610b26565b6000546001600160a01b0390811691161461084a576040805162461bcd60e51b81526020600482018190526024820152600080516020610ed2833981519152604482015290519081900360640190fd5b426360eed1c0106108a2576040805162461bcd60e51b815260206004820152601e60248201527f546865206f66666572696e67206d75737420626520636f6d706c657465640000604482015290519081900360640190fd5b670de0b6b3a764000060015410156108eb5760405162461bcd60e51b815260040180806020018281038252602a815260200180610e87602a913960400191505060405180910390fd5b6108f36107bf565b6001600160a01b03166108fc479081150290604051600060405180830381858888f193505050501580156104cc573d6000803e3d6000fd5b6360eed1c081565b61093b610b26565b6000546001600160a01b0390811691161461098b576040805162461bcd60e51b81526020600482018190526024820152600080516020610ed2833981519152604482015290519081900360640190fd5b6001600160a01b0381166109d05760405162461bcd60e51b8152600401808060200182810382526026815260200180610e3b6026913960400191505060405180910390fd5b600080546040516001600160a01b03808516939216917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e091a3600080546001600160a01b0319166001600160a01b0392909216919091179055565b600082610a3a57506000610a87565b82820282848281610a4757fe5b0414610a845760405162461bcd60e51b8152600401808060200182810382526021815260200180610eb16021913960400191505060405180910390fd5b90505b92915050565b6000610a8483836040518060400160405280601a81526020017f536166654d6174683a206469766973696f6e206279207a65726f000000000000815250610b2a565b604080516001600160a01b038416602482015260448082018490528251808303909101815260649091019091526020810180516001600160e01b031663a9059cbb60e01b179052610b21908490610bcc565b505050565b3390565b60008183610bb65760405162461bcd60e51b81526004018080602001828103825283818151815260200191508051906020019080838360005b83811015610b7b578181015183820152602001610b63565b50505050905090810190601f168015610ba85780820380516001836020036101000a031916815260200191505b509250505060405180910390fd5b506000838581610bc257fe5b0495945050505050565b6060610c21826040518060400160405280602081526020017f5361666545524332303a206c6f772d6c6576656c2063616c6c206661696c6564815250856001600160a01b0316610c7d9092919063ffffffff16565b805190915015610b2157808060200190516020811015610c4057600080fd5b5051610b215760405162461bcd60e51b815260040180806020018281038252602a815260200180610ef2602a913960400191505060405180910390fd5b6060610c8c8484600085610c94565b949350505050565b6060610c9f85610e01565b610cf0576040805162461bcd60e51b815260206004820152601d60248201527f416464726573733a2063616c6c20746f206e6f6e2d636f6e7472616374000000604482015290519081900360640190fd5b60006060866001600160a01b031685876040518082805190602001908083835b60208310610d2f5780518252601f199092019160209182019101610d10565b6001836020036101000a03801982511681845116808217855250505050505090500191505060006040518083038185875af1925050503d8060008114610d91576040519150601f19603f3d011682016040523d82523d6000602084013e610d96565b606091505b50915091508115610daa579150610c8c9050565b805115610dba5780518082602001fd5b60405162461bcd60e51b8152602060048201818152865160248401528651879391928392604401919085019080838360008315610b7b578181015183820152602001610b63565b6000813f7fc5d2460186f7233c927e7db2dcc703c0e500b653ca82273b7bfad8045d85a470818114801590610c8c57505015159291505056fe4f776e61626c653a206e6577206f776e657220697320746865207a65726f206164647265737354686520726571756972656420616d6f756e7420686173206265656e2070726f76696465642154686520726571756972656420616d6f756e7420686173206e6f74206265656e2070726f766964656421536166654d6174683a206d756c7469706c69636174696f6e206f766572666c6f774f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e65725361666545524332303a204552433230206f7065726174696f6e20646964206e6f742073756363656564a264697066735822122086e39d6fd9e8870f0fdac2dddb6ebd875d551af065ca0c223e9eefb0a71c67ec64736f6c634300060c0033
Constructor Arguments (ABI-Encoded and is the last bytes of the Contract Creation Code above)
000000000000000000000000961dd84059505d59f82ce4fb87d3c09bec65301d
-----Decoded View---------------
Arg [0] : _TXJP (address): 0x961dD84059505D59f82cE4fb87D3c09bec65301d
-----Encoded View---------------
1 Constructor Arguments found :
Arg [0] : 000000000000000000000000961dd84059505d59f82ce4fb87d3c09bec65301d
Deployed Bytecode Sourcemap
22362:2533:0:-:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;23090:15;22642:10;23081:24;;23073:69;;;;;-1:-1:-1;;;23073:69:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;22701:24;23161:15;:22;;23153:65;;;;;-1:-1:-1;;;23153:65:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;23229:13;:26;;23246:9;23229:26;;;;;;23275:10;23229:13;23266:20;;;:8;:20;;;;;;;;;:33;;;;;;23315:31;;;;;;;23275:10;;23315:31;;;;;;;;;;;22362:2533;;;;;22853:29;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;22793:53;;;;;;;;;;;;;:::i;23362:632::-;;;;;;;;;;;;;:::i;:::-;;20900:148;;;;;;;;;;;;;:::i;24683:209::-;;;;;;;;;;;;;:::i;22936:18::-;;;;;;;;;;;;;:::i;:::-;;;;-1:-1:-1;;;;;22936:18:0;;;;;;;;;;;;;;24344:331;;;;;;;;;;;;;:::i;20258:79::-;;;;;;;;;;;;;:::i;22889:40::-;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;22889:40:0;-1:-1:-1;;;;;22889:40:0;;:::i;22732:54::-;;;;;;;;;;;;;:::i;22613:39::-;;;;;;;;;;;;;:::i;24002:334::-;;;;;;;;;;;;;:::i;22674:51::-;;;;;;;;;;;;;:::i;21203:244::-;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;21203:244:0;-1:-1:-1;;;;;21203:244:0;;:::i;22853:29::-;;;;:::o;22793:53::-;22839:7;22793:53;:::o;23362:632::-;22701:24;23407:15;:21;23399:30;;;;;;23457:10;23471:1;23448:20;;;:8;:20;;;;;;23440:33;;;;;;23512:10;23486:14;23503:20;;;:8;:20;;;;;;;23534:24;;;-1:-1:-1;23574:13:0;22839:7;-1:-1:-1;23571:416:0;;23727:13;;23630:15;;23648:93;;:56;22779:7;23694:9;23648:45;:56::i;:::-;:78;;:93::i;:::-;23756:4;;23630:111;;-1:-1:-1;23756:41:0;;-1:-1:-1;;;;;23756:4:0;23774:10;23630:111;23756:17;:41::i;:::-;23817:42;;;;;;;;;;;;;;23825:10;;23817:42;;;;;;;;23571:416;;;;23892:30;;:10;;:30;;;;;23912:9;;23892:30;;;;23912:9;23892:10;:30;;;;;;;;;;;;;;;;;;;;-1:-1:-1;23942:33:0;;;;;;23973:1;23942:33;;;;;;23950:10;;23942:33;;;;;;;;23571:416;23362:632;:::o;20900:148::-;20480:12;:10;:12::i;:::-;20470:6;;-1:-1:-1;;;;;20470:6:0;;;:22;;;20462:67;;;;;-1:-1:-1;;;20462:67:0;;;;;;;;;;;;;-1:-1:-1;;;;;;;;;;;20462:67:0;;;;;;;;;;;;;;;21007:1:::1;20991:6:::0;;20970:40:::1;::::0;-1:-1:-1;;;;;20991:6:0;;::::1;::::0;20970:40:::1;::::0;21007:1;;20970:40:::1;21038:1;21021:19:::0;;-1:-1:-1;;;;;;21021:19:0::1;::::0;;20900:148::o;24683:209::-;20480:12;:10;:12::i;:::-;20470:6;;-1:-1:-1;;;;;20470:6:0;;;:22;;;20462:67;;;;;-1:-1:-1;;;20462:67:0;;;;;;;;;;;;;-1:-1:-1;;;;;;;;;;;20462:67:0;;;;;;;;;;;;;;;24770:15:::1;24754:13:::0;:31:::1;24746:70;;;::::0;;-1:-1:-1;;;24746:70:0;;::::1;;::::0;::::1;::::0;::::1;::::0;;;;::::1;::::0;;;;;;;;;;;;;::::1;;24827:57;24845:7;:5;:7::i;:::-;24854:4;::::0;:29:::1;::::0;;-1:-1:-1;;;24854:29:0;;24877:4:::1;24854:29;::::0;::::1;::::0;;;-1:-1:-1;;;;;24854:4:0;;::::1;::::0;:14:::1;::::0;:29;;;;;::::1;::::0;;;;;;;;;:4;:29;::::1;;::::0;::::1;;;;::::0;::::1;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;::::0;::::1;;-1:-1:-1::0;24854:29:0;24827:4:::1;::::0;-1:-1:-1;;;;;24827:4:0::1;::::0;:57;:17:::1;:57::i;:::-;24683:209::o:0;22936:18::-;;;-1:-1:-1;;;;;22936:18:0;;:::o;24344:331::-;20480:12;:10;:12::i;:::-;20470:6;;-1:-1:-1;;;;;20470:6:0;;;:22;;;20462:67;;;;;-1:-1:-1;;;20462:67:0;;;;;;;;;;;;;-1:-1:-1;;;;;;;;;;;20462:67:0;;;;;;;;;;;;;;;24412:15:::1;22701:24:::0;24406:21:::1;24398:64;;;::::0;;-1:-1:-1;;;24398:64:0;;::::1;;::::0;::::1;::::0;::::1;::::0;;;;::::1;::::0;;;;;;;;;;;;;::::1;;22839:7;24495:13;;:38;24473:126;;;;-1:-1:-1::0;;;24473:126:0::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;20258:79:::0;20296:7;20323:6;-1:-1:-1;;;;;20323:6:0;20258:79;:::o;22889:40::-;;;;;;;;;;;;;:::o;22732:54::-;22779:7;22732:54;:::o;22613:39::-;22642:10;22613:39;:::o;24002:334::-;20480:12;:10;:12::i;:::-;20470:6;;-1:-1:-1;;;;;20470:6:0;;;:22;;;20462:67;;;;;-1:-1:-1;;;20462:67:0;;;;;;;;;;;;;-1:-1:-1;;;;;;;;;;;20462:67:0;;;;;;;;;;;;;;;24077:15:::1;22701:24:::0;24071:21:::1;24063:64;;;::::0;;-1:-1:-1;;;24063:64:0;;::::1;;::::0;::::1;::::0;::::1;::::0;;;;::::1;::::0;;;;;;;;;;;;;::::1;;22839:7;24160:13;;:39;;24138:131;;;;-1:-1:-1::0;;;24138:131:0::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;24288:7;:5;:7::i;:::-;-1:-1:-1::0;;;;;24280:25:0::1;:48;24306:21;24280:48;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;::::0;::::1;;;;22674:51:::0;22701:24;22674:51;:::o;21203:244::-;20480:12;:10;:12::i;:::-;20470:6;;-1:-1:-1;;;;;20470:6:0;;;:22;;;20462:67;;;;;-1:-1:-1;;;20462:67:0;;;;;;;;;;;;;-1:-1:-1;;;;;;;;;;;20462:67:0;;;;;;;;;;;;;;;-1:-1:-1;;;;;21292:22:0;::::1;21284:73;;;;-1:-1:-1::0;;;21284:73:0::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;21394:6;::::0;;21373:38:::1;::::0;-1:-1:-1;;;;;21373:38:0;;::::1;::::0;21394:6;::::1;::::0;21373:38:::1;::::0;::::1;21422:6;:17:::0;;-1:-1:-1;;;;;;21422:17:0::1;-1:-1:-1::0;;;;;21422:17:0;;;::::1;::::0;;;::::1;::::0;;21203:244::o;5111:471::-;5169:7;5414:6;5410:47;;-1:-1:-1;5444:1:0;5437:8;;5410:47;5481:5;;;5485:1;5481;:5;:1;5505:5;;;;;:10;5497:56;;;;-1:-1:-1;;;5497:56:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;5573:1;-1:-1:-1;5111:471:0;;;;;:::o;6058:132::-;6116:7;6143:39;6147:1;6150;6143:39;;;;;;;;;;;;;;;;;:3;:39::i;15115:177::-;15225:58;;;-1:-1:-1;;;;;15225:58:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;;;15225:58:0;-1:-1:-1;;;15225:58:0;;;15198:86;;15218:5;;15198:19;:86::i;:::-;15115:177;;;:::o;18812:106::-;18900:10;18812:106;:::o;6686:278::-;6772:7;6807:12;6800:5;6792:28;;;;-1:-1:-1;;;6792:28:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;6831:9;6847:1;6843;:5;;;;;;;6686:278;-1:-1:-1;;;;;6686:278:0:o;17420:761::-;17844:23;17870:69;17898:4;17870:69;;;;;;;;;;;;;;;;;17878:5;-1:-1:-1;;;;;17870:27:0;;;:69;;;;;:::i;:::-;17954:17;;17844:95;;-1:-1:-1;17954:21:0;17950:224;;18096:10;18085:30;;;;;;;;;;;;;;;-1:-1:-1;18085:30:0;18077:85;;;;-1:-1:-1;;;18077:85:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;12096:196;12199:12;12231:53;12254:6;12262:4;12268:1;12271:12;12231:22;:53::i;:::-;12224:60;12096:196;-1:-1:-1;;;;12096:196:0:o;13473:979::-;13603:12;13636:18;13647:6;13636:10;:18::i;:::-;13628:60;;;;;-1:-1:-1;;;13628:60:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;13762:12;13776:23;13803:6;-1:-1:-1;;;;;13803:11:0;13823:8;13834:4;13803:36;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;13803:36:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;13761:78;;;;13854:7;13850:595;;;13885:10;-1:-1:-1;13878:17:0;;-1:-1:-1;13878:17:0;13850:595;13999:17;;:21;13995:439;;14262:10;14256:17;14323:15;14310:10;14306:2;14302:19;14295:44;14210:148;14398:20;;-1:-1:-1;;;14398:20:0;;;;;;;;;;;;;;;;;14405:12;;14398:20;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;8981:619;9041:4;9509:20;;9352:66;9549:23;;;;;;:42;;-1:-1:-1;;9576:15:0;;;9541:51;-1:-1:-1;;8981:619:0:o
Swarm Source
ipfs://86e39d6fd9e8870f0fdac2dddb6ebd875d551af065ca0c223e9eefb0a71c67ec
Loading...
Loading
Loading...
Loading
Multichain Portfolio | 30 Chains
Chain | Token | Portfolio % | Price | Amount | Value |
---|
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.