Contract Overview
Balance:
0 CRO
CRO Value:
$0.00
My Name Tag:
Not Available, login to update
Txn Hash | Method |
Block
|
From
|
To
|
Value | [Txn Fee] | |||
---|---|---|---|---|---|---|---|---|---|
0x181b2ba95f9dfa8e9006743dba0096c724c0d424523cabe8227e1aaa2d4501e9 | Withdraw ERC20To... | 12848780 | 24 days 20 hrs ago | Phenix Finance: Deployer | IN | 0x4df40d6dde81cc36effd22eed3fbdd23812cab15 | 0 CRO | 0.59158323 | |
0x002d6291ef2d5e260fc26d130d54b6fcb5ddcce51ad8eb33dfe0f4dec01eebb9 | Withdraw ETH Fun... | 5889575 | 479 days 31 mins ago | Phenix Finance: Deployer | IN | 0x4df40d6dde81cc36effd22eed3fbdd23812cab15 | 0 CRO | 0.153354565466 | |
0x698cae5442140d313ca8f8c89c27b16ae734371031459fce7d05d7bd43a57181 | Withdraw ERC20To... | 5889548 | 479 days 34 mins ago | Phenix Finance: Deployer | IN | 0x4df40d6dde81cc36effd22eed3fbdd23812cab15 | 0 CRO | 0.445049839543 | |
0x34d8b2e402301cf180d84fad3560119be10523bab55718a1f2556f6ff517cde9 | Withdraw ERC20To... | 5889531 | 479 days 35 mins ago | Phenix Finance: Deployer | IN | 0x4df40d6dde81cc36effd22eed3fbdd23812cab15 | 0 CRO | 0.445049913271 | |
0x1c3d690cdd9730301c9a46c0f20674bf59c2fac22fc194c87baa33175e942500 | Set ERC20Unlock ... | 5889410 | 479 days 47 mins ago | Phenix Finance: Deployer | IN | 0x4df40d6dde81cc36effd22eed3fbdd23812cab15 | 0 CRO | 0.248482353731 | |
0x9d4dbe0ff488760bb9ccb0ab27a2ccfe605f06ac40ee5964dcb42235c32c9a39 | Withdraw ERC20To... | 5889398 | 479 days 48 mins ago | Phenix Finance: Deployer | IN | 0x4df40d6dde81cc36effd22eed3fbdd23812cab15 | 0 CRO | 0.440186855473 | |
0xba67a0ee4ef1197c108ebe482915db3f26c426796a753fdba51db37c51843da7 | Transfer | 5889362 | 479 days 51 mins ago | Phenix Finance: Deployer | IN | 0x4df40d6dde81cc36effd22eed3fbdd23812cab15 | 5 CRO | 0.102382514254 | |
0xe105271d0633b79b0ed8be7b92f929eb57066b5364fdb919fce230b84fbf584e | 0x60806040 | 5889335 | 479 days 54 mins ago | Phenix Finance: Deployer | IN | Create: PhenixVestingVault | 0 CRO | 6.092388983512 |
[ Download CSV Export ]
Latest 1 internal transaction
Parent Txn Hash | Block | From | To | Value | |||
---|---|---|---|---|---|---|---|
0x002d6291ef2d5e260fc26d130d54b6fcb5ddcce51ad8eb33dfe0f4dec01eebb9 | 5889575 | 479 days 31 mins ago | 0x4df40d6dde81cc36effd22eed3fbdd23812cab15 | Phenix Finance: Deployer | 5 CRO |
[ Download CSV Export ]
Contract Name:
PhenixVestingVault
Compiler Version
v0.8.17+commit.8df45f5f
Contract Source Code (Solidity)
/** *Submitted for verification at cronoscan.com on 2022-12-06 */ // File: @openzeppelin/contracts/utils/math/SafeMath.sol // OpenZeppelin Contracts (last updated v4.6.0) (utils/math/SafeMath.sol) pragma solidity ^0.8.0; // CAUTION // This version of SafeMath should only be used with Solidity 0.8 or later, // because it relies on the compiler's built in overflow checks. /** * @dev Wrappers over Solidity's arithmetic operations. * * NOTE: `SafeMath` is generally not needed starting with Solidity 0.8, since the compiler * now has built in overflow checking. */ library SafeMath { /** * @dev Returns the addition of two unsigned integers, with an overflow flag. * * _Available since v3.4._ */ function tryAdd(uint256 a, uint256 b) internal pure returns (bool, uint256) { unchecked { uint256 c = a + b; if (c < a) return (false, 0); return (true, c); } } /** * @dev Returns the subtraction of two unsigned integers, with an overflow flag. * * _Available since v3.4._ */ function trySub(uint256 a, uint256 b) internal pure returns (bool, uint256) { unchecked { if (b > a) return (false, 0); return (true, a - b); } } /** * @dev Returns the multiplication of two unsigned integers, with an overflow flag. * * _Available since v3.4._ */ function tryMul(uint256 a, uint256 b) internal pure returns (bool, uint256) { unchecked { // 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 (true, 0); uint256 c = a * b; if (c / a != b) return (false, 0); return (true, c); } } /** * @dev Returns the division of two unsigned integers, with a division by zero flag. * * _Available since v3.4._ */ function tryDiv(uint256 a, uint256 b) internal pure returns (bool, uint256) { unchecked { if (b == 0) return (false, 0); return (true, a / b); } } /** * @dev Returns the remainder of dividing two unsigned integers, with a division by zero flag. * * _Available since v3.4._ */ function tryMod(uint256 a, uint256 b) internal pure returns (bool, uint256) { unchecked { if (b == 0) return (false, 0); return (true, a % b); } } /** * @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) { return a + b; } /** * @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 a - b; } /** * @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) { return a * b; } /** * @dev Returns the integer division of two unsigned integers, reverting on * division by zero. The result is rounded towards zero. * * Counterpart to Solidity's `/` operator. * * Requirements: * * - The divisor cannot be zero. */ function div(uint256 a, uint256 b) internal pure returns (uint256) { return a / b; } /** * @dev Returns the remainder of dividing two unsigned integers. (unsigned integer modulo), * reverting 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 a % b; } /** * @dev Returns the subtraction of two unsigned integers, reverting with custom message on * overflow (when the result is negative). * * CAUTION: This function is deprecated because it requires allocating memory for the error * message unnecessarily. For custom revert reasons use {trySub}. * * Counterpart to Solidity's `-` operator. * * Requirements: * * - Subtraction cannot overflow. */ function sub( uint256 a, uint256 b, string memory errorMessage ) internal pure returns (uint256) { unchecked { require(b <= a, errorMessage); return a - b; } } /** * @dev Returns the integer division of two unsigned integers, reverting 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) { unchecked { require(b > 0, errorMessage); return a / b; } } /** * @dev Returns the remainder of dividing two unsigned integers. (unsigned integer modulo), * reverting with custom message when dividing by zero. * * CAUTION: This function is deprecated because it requires allocating memory for the error * message unnecessarily. For custom revert reasons use {tryMod}. * * 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) { unchecked { require(b > 0, errorMessage); return a % b; } } } // File: @openzeppelin/contracts/utils/introspection/IERC165.sol // OpenZeppelin Contracts v4.4.1 (utils/introspection/IERC165.sol) pragma solidity ^0.8.0; /** * @dev Interface of the ERC165 standard, as defined in the * https://eips.ethereum.org/EIPS/eip-165[EIP]. * * Implementers can declare support of contract interfaces, which can then be * queried by others ({ERC165Checker}). * * For an implementation, see {ERC165}. */ interface IERC165 { /** * @dev Returns true if this contract implements the interface defined by * `interfaceId`. See the corresponding * https://eips.ethereum.org/EIPS/eip-165#how-interfaces-are-identified[EIP section] * to learn more about how these ids are created. * * This function call must use less than 30 000 gas. */ function supportsInterface(bytes4 interfaceId) external view returns (bool); } // File: @openzeppelin/contracts/token/ERC721/IERC721.sol // OpenZeppelin Contracts (last updated v4.8.0) (token/ERC721/IERC721.sol) pragma solidity ^0.8.0; /** * @dev Required interface of an ERC721 compliant contract. */ interface IERC721 is IERC165 { /** * @dev Emitted when `tokenId` token is transferred from `from` to `to`. */ event Transfer(address indexed from, address indexed to, uint256 indexed tokenId); /** * @dev Emitted when `owner` enables `approved` to manage the `tokenId` token. */ event Approval(address indexed owner, address indexed approved, uint256 indexed tokenId); /** * @dev Emitted when `owner` enables or disables (`approved`) `operator` to manage all of its assets. */ event ApprovalForAll(address indexed owner, address indexed operator, bool approved); /** * @dev Returns the number of tokens in ``owner``'s account. */ function balanceOf(address owner) external view returns (uint256 balance); /** * @dev Returns the owner of the `tokenId` token. * * Requirements: * * - `tokenId` must exist. */ function ownerOf(uint256 tokenId) external view returns (address owner); /** * @dev Safely transfers `tokenId` token from `from` to `to`. * * Requirements: * * - `from` cannot be the zero address. * - `to` cannot be the zero address. * - `tokenId` token must exist and be owned by `from`. * - If the caller is not `from`, it must be approved to move this token by either {approve} or {setApprovalForAll}. * - If `to` refers to a smart contract, it must implement {IERC721Receiver-onERC721Received}, which is called upon a safe transfer. * * Emits a {Transfer} event. */ function safeTransferFrom( address from, address to, uint256 tokenId, bytes calldata data ) external; /** * @dev Safely transfers `tokenId` token from `from` to `to`, checking first that contract recipients * are aware of the ERC721 protocol to prevent tokens from being forever locked. * * Requirements: * * - `from` cannot be the zero address. * - `to` cannot be the zero address. * - `tokenId` token must exist and be owned by `from`. * - If the caller is not `from`, it must have been allowed to move this token by either {approve} or {setApprovalForAll}. * - If `to` refers to a smart contract, it must implement {IERC721Receiver-onERC721Received}, which is called upon a safe transfer. * * Emits a {Transfer} event. */ function safeTransferFrom( address from, address to, uint256 tokenId ) external; /** * @dev Transfers `tokenId` token from `from` to `to`. * * WARNING: Note that the caller is responsible to confirm that the recipient is capable of receiving ERC721 * or else they may be permanently lost. Usage of {safeTransferFrom} prevents loss, though the caller must * understand this adds an external call which potentially creates a reentrancy vulnerability. * * Requirements: * * - `from` cannot be the zero address. * - `to` cannot be the zero address. * - `tokenId` token must be owned by `from`. * - If the caller is not `from`, it must be approved to move this token by either {approve} or {setApprovalForAll}. * * Emits a {Transfer} event. */ function transferFrom( address from, address to, uint256 tokenId ) external; /** * @dev Gives permission to `to` to transfer `tokenId` token to another account. * The approval is cleared when the token is transferred. * * Only a single account can be approved at a time, so approving the zero address clears previous approvals. * * Requirements: * * - The caller must own the token or be an approved operator. * - `tokenId` must exist. * * Emits an {Approval} event. */ function approve(address to, uint256 tokenId) external; /** * @dev Approve or remove `operator` as an operator for the caller. * Operators can call {transferFrom} or {safeTransferFrom} for any token owned by the caller. * * Requirements: * * - The `operator` cannot be the caller. * * Emits an {ApprovalForAll} event. */ function setApprovalForAll(address operator, bool _approved) external; /** * @dev Returns the account approved for `tokenId` token. * * Requirements: * * - `tokenId` must exist. */ function getApproved(uint256 tokenId) external view returns (address operator); /** * @dev Returns if the `operator` is allowed to manage all of the assets of `owner`. * * See {setApprovalForAll} */ function isApprovedForAll(address owner, address operator) external view returns (bool); } // File: @openzeppelin/contracts/token/ERC20/IERC20.sol // OpenZeppelin Contracts (last updated v4.6.0) (token/ERC20/IERC20.sol) pragma solidity ^0.8.0; /** * @dev Interface of the ERC20 standard as defined in the EIP. */ interface IERC20 { /** * @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); /** * @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 `to`. * * Returns a boolean value indicating whether the operation succeeded. * * Emits a {Transfer} event. */ function transfer(address to, 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 `from` to `to` 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 from, address to, uint256 amount ) external returns (bool); } // File: @openzeppelin/contracts/utils/Context.sol // 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; } } // File: @openzeppelin/contracts/access/Ownable.sol // OpenZeppelin Contracts (last updated v4.7.0) (access/Ownable.sol) pragma solidity ^0.8.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. */ 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); } } // File: contracts/PhenixVestingVault.sol pragma solidity ^0.8.9; contract PhenixVestingVault is Ownable { using SafeMath for uint256; uint256 public maximumLockDuration = 31536000; // 1 year mapping(address => uint256) public tokenERC20UnlockTimestamp; mapping(address => uint256) public tokenERC721UnlockTimestamp; mapping(address => bool) public isAuthorizedAddress; constructor(address _owner, address[] memory _authorizedAddresses) { _transferOwnership(_owner); for (uint256 i = 0; i < _authorizedAddresses.length; i++) { isAuthorizedAddress[_authorizedAddresses[i]] = true; } } modifier isERC20Unlocked(address _tokenERC20Address) { require( tokenERC20UnlockTimestamp[_tokenERC20Address] == 0 || block.timestamp >= tokenERC20UnlockTimestamp[_tokenERC20Address], "ERC20 Tokens are not unlocked." ); _; } modifier isERC721Unlocked(address _tokenERC721Address) { require( tokenERC721UnlockTimestamp[_tokenERC721Address] == 0 || block.timestamp >= tokenERC721UnlockTimestamp[_tokenERC721Address], "ERC271 Tokens are not unlocked" ); _; } modifier isAuthorized() { require( msg.sender == owner() || isAuthorizedAddress[msg.sender] == true, "Not authorized." ); _; } function updateMaximumLockDuration(uint256 _maximumLockDuration) external isAuthorized { maximumLockDuration = _maximumLockDuration; } function setAuthorizedAddress(address _address, bool _status) external onlyOwner { require(_address != owner(), "Cannot set as owner."); isAuthorizedAddress[_address] = _status; } function withdrawERC721Token(uint256 _tokenId, address _tokenERC721Address) external isAuthorized isERC721Unlocked(_tokenERC721Address) { IERC721(_tokenERC721Address).transferFrom( address(this), msg.sender, _tokenId ); } function transferERC721Token( uint256 _tokenId, address _tokenERC721Address, address _to ) external isAuthorized isERC721Unlocked(_tokenERC721Address) { IERC721(_tokenERC721Address).transferFrom(address(this), _to, _tokenId); } function withdrawERC20Token(uint256 _amount, address _tokenERC20Address) external isAuthorized isERC20Unlocked(_tokenERC20Address) { IERC20(_tokenERC20Address).transfer(msg.sender, _amount); } function transferERC20Token( uint256 _amount, address _tokenERC20Address, address _to ) external isAuthorized isERC20Unlocked(_tokenERC20Address) { IERC20(_tokenERC20Address).transfer(_to, _amount); } function setERC20UnlockTime( address _tokenERC20Address, uint256 _unlockTimestamp ) external isAuthorized { require( _unlockTimestamp > tokenERC20UnlockTimestamp[_tokenERC20Address] && _unlockTimestamp > block.timestamp, "Unlock timestamp doesn't exceed existing unlock time." ); require( _unlockTimestamp.sub(block.timestamp) <= maximumLockDuration, "Lock duration exceeds max lock interval" ); tokenERC20UnlockTimestamp[_tokenERC20Address] = _unlockTimestamp; } function increaseERC20UnlockTime( address _tokenERC20Address, uint256 _timestampIncrease ) external isAuthorized { require( tokenERC20UnlockTimestamp[_tokenERC20Address] != 0, "Token unlock not initialized." ); require( _timestampIncrease <= maximumLockDuration, "Lock timestamp increase exceeds max lock interval" ); tokenERC20UnlockTimestamp[ _tokenERC20Address ] = tokenERC20UnlockTimestamp[_tokenERC20Address].add( _timestampIncrease ); } function setERC721UnlockTime( address _tokenERC721Address, uint256 _unlockTimestamp ) external isAuthorized { require( _unlockTimestamp > tokenERC721UnlockTimestamp[_tokenERC721Address] && _unlockTimestamp > block.timestamp, "Unlock timestamp doesn't exceed existing unlock time or does not exceed current block timestamp." ); require( _unlockTimestamp.sub(block.timestamp) <= maximumLockDuration, "Lock duration exceeds max lock interval" ); tokenERC721UnlockTimestamp[_tokenERC721Address] = _unlockTimestamp; } function increaseERC721UnlockTime( address _tokenERC721Address, uint256 _timestampIncrease ) external isAuthorized { require( tokenERC721UnlockTimestamp[_tokenERC721Address] != 0, "Token unlock not initialized." ); require( _timestampIncrease <= maximumLockDuration, "Lock timestamp increase exceeds max lock interval" ); tokenERC721UnlockTimestamp[ _tokenERC721Address ] = tokenERC721UnlockTimestamp[_tokenERC721Address].add( _timestampIncrease ); } function withdrawETHFunds(uint256 _amount) external isAuthorized { require( _amount > 0 && address(this).balance >= _amount, "Invalid amount or not enough ETH." ); (bool success, ) = payable(msg.sender).call{value: _amount}(""); require(success, "Failed to withdrawal funds!"); } function transferETHFunds(uint256 _amount, address _to) external isAuthorized { require( _amount > 0 && address(this).balance >= _amount, "Invalid amount or not enough ETH." ); (bool success, ) = payable(_to).call{value: _amount}(""); require(success, "Failed to transfer funds!"); } receive() external payable {} }
[{"inputs":[{"internalType":"address","name":"_owner","type":"address"},{"internalType":"address[]","name":"_authorizedAddresses","type":"address[]"}],"stateMutability":"nonpayable","type":"constructor"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"previousOwner","type":"address"},{"indexed":true,"internalType":"address","name":"newOwner","type":"address"}],"name":"OwnershipTransferred","type":"event"},{"inputs":[{"internalType":"address","name":"_tokenERC20Address","type":"address"},{"internalType":"uint256","name":"_timestampIncrease","type":"uint256"}],"name":"increaseERC20UnlockTime","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"_tokenERC721Address","type":"address"},{"internalType":"uint256","name":"_timestampIncrease","type":"uint256"}],"name":"increaseERC721UnlockTime","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"","type":"address"}],"name":"isAuthorizedAddress","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"maximumLockDuration","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"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":[{"internalType":"address","name":"_address","type":"address"},{"internalType":"bool","name":"_status","type":"bool"}],"name":"setAuthorizedAddress","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"_tokenERC20Address","type":"address"},{"internalType":"uint256","name":"_unlockTimestamp","type":"uint256"}],"name":"setERC20UnlockTime","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"_tokenERC721Address","type":"address"},{"internalType":"uint256","name":"_unlockTimestamp","type":"uint256"}],"name":"setERC721UnlockTime","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"","type":"address"}],"name":"tokenERC20UnlockTimestamp","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"","type":"address"}],"name":"tokenERC721UnlockTimestamp","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"uint256","name":"_amount","type":"uint256"},{"internalType":"address","name":"_tokenERC20Address","type":"address"},{"internalType":"address","name":"_to","type":"address"}],"name":"transferERC20Token","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"uint256","name":"_tokenId","type":"uint256"},{"internalType":"address","name":"_tokenERC721Address","type":"address"},{"internalType":"address","name":"_to","type":"address"}],"name":"transferERC721Token","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"uint256","name":"_amount","type":"uint256"},{"internalType":"address","name":"_to","type":"address"}],"name":"transferETHFunds","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"newOwner","type":"address"}],"name":"transferOwnership","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"uint256","name":"_maximumLockDuration","type":"uint256"}],"name":"updateMaximumLockDuration","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"uint256","name":"_amount","type":"uint256"},{"internalType":"address","name":"_tokenERC20Address","type":"address"}],"name":"withdrawERC20Token","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"uint256","name":"_tokenId","type":"uint256"},{"internalType":"address","name":"_tokenERC721Address","type":"address"}],"name":"withdrawERC721Token","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"uint256","name":"_amount","type":"uint256"}],"name":"withdrawETHFunds","outputs":[],"stateMutability":"nonpayable","type":"function"},{"stateMutability":"payable","type":"receive"}]
Contract Creation Code
60806040526301e133806001553480156200001957600080fd5b506040516200172a3803806200172a8339810160408190526200003c916200014d565b6200004733620000ca565b6200005282620000ca565b60005b8151811015620000c1576001600460008484815181106200007a576200007a62000236565b6020908102919091018101516001600160a01b03168252810191909152604001600020805460ff191691151591909117905580620000b8816200024c565b91505062000055565b50505062000274565b600080546001600160a01b038381166001600160a01b0319831681178455604051919092169283917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e09190a35050565b80516001600160a01b03811681146200013257600080fd5b919050565b634e487b7160e01b600052604160045260246000fd5b600080604083850312156200016157600080fd5b6200016c836200011a565b602084810151919350906001600160401b03808211156200018c57600080fd5b818601915086601f830112620001a157600080fd5b815181811115620001b657620001b662000137565b8060051b604051601f19603f83011681018181108582111715620001de57620001de62000137565b604052918252848201925083810185019189831115620001fd57600080fd5b938501935b82851015620002265762000216856200011a565b8452938501939285019262000202565b8096505050505050509250929050565b634e487b7160e01b600052603260045260246000fd5b6000600182016200026d57634e487b7160e01b600052601160045260246000fd5b5060010190565b6114a680620002846000396000f3fe6080604052600436106101185760003560e01c806398f8f8d0116100a0578063bd8e88c511610064578063bd8e88c514610319578063f2fde38b14610339578063f60a3fa714610359578063faaaad3314610379578063ff8c8dc81461039957600080fd5b806398f8f8d0146102835780639da4d8e3146102a35780639eef328c146102c35780639ff3f125146102e3578063b00a503f146102f957600080fd5b80634f416d54116100e75780634f416d54146101cb57806353005bdf146101eb5780635cf7c9041461020b578063715018a6146102465780638da5cb5b1461025b57600080fd5b80631351cf5114610124578063235240c8146101465780632cc7fde3146101665780634a85280e1461018657600080fd5b3661011f57005b600080fd5b34801561013057600080fd5b5061014461013f366004611211565b6103c6565b005b34801561015257600080fd5b50610144610161366004611248565b610461565b34801561017257600080fd5b50610144610181366004611284565b6105af565b34801561019257600080fd5b506101b66101a136600461129d565b60046020526000908152604090205460ff1681565b60405190151581526020015b60405180910390f35b3480156101d757600080fd5b506101446101e63660046112b8565b6105fd565b3480156101f757600080fd5b506101446102063660046112e2565b61071d565b34801561021757600080fd5b5061023861022636600461129d565b60036020526000908152604090205481565b6040519081526020016101c2565b34801561025257600080fd5b5061014461085c565b34801561026757600080fd5b506000546040516001600160a01b0390911681526020016101c2565b34801561028f57600080fd5b5061014461029e3660046112b8565b610870565b3480156102af57600080fd5b506101446102be366004611248565b610985565b3480156102cf57600080fd5b506101446102de3660046112b8565b610ac7565b3480156102ef57600080fd5b5061023860015481565b34801561030557600080fd5b50610144610314366004611284565b610bdc565b34801561032557600080fd5b506101446103343660046112b8565b610ced565b34801561034557600080fd5b5061014461035436600461129d565b610e3b565b34801561036557600080fd5b506101446103743660046112e2565b610eb4565b34801561038557600080fd5b506101446103943660046112e2565b610fff565b3480156103a557600080fd5b506102386103b436600461129d565b60026020526000908152604090205481565b6103ce61111c565b6000546001600160a01b03166001600160a01b0316826001600160a01b0316036104365760405162461bcd60e51b815260206004820152601460248201527321b0b73737ba1039b2ba1030b99037bbb732b91760611b60448201526064015b60405180910390fd5b6001600160a01b03919091166000908152600460205260409020805460ff1916911515919091179055565b6000546001600160a01b031633148061048e57503360009081526004602052604090205460ff1615156001145b6104aa5760405162461bcd60e51b815260040161042d9061130e565b6001600160a01b038216600090815260026020526040902054829015806104e957506001600160a01b0381166000908152600260205260409020544210155b6105355760405162461bcd60e51b815260206004820152601e60248201527f455243323020546f6b656e7320617265206e6f7420756e6c6f636b65642e0000604482015260640161042d565b60405163a9059cbb60e01b81526001600160a01b0383811660048301526024820186905284169063a9059cbb906044016020604051808303816000875af1158015610584573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906105a89190611337565b5050505050565b6000546001600160a01b03163314806105dc57503360009081526004602052604090205460ff1615156001145b6105f85760405162461bcd60e51b815260040161042d9061130e565b600155565b6000546001600160a01b031633148061062a57503360009081526004602052604090205460ff1615156001145b6106465760405162461bcd60e51b815260040161042d9061130e565b6001600160a01b0382166000908152600260205260409020548111801561066c57504281115b6106d65760405162461bcd60e51b815260206004820152603560248201527f556e6c6f636b2074696d657374616d7020646f65736e2774206578636565642060448201527432bc34b9ba34b733903ab73637b1b5903a34b6b29760591b606482015260840161042d565b6001546106e38242611176565b11156107015760405162461bcd60e51b815260040161042d9061135b565b6001600160a01b03909116600090815260026020526040902055565b6000546001600160a01b031633148061074a57503360009081526004602052604090205460ff1615156001145b6107665760405162461bcd60e51b815260040161042d9061130e565b6001600160a01b038116600090815260036020526040902054819015806107a557506001600160a01b0381166000908152600360205260409020544210155b6107f15760405162461bcd60e51b815260206004820152601e60248201527f45524332373120546f6b656e7320617265206e6f7420756e6c6f636b65640000604482015260640161042d565b6040516323b872dd60e01b8152306004820152336024820152604481018490526001600160a01b038316906323b872dd90606401600060405180830381600087803b15801561083f57600080fd5b505af1158015610853573d6000803e3d6000fd5b50505050505050565b61086461111c565b61086e600061118b565b565b6000546001600160a01b031633148061089d57503360009081526004602052604090205460ff1615156001145b6108b95760405162461bcd60e51b815260040161042d9061130e565b6001600160a01b03821660009081526003602052604081205490036109205760405162461bcd60e51b815260206004820152601d60248201527f546f6b656e20756e6c6f636b206e6f7420696e697469616c697a65642e000000604482015260640161042d565b6001548111156109425760405162461bcd60e51b815260040161042d906113a2565b6001600160a01b03821660009081526003602052604090205461096590826111db565b6001600160a01b0390921660009081526003602052604090209190915550565b6000546001600160a01b03163314806109b257503360009081526004602052604090205460ff1615156001145b6109ce5760405162461bcd60e51b815260040161042d9061130e565b6001600160a01b03821660009081526003602052604090205482901580610a0d57506001600160a01b0381166000908152600360205260409020544210155b610a595760405162461bcd60e51b815260206004820152601e60248201527f45524332373120546f6b656e7320617265206e6f7420756e6c6f636b65640000604482015260640161042d565b6040516323b872dd60e01b81523060048201526001600160a01b038381166024830152604482018690528416906323b872dd90606401600060405180830381600087803b158015610aa957600080fd5b505af1158015610abd573d6000803e3d6000fd5b5050505050505050565b6000546001600160a01b0316331480610af457503360009081526004602052604090205460ff1615156001145b610b105760405162461bcd60e51b815260040161042d9061130e565b6001600160a01b0382166000908152600260205260408120549003610b775760405162461bcd60e51b815260206004820152601d60248201527f546f6b656e20756e6c6f636b206e6f7420696e697469616c697a65642e000000604482015260640161042d565b600154811115610b995760405162461bcd60e51b815260040161042d906113a2565b6001600160a01b038216600090815260026020526040902054610bbc90826111db565b6001600160a01b0390921660009081526002602052604090209190915550565b6000546001600160a01b0316331480610c0957503360009081526004602052604090205460ff1615156001145b610c255760405162461bcd60e51b815260040161042d9061130e565b600081118015610c355750804710155b610c515760405162461bcd60e51b815260040161042d906113f3565b604051600090339083908381818185875af1925050503d8060008114610c93576040519150601f19603f3d011682016040523d82523d6000602084013e610c98565b606091505b5050905080610ce95760405162461bcd60e51b815260206004820152601b60248201527f4661696c656420746f207769746864726177616c2066756e6473210000000000604482015260640161042d565b5050565b6000546001600160a01b0316331480610d1a57503360009081526004602052604090205460ff1615156001145b610d365760405162461bcd60e51b815260040161042d9061130e565b6001600160a01b03821660009081526003602052604090205481118015610d5c57504281115b610df45760405162461bcd60e51b815260206004820152606060248201527f556e6c6f636b2074696d657374616d7020646f65736e2774206578636565642060448201527f6578697374696e6720756e6c6f636b2074696d65206f7220646f6573206e6f7460648201527f206578636565642063757272656e7420626c6f636b2074696d657374616d702e608482015260a40161042d565b600154610e018242611176565b1115610e1f5760405162461bcd60e51b815260040161042d9061135b565b6001600160a01b03909116600090815260036020526040902055565b610e4361111c565b6001600160a01b038116610ea85760405162461bcd60e51b815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201526564647265737360d01b606482015260840161042d565b610eb18161118b565b50565b6000546001600160a01b0316331480610ee157503360009081526004602052604090205460ff1615156001145b610efd5760405162461bcd60e51b815260040161042d9061130e565b6001600160a01b03811660009081526002602052604090205481901580610f3c57506001600160a01b0381166000908152600260205260409020544210155b610f885760405162461bcd60e51b815260206004820152601e60248201527f455243323020546f6b656e7320617265206e6f7420756e6c6f636b65642e0000604482015260640161042d565b60405163a9059cbb60e01b8152336004820152602481018490526001600160a01b0383169063a9059cbb906044016020604051808303816000875af1158015610fd5573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610ff99190611337565b50505050565b6000546001600160a01b031633148061102c57503360009081526004602052604090205460ff1615156001145b6110485760405162461bcd60e51b815260040161042d9061130e565b6000821180156110585750814710155b6110745760405162461bcd60e51b815260040161042d906113f3565b6000816001600160a01b03168360405160006040518083038185875af1925050503d80600081146110c1576040519150601f19603f3d011682016040523d82523d6000602084013e6110c6565b606091505b50509050806111175760405162461bcd60e51b815260206004820152601960248201527f4661696c656420746f207472616e736665722066756e64732100000000000000604482015260640161042d565b505050565b6000546001600160a01b0316331461086e5760405162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572604482015260640161042d565b6000611182828461144a565b90505b92915050565b600080546001600160a01b038381166001600160a01b0319831681178455604051919092169283917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e09190a35050565b6000611182828461145d565b80356001600160a01b03811681146111fe57600080fd5b919050565b8015158114610eb157600080fd5b6000806040838503121561122457600080fd5b61122d836111e7565b9150602083013561123d81611203565b809150509250929050565b60008060006060848603121561125d57600080fd5b8335925061126d602085016111e7565b915061127b604085016111e7565b90509250925092565b60006020828403121561129657600080fd5b5035919050565b6000602082840312156112af57600080fd5b611182826111e7565b600080604083850312156112cb57600080fd5b6112d4836111e7565b946020939093013593505050565b600080604083850312156112f557600080fd5b82359150611305602084016111e7565b90509250929050565b6020808252600f908201526e2737ba1030baba3437b934bd32b21760891b604082015260600190565b60006020828403121561134957600080fd5b815161135481611203565b9392505050565b60208082526027908201527f4c6f636b206475726174696f6e2065786365656473206d6178206c6f636b20696040820152661b9d195c9d985b60ca1b606082015260800190565b60208082526031908201527f4c6f636b2074696d657374616d7020696e6372656173652065786365656473206040820152701b585e081b1bd8dac81a5b9d195c9d985b607a1b606082015260800190565b60208082526021908201527f496e76616c696420616d6f756e74206f72206e6f7420656e6f756768204554486040820152601760f91b606082015260800190565b634e487b7160e01b600052601160045260246000fd5b8181038181111561118557611185611434565b808201808211156111855761118561143456fea26469706673582212203efdffcac62bb5e3e5c33b8829535623cb14681d7e4e5cedbafb153931f2614e64736f6c63430008110033000000000000000000000000cf322b554b6cfb668221d5b1979b6e4e58ab4dbc00000000000000000000000000000000000000000000000000000000000000400000000000000000000000000000000000000000000000000000000000000000
Deployed Bytecode
0x6080604052600436106101185760003560e01c806398f8f8d0116100a0578063bd8e88c511610064578063bd8e88c514610319578063f2fde38b14610339578063f60a3fa714610359578063faaaad3314610379578063ff8c8dc81461039957600080fd5b806398f8f8d0146102835780639da4d8e3146102a35780639eef328c146102c35780639ff3f125146102e3578063b00a503f146102f957600080fd5b80634f416d54116100e75780634f416d54146101cb57806353005bdf146101eb5780635cf7c9041461020b578063715018a6146102465780638da5cb5b1461025b57600080fd5b80631351cf5114610124578063235240c8146101465780632cc7fde3146101665780634a85280e1461018657600080fd5b3661011f57005b600080fd5b34801561013057600080fd5b5061014461013f366004611211565b6103c6565b005b34801561015257600080fd5b50610144610161366004611248565b610461565b34801561017257600080fd5b50610144610181366004611284565b6105af565b34801561019257600080fd5b506101b66101a136600461129d565b60046020526000908152604090205460ff1681565b60405190151581526020015b60405180910390f35b3480156101d757600080fd5b506101446101e63660046112b8565b6105fd565b3480156101f757600080fd5b506101446102063660046112e2565b61071d565b34801561021757600080fd5b5061023861022636600461129d565b60036020526000908152604090205481565b6040519081526020016101c2565b34801561025257600080fd5b5061014461085c565b34801561026757600080fd5b506000546040516001600160a01b0390911681526020016101c2565b34801561028f57600080fd5b5061014461029e3660046112b8565b610870565b3480156102af57600080fd5b506101446102be366004611248565b610985565b3480156102cf57600080fd5b506101446102de3660046112b8565b610ac7565b3480156102ef57600080fd5b5061023860015481565b34801561030557600080fd5b50610144610314366004611284565b610bdc565b34801561032557600080fd5b506101446103343660046112b8565b610ced565b34801561034557600080fd5b5061014461035436600461129d565b610e3b565b34801561036557600080fd5b506101446103743660046112e2565b610eb4565b34801561038557600080fd5b506101446103943660046112e2565b610fff565b3480156103a557600080fd5b506102386103b436600461129d565b60026020526000908152604090205481565b6103ce61111c565b6000546001600160a01b03166001600160a01b0316826001600160a01b0316036104365760405162461bcd60e51b815260206004820152601460248201527321b0b73737ba1039b2ba1030b99037bbb732b91760611b60448201526064015b60405180910390fd5b6001600160a01b03919091166000908152600460205260409020805460ff1916911515919091179055565b6000546001600160a01b031633148061048e57503360009081526004602052604090205460ff1615156001145b6104aa5760405162461bcd60e51b815260040161042d9061130e565b6001600160a01b038216600090815260026020526040902054829015806104e957506001600160a01b0381166000908152600260205260409020544210155b6105355760405162461bcd60e51b815260206004820152601e60248201527f455243323020546f6b656e7320617265206e6f7420756e6c6f636b65642e0000604482015260640161042d565b60405163a9059cbb60e01b81526001600160a01b0383811660048301526024820186905284169063a9059cbb906044016020604051808303816000875af1158015610584573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906105a89190611337565b5050505050565b6000546001600160a01b03163314806105dc57503360009081526004602052604090205460ff1615156001145b6105f85760405162461bcd60e51b815260040161042d9061130e565b600155565b6000546001600160a01b031633148061062a57503360009081526004602052604090205460ff1615156001145b6106465760405162461bcd60e51b815260040161042d9061130e565b6001600160a01b0382166000908152600260205260409020548111801561066c57504281115b6106d65760405162461bcd60e51b815260206004820152603560248201527f556e6c6f636b2074696d657374616d7020646f65736e2774206578636565642060448201527432bc34b9ba34b733903ab73637b1b5903a34b6b29760591b606482015260840161042d565b6001546106e38242611176565b11156107015760405162461bcd60e51b815260040161042d9061135b565b6001600160a01b03909116600090815260026020526040902055565b6000546001600160a01b031633148061074a57503360009081526004602052604090205460ff1615156001145b6107665760405162461bcd60e51b815260040161042d9061130e565b6001600160a01b038116600090815260036020526040902054819015806107a557506001600160a01b0381166000908152600360205260409020544210155b6107f15760405162461bcd60e51b815260206004820152601e60248201527f45524332373120546f6b656e7320617265206e6f7420756e6c6f636b65640000604482015260640161042d565b6040516323b872dd60e01b8152306004820152336024820152604481018490526001600160a01b038316906323b872dd90606401600060405180830381600087803b15801561083f57600080fd5b505af1158015610853573d6000803e3d6000fd5b50505050505050565b61086461111c565b61086e600061118b565b565b6000546001600160a01b031633148061089d57503360009081526004602052604090205460ff1615156001145b6108b95760405162461bcd60e51b815260040161042d9061130e565b6001600160a01b03821660009081526003602052604081205490036109205760405162461bcd60e51b815260206004820152601d60248201527f546f6b656e20756e6c6f636b206e6f7420696e697469616c697a65642e000000604482015260640161042d565b6001548111156109425760405162461bcd60e51b815260040161042d906113a2565b6001600160a01b03821660009081526003602052604090205461096590826111db565b6001600160a01b0390921660009081526003602052604090209190915550565b6000546001600160a01b03163314806109b257503360009081526004602052604090205460ff1615156001145b6109ce5760405162461bcd60e51b815260040161042d9061130e565b6001600160a01b03821660009081526003602052604090205482901580610a0d57506001600160a01b0381166000908152600360205260409020544210155b610a595760405162461bcd60e51b815260206004820152601e60248201527f45524332373120546f6b656e7320617265206e6f7420756e6c6f636b65640000604482015260640161042d565b6040516323b872dd60e01b81523060048201526001600160a01b038381166024830152604482018690528416906323b872dd90606401600060405180830381600087803b158015610aa957600080fd5b505af1158015610abd573d6000803e3d6000fd5b5050505050505050565b6000546001600160a01b0316331480610af457503360009081526004602052604090205460ff1615156001145b610b105760405162461bcd60e51b815260040161042d9061130e565b6001600160a01b0382166000908152600260205260408120549003610b775760405162461bcd60e51b815260206004820152601d60248201527f546f6b656e20756e6c6f636b206e6f7420696e697469616c697a65642e000000604482015260640161042d565b600154811115610b995760405162461bcd60e51b815260040161042d906113a2565b6001600160a01b038216600090815260026020526040902054610bbc90826111db565b6001600160a01b0390921660009081526002602052604090209190915550565b6000546001600160a01b0316331480610c0957503360009081526004602052604090205460ff1615156001145b610c255760405162461bcd60e51b815260040161042d9061130e565b600081118015610c355750804710155b610c515760405162461bcd60e51b815260040161042d906113f3565b604051600090339083908381818185875af1925050503d8060008114610c93576040519150601f19603f3d011682016040523d82523d6000602084013e610c98565b606091505b5050905080610ce95760405162461bcd60e51b815260206004820152601b60248201527f4661696c656420746f207769746864726177616c2066756e6473210000000000604482015260640161042d565b5050565b6000546001600160a01b0316331480610d1a57503360009081526004602052604090205460ff1615156001145b610d365760405162461bcd60e51b815260040161042d9061130e565b6001600160a01b03821660009081526003602052604090205481118015610d5c57504281115b610df45760405162461bcd60e51b815260206004820152606060248201527f556e6c6f636b2074696d657374616d7020646f65736e2774206578636565642060448201527f6578697374696e6720756e6c6f636b2074696d65206f7220646f6573206e6f7460648201527f206578636565642063757272656e7420626c6f636b2074696d657374616d702e608482015260a40161042d565b600154610e018242611176565b1115610e1f5760405162461bcd60e51b815260040161042d9061135b565b6001600160a01b03909116600090815260036020526040902055565b610e4361111c565b6001600160a01b038116610ea85760405162461bcd60e51b815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201526564647265737360d01b606482015260840161042d565b610eb18161118b565b50565b6000546001600160a01b0316331480610ee157503360009081526004602052604090205460ff1615156001145b610efd5760405162461bcd60e51b815260040161042d9061130e565b6001600160a01b03811660009081526002602052604090205481901580610f3c57506001600160a01b0381166000908152600260205260409020544210155b610f885760405162461bcd60e51b815260206004820152601e60248201527f455243323020546f6b656e7320617265206e6f7420756e6c6f636b65642e0000604482015260640161042d565b60405163a9059cbb60e01b8152336004820152602481018490526001600160a01b0383169063a9059cbb906044016020604051808303816000875af1158015610fd5573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610ff99190611337565b50505050565b6000546001600160a01b031633148061102c57503360009081526004602052604090205460ff1615156001145b6110485760405162461bcd60e51b815260040161042d9061130e565b6000821180156110585750814710155b6110745760405162461bcd60e51b815260040161042d906113f3565b6000816001600160a01b03168360405160006040518083038185875af1925050503d80600081146110c1576040519150601f19603f3d011682016040523d82523d6000602084013e6110c6565b606091505b50509050806111175760405162461bcd60e51b815260206004820152601960248201527f4661696c656420746f207472616e736665722066756e64732100000000000000604482015260640161042d565b505050565b6000546001600160a01b0316331461086e5760405162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572604482015260640161042d565b6000611182828461144a565b90505b92915050565b600080546001600160a01b038381166001600160a01b0319831681178455604051919092169283917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e09190a35050565b6000611182828461145d565b80356001600160a01b03811681146111fe57600080fd5b919050565b8015158114610eb157600080fd5b6000806040838503121561122457600080fd5b61122d836111e7565b9150602083013561123d81611203565b809150509250929050565b60008060006060848603121561125d57600080fd5b8335925061126d602085016111e7565b915061127b604085016111e7565b90509250925092565b60006020828403121561129657600080fd5b5035919050565b6000602082840312156112af57600080fd5b611182826111e7565b600080604083850312156112cb57600080fd5b6112d4836111e7565b946020939093013593505050565b600080604083850312156112f557600080fd5b82359150611305602084016111e7565b90509250929050565b6020808252600f908201526e2737ba1030baba3437b934bd32b21760891b604082015260600190565b60006020828403121561134957600080fd5b815161135481611203565b9392505050565b60208082526027908201527f4c6f636b206475726174696f6e2065786365656473206d6178206c6f636b20696040820152661b9d195c9d985b60ca1b606082015260800190565b60208082526031908201527f4c6f636b2074696d657374616d7020696e6372656173652065786365656473206040820152701b585e081b1bd8dac81a5b9d195c9d985b607a1b606082015260800190565b60208082526021908201527f496e76616c696420616d6f756e74206f72206e6f7420656e6f756768204554486040820152601760f91b606082015260800190565b634e487b7160e01b600052601160045260246000fd5b8181038181111561118557611185611434565b808201808211156111855761118561143456fea26469706673582212203efdffcac62bb5e3e5c33b8829535623cb14681d7e4e5cedbafb153931f2614e64736f6c63430008110033
Constructor Arguments (ABI-Encoded and is the last bytes of the Contract Creation Code above)
000000000000000000000000cf322b554b6cfb668221d5b1979b6e4e58ab4dbc00000000000000000000000000000000000000000000000000000000000000400000000000000000000000000000000000000000000000000000000000000000
-----Decoded View---------------
Arg [0] : _owner (address): 0xcf322b554b6cfb668221d5b1979b6e4e58ab4dbc
-----Encoded View---------------
3 Constructor Arguments found :
Arg [0] : 000000000000000000000000cf322b554b6cfb668221d5b1979b6e4e58ab4dbc
Arg [1] : 0000000000000000000000000000000000000000000000000000000000000040
Arg [2] : 0000000000000000000000000000000000000000000000000000000000000000
Deployed ByteCode Sourcemap
19616:6293:0:-:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;21247:225;;;;;;;;;;-1:-1:-1;21247:225:0;;;;;:::i;:::-;;:::i;:::-;;22330:246;;;;;;;;;;-1:-1:-1;22330:246:0;;;;;:::i;:::-;;:::i;21068:171::-;;;;;;;;;;-1:-1:-1;21068:171:0;;;;;:::i;:::-;;:::i;19894:51::-;;;;;;;;;;-1:-1:-1;19894:51:0;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;1509:14:1;;1502:22;1484:41;;1472:2;1457:18;19894:51:0;;;;;;;;22584:609;;;;;;;;;;-1:-1:-1;22584:609:0;;;;;:::i;:::-;;:::i;21480:315::-;;;;;;;;;;-1:-1:-1;21480:315:0;;;;;:::i;:::-;;:::i;19826:61::-;;;;;;;;;;-1:-1:-1;19826:61:0;;;;;:::i;:::-;;;;;;;;;;;;;;;;;2200:25:1;;;2188:2;2173:18;19826:61:0;2054:177:1;18717:103:0;;;;;;;;;;;;;:::i;18069:87::-;;;;;;;;;;-1:-1:-1;18115:7:0;18142:6;18069:87;;-1:-1:-1;;;;;18142:6:0;;;2382:51:1;;2370:2;2355:18;18069:87:0;2236:203:1;24507:623:0;;;;;;;;;;-1:-1:-1;24507:623:0;;;;;:::i;:::-;;:::i;21803:273::-;;;;;;;;;;-1:-1:-1;21803:273:0;;;;;:::i;:::-;;:::i;23201:615::-;;;;;;;;;;-1:-1:-1;23201:615:0;;;;;:::i;:::-;;:::i;19697:45::-;;;;;;;;;;;;;;;;25138:348;;;;;;;;;;-1:-1:-1;25138:348:0;;;;;:::i;:::-;;:::i;23824:675::-;;;;;;;;;;-1:-1:-1;23824:675:0;;;;;:::i;:::-;;:::i;18975:201::-;;;;;;;;;;-1:-1:-1;18975:201:0;;;;;:::i;:::-;;:::i;22084:238::-;;;;;;;;;;-1:-1:-1;22084:238:0;;;;;:::i;:::-;;:::i;25494:375::-;;;;;;;;;;-1:-1:-1;25494:375:0;;;;;:::i;:::-;;:::i;19759:60::-;;;;;;;;;;-1:-1:-1;19759:60:0;;;;;:::i;:::-;;;;;;;;;;;;;;21247:225;17955:13;:11;:13::i;:::-;18115:7;18142:6;-1:-1:-1;;;;;18142:6:0;-1:-1:-1;;;;;21370:19:0::1;:8;-1:-1:-1::0;;;;;21370:19:0::1;::::0;21362:52:::1;;;::::0;-1:-1:-1;;;21362:52:0;;2646:2:1;21362:52:0::1;::::0;::::1;2628:21:1::0;2685:2;2665:18;;;2658:30;-1:-1:-1;;;2704:18:1;;;2697:50;2764:18;;21362:52:0::1;;;;;;;;;-1:-1:-1::0;;;;;21425:29:0;;;::::1;;::::0;;;:19:::1;:29;::::0;;;;:39;;-1:-1:-1;;21425:39:0::1;::::0;::::1;;::::0;;;::::1;::::0;;21247:225::o;22330:246::-;18115:7;18142:6;-1:-1:-1;;;;;18142:6:0;20933:10;:21;;:64;;-1:-1:-1;20978:10:0;20958:31;;;;:19;:31;;;;;;;;:39;;:31;:39;20933:64;20911:129;;;;-1:-1:-1;;;20911:129:0;;;;;;;:::i;:::-;-1:-1:-1;;;;;20308:45:0;::::1;;::::0;;;:25:::1;:45;::::0;;;;;22488:18;;20308:50;;:152:::1;;-1:-1:-1::0;;;;;;20415:45:0;::::1;;::::0;;;:25:::1;:45;::::0;;;;;20379:15:::1;:81;;20308:152;20286:232;;;::::0;-1:-1:-1;;;20286:232:0;;3339:2:1;20286:232:0::1;::::0;::::1;3321:21:1::0;3378:2;3358:18;;;3351:30;3417:32;3397:18;;;3390:60;3467:18;;20286:232:0::1;3137:354:1::0;20286:232:0::1;22519:49:::2;::::0;-1:-1:-1;;;22519:49:0;;-1:-1:-1;;;;;3688:32:1;;;22519:49:0::2;::::0;::::2;3670:51:1::0;3737:18;;;3730:34;;;22519:35:0;::::2;::::0;::::2;::::0;3643:18:1;;22519:49:0::2;;;;;;;;;;;;;;;;;;::::0;::::2;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;21051:1:::1;22330:246:::0;;;:::o;21068:171::-;18115:7;18142:6;-1:-1:-1;;;;;18142:6:0;20933:10;:21;;:64;;-1:-1:-1;20978:10:0;20958:31;;;;:19;:31;;;;;;;;:39;;:31;:39;20933:64;20911:129;;;;-1:-1:-1;;;20911:129:0;;;;;;;:::i;:::-;21189:19:::1;:42:::0;21068:171::o;22584:609::-;18115:7;18142:6;-1:-1:-1;;;;;18142:6:0;20933:10;:21;;:64;;-1:-1:-1;20978:10:0;20958:31;;;;:19;:31;;;;;;;;:39;;:31;:39;20933:64;20911:129;;;;-1:-1:-1;;;20911:129:0;;;;;;;:::i;:::-;-1:-1:-1;;;;;22765:45:0;::::1;;::::0;;;:25:::1;:45;::::0;;;;;22746:64;::::1;:119:::0;::::1;;;;22850:15;22831:16;:34;22746:119;22724:222;;;::::0;-1:-1:-1;;;22724:222:0;;4227:2:1;22724:222:0::1;::::0;::::1;4209:21:1::0;4266:2;4246:18;;;4239:30;4305:34;4285:18;;;4278:62;-1:-1:-1;;;4356:18:1;;;4349:51;4417:19;;22724:222:0::1;4025:417:1::0;22724:222:0::1;23022:19;::::0;22981:37:::1;:16:::0;23002:15:::1;22981:20;:37::i;:::-;:60;;22959:149;;;;-1:-1:-1::0;;;22959:149:0::1;;;;;;;:::i;:::-;-1:-1:-1::0;;;;;23121:45:0;;::::1;;::::0;;;:25:::1;:45;::::0;;;;:64;22584:609::o;21480:315::-;18115:7;18142:6;-1:-1:-1;;;;;18142:6:0;20933:10;:21;;:64;;-1:-1:-1;20978:10:0;20958:31;;;;:19;:31;;;;;;;;:39;;:31;:39;20933:64;20911:129;;;;-1:-1:-1;;;20911:129:0;;;;;;;:::i;:::-;-1:-1:-1;;;;;20634:47:0;::::1;;::::0;;;:26:::1;:47;::::0;;;;;21622:19;;20634:52;;:156:::1;;-1:-1:-1::0;;;;;;20743:47:0;::::1;;::::0;;;:26:::1;:47;::::0;;;;;20707:15:::1;:83;;20634:156;20612:236;;;::::0;-1:-1:-1;;;20612:236:0;;5057:2:1;20612:236:0::1;::::0;::::1;5039:21:1::0;5096:2;5076:18;;;5069:30;5135:32;5115:18;;;5108:60;5185:18;;20612:236:0::1;4855:354:1::0;20612:236:0::1;21659:128:::2;::::0;-1:-1:-1;;;21659:128:0;;21723:4:::2;21659:128;::::0;::::2;5454:34:1::0;21743:10:0::2;5504:18:1::0;;;5497:43;5556:18;;;5549:34;;;-1:-1:-1;;;;;21659:41:0;::::2;::::0;::::2;::::0;5389:18:1;;21659:128:0::2;;;;;;;;;;;;;;;;;::::0;::::2;;;;;;;;;;;;::::0;::::2;;;;;;;;;21051:1:::1;21480:315:::0;;:::o;18717:103::-;17955:13;:11;:13::i;:::-;18782:30:::1;18809:1;18782:18;:30::i;:::-;18717:103::o:0;24507:623::-;18115:7;18142:6;-1:-1:-1;;;;;18142:6:0;20933:10;:21;;:64;;-1:-1:-1;20978:10:0;20958:31;;;;:19;:31;;;;;;;;:39;;:31;:39;20933:64;20911:129;;;;-1:-1:-1;;;20911:129:0;;;;;;;:::i;:::-;-1:-1:-1;;;;;24678:47:0;::::1;;::::0;;;:26:::1;:47;::::0;;;;;:52;;24656:131:::1;;;::::0;-1:-1:-1;;;24656:131:0;;5796:2:1;24656:131:0::1;::::0;::::1;5778:21:1::0;5835:2;5815:18;;;5808:30;5874:31;5854:18;;;5847:59;5923:18;;24656:131:0::1;5594:353:1::0;24656:131:0::1;24844:19;;24822:18;:41;;24800:140;;;;-1:-1:-1::0;;;24800:140:0::1;;;;;;;:::i;:::-;-1:-1:-1::0;;;;;25027:47:0;::::1;;::::0;;;:26:::1;:47;::::0;;;;;:95:::1;::::0;25093:18;25027:51:::1;:95::i;:::-;-1:-1:-1::0;;;;;24953:71:0;;::::1;;::::0;;;:26:::1;:71;::::0;;;;:169;;;;-1:-1:-1;24507:623:0:o;21803:273::-;18115:7;18142:6;-1:-1:-1;;;;;18142:6:0;20933:10;:21;;:64;;-1:-1:-1;20978:10:0;20958:31;;;;:19;:31;;;;;;;;:39;;:31;:39;20933:64;20911:129;;;;-1:-1:-1;;;20911:129:0;;;;;;;:::i;:::-;-1:-1:-1;;;;;20634:47:0;::::1;;::::0;;;:26:::1;:47;::::0;;;;;21965:19;;20634:52;;:156:::1;;-1:-1:-1::0;;;;;;20743:47:0;::::1;;::::0;;;:26:::1;:47;::::0;;;;;20707:15:::1;:83;;20634:156;20612:236;;;::::0;-1:-1:-1;;;20612:236:0;;5057:2:1;20612:236:0::1;::::0;::::1;5039:21:1::0;5096:2;5076:18;;;5069:30;5135:32;5115:18;;;5108:60;5185:18;;20612:236:0::1;4855:354:1::0;20612:236:0::1;21997:71:::2;::::0;-1:-1:-1;;;21997:71:0;;22047:4:::2;21997:71;::::0;::::2;5454:34:1::0;-1:-1:-1;;;;;5524:15:1;;;5504:18;;;5497:43;5556:18;;;5549:34;;;21997:41:0;::::2;::::0;::::2;::::0;5389:18:1;;21997:71:0::2;;;;;;;;;;;;;;;;;::::0;::::2;;;;;;;;;;;;::::0;::::2;;;;;;;;;21051:1:::1;21803:273:::0;;;:::o;23201:615::-;18115:7;18142:6;-1:-1:-1;;;;;18142:6:0;20933:10;:21;;:64;;-1:-1:-1;20978:10:0;20958:31;;;;:19;:31;;;;;;;;:39;;:31;:39;20933:64;20911:129;;;;-1:-1:-1;;;20911:129:0;;;;;;;:::i;:::-;-1:-1:-1;;;;;23370:45:0;::::1;;::::0;;;:25:::1;:45;::::0;;;;;:50;;23348:129:::1;;;::::0;-1:-1:-1;;;23348:129:0;;5796:2:1;23348:129:0::1;::::0;::::1;5778:21:1::0;5835:2;5815:18;;;5808:30;5874:31;5854:18;;;5847:59;5923:18;;23348:129:0::1;5594:353:1::0;23348:129:0::1;23534:19;;23512:18;:41;;23490:140;;;;-1:-1:-1::0;;;23490:140:0::1;;;;;;;:::i;:::-;-1:-1:-1::0;;;;;23715:45:0;::::1;;::::0;;;:25:::1;:45;::::0;;;;;:93:::1;::::0;23779:18;23715:49:::1;:93::i;:::-;-1:-1:-1::0;;;;;23643:69:0;;::::1;;::::0;;;:25:::1;:69;::::0;;;;:165;;;;-1:-1:-1;23201:615:0:o;25138:348::-;18115:7;18142:6;-1:-1:-1;;;;;18142:6:0;20933:10;:21;;:64;;-1:-1:-1;20978:10:0;20958:31;;;;:19;:31;;;;;;;;:39;;:31;:39;20933:64;20911:129;;;;-1:-1:-1;;;20911:129:0;;;;;;;:::i;:::-;25246:1:::1;25236:7;:11;:47;;;;;25276:7;25251:21;:32;;25236:47;25214:130;;;;-1:-1:-1::0;;;25214:130:0::1;;;;;;;:::i;:::-;25374:44;::::0;25356:12:::1;::::0;25382:10:::1;::::0;25406:7;;25356:12;25374:44;25356:12;25374:44;25406:7;25382:10;25374:44:::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;25355:63;;;25439:7;25431:47;;;::::0;-1:-1:-1;;;25431:47:0;;7184:2:1;25431:47:0::1;::::0;::::1;7166:21:1::0;7223:2;7203:18;;;7196:30;7262:29;7242:18;;;7235:57;7309:18;;25431:47:0::1;6982:351:1::0;25431:47:0::1;25203:283;25138:348:::0;:::o;23824:675::-;18115:7;18142:6;-1:-1:-1;;;;;18142:6:0;20933:10;:21;;:64;;-1:-1:-1;20978:10:0;20958:31;;;;:19;:31;;;;;;;;:39;;:31;:39;20933:64;20911:129;;;;-1:-1:-1;;;20911:129:0;;;;;;;:::i;:::-;-1:-1:-1;;;;;24024:47:0;::::1;;::::0;;;:26:::1;:47;::::0;;;;;23988:83;::::1;:138:::0;::::1;;;;24111:15;24092:16;:34;23988:138;23966:284;;;::::0;-1:-1:-1;;;23966:284:0;;7540:2:1;23966:284:0::1;::::0;::::1;7522:21:1::0;7579:2;7559:18;;;7552:30;7618:34;7598:18;;;7591:62;7689:34;7669:18;;;7662:62;7761:34;7740:19;;;7733:63;7813:19;;23966:284:0::1;7338:500:1::0;23966:284:0::1;24326:19;::::0;24285:37:::1;:16:::0;24306:15:::1;24285:20;:37::i;:::-;:60;;24263:149;;;;-1:-1:-1::0;;;24263:149:0::1;;;;;;;:::i;:::-;-1:-1:-1::0;;;;;24425:47:0;;::::1;;::::0;;;:26:::1;:47;::::0;;;;:66;23824:675::o;18975:201::-;17955:13;:11;:13::i;:::-;-1:-1:-1;;;;;19064:22:0;::::1;19056:73;;;::::0;-1:-1:-1;;;19056:73:0;;8045:2:1;19056:73:0::1;::::0;::::1;8027:21:1::0;8084:2;8064:18;;;8057:30;8123:34;8103:18;;;8096:62;-1:-1:-1;;;8174:18:1;;;8167:36;8220:19;;19056:73:0::1;7843:402:1::0;19056:73:0::1;19140:28;19159:8;19140:18;:28::i;:::-;18975:201:::0;:::o;22084:238::-;18115:7;18142:6;-1:-1:-1;;;;;18142:6:0;20933:10;:21;;:64;;-1:-1:-1;20978:10:0;20958:31;;;;:19;:31;;;;;;;;:39;;:31;:39;20933:64;20911:129;;;;-1:-1:-1;;;20911:129:0;;;;;;;:::i;:::-;-1:-1:-1;;;;;20308:45:0;::::1;;::::0;;;:25:::1;:45;::::0;;;;;22222:18;;20308:50;;:152:::1;;-1:-1:-1::0;;;;;;20415:45:0;::::1;;::::0;;;:25:::1;:45;::::0;;;;;20379:15:::1;:81;;20308:152;20286:232;;;::::0;-1:-1:-1;;;20286:232:0;;3339:2:1;20286:232:0::1;::::0;::::1;3321:21:1::0;3378:2;3358:18;;;3351:30;3417:32;3397:18;;;3390:60;3467:18;;20286:232:0::1;3137:354:1::0;20286:232:0::1;22258:56:::2;::::0;-1:-1:-1;;;22258:56:0;;22294:10:::2;22258:56;::::0;::::2;3670:51:1::0;3737:18;;;3730:34;;;-1:-1:-1;;;;;22258:35:0;::::2;::::0;::::2;::::0;3643:18:1;;22258:56:0::2;;;;;;;;;;;;;;;;;;::::0;::::2;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;21051:1:::1;22084:238:::0;;:::o;25494:375::-;18115:7;18142:6;-1:-1:-1;;;;;18142:6:0;20933:10;:21;;:64;;-1:-1:-1;20978:10:0;20958:31;;;;:19;:31;;;;;;;;:39;;:31;:39;20933:64;20911:129;;;;-1:-1:-1;;;20911:129:0;;;;;;;:::i;:::-;25638:1:::1;25628:7;:11;:47;;;;;25668:7;25643:21;:32;;25628:47;25606:130;;;;-1:-1:-1::0;;;25606:130:0::1;;;;;;;:::i;:::-;25748:12;25774:3;-1:-1:-1::0;;;;;25766:17:0::1;25791:7;25766:37;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;25747:56;;;25824:7;25816:45;;;::::0;-1:-1:-1;;;25816:45:0;;8452:2:1;25816:45:0::1;::::0;::::1;8434:21:1::0;8491:2;8471:18;;;8464:30;8530:27;8510:18;;;8503:55;8575:18;;25816:45:0::1;8250:349:1::0;25816:45:0::1;25595:274;25494:375:::0;;:::o;18234:132::-;18115:7;18142:6;-1:-1:-1;;;;;18142:6:0;16700:10;18298:23;18290:68;;;;-1:-1:-1;;;18290:68:0;;8806:2:1;18290:68:0;;;8788:21:1;;;8825:18;;;8818:30;8884:34;8864:18;;;8857:62;8936:18;;18290:68:0;8604:356:1;3257:98:0;3315:7;3342:5;3346:1;3342;:5;:::i;:::-;3335:12;;3257:98;;;;;:::o;19336:191::-;19410:16;19429:6;;-1:-1:-1;;;;;19446:17:0;;;-1:-1:-1;;;;;;19446:17:0;;;;;;19479:40;;19429:6;;;;;;;19479:40;;19410:16;19479:40;19399:128;19336:191;:::o;2876:98::-;2934:7;2961:5;2965:1;2961;:5;:::i;14:173:1:-;82:20;;-1:-1:-1;;;;;131:31:1;;121:42;;111:70;;177:1;174;167:12;111:70;14:173;;;:::o;192:118::-;278:5;271:13;264:21;257:5;254:32;244:60;;300:1;297;290:12;315:315;380:6;388;441:2;429:9;420:7;416:23;412:32;409:52;;;457:1;454;447:12;409:52;480:29;499:9;480:29;:::i;:::-;470:39;;559:2;548:9;544:18;531:32;572:28;594:5;572:28;:::i;:::-;619:5;609:15;;;315:315;;;;;:::o;635:328::-;712:6;720;728;781:2;769:9;760:7;756:23;752:32;749:52;;;797:1;794;787:12;749:52;833:9;820:23;810:33;;862:38;896:2;885:9;881:18;862:38;:::i;:::-;852:48;;919:38;953:2;942:9;938:18;919:38;:::i;:::-;909:48;;635:328;;;;;:::o;968:180::-;1027:6;1080:2;1068:9;1059:7;1055:23;1051:32;1048:52;;;1096:1;1093;1086:12;1048:52;-1:-1:-1;1119:23:1;;968:180;-1:-1:-1;968:180:1:o;1153:186::-;1212:6;1265:2;1253:9;1244:7;1240:23;1236:32;1233:52;;;1281:1;1278;1271:12;1233:52;1304:29;1323:9;1304:29;:::i;1536:254::-;1604:6;1612;1665:2;1653:9;1644:7;1640:23;1636:32;1633:52;;;1681:1;1678;1671:12;1633:52;1704:29;1723:9;1704:29;:::i;:::-;1694:39;1780:2;1765:18;;;;1752:32;;-1:-1:-1;;;1536:254:1:o;1795:::-;1863:6;1871;1924:2;1912:9;1903:7;1899:23;1895:32;1892:52;;;1940:1;1937;1930:12;1892:52;1976:9;1963:23;1953:33;;2005:38;2039:2;2028:9;2024:18;2005:38;:::i;:::-;1995:48;;1795:254;;;;;:::o;2793:339::-;2995:2;2977:21;;;3034:2;3014:18;;;3007:30;-1:-1:-1;;;3068:2:1;3053:18;;3046:45;3123:2;3108:18;;2793:339::o;3775:245::-;3842:6;3895:2;3883:9;3874:7;3870:23;3866:32;3863:52;;;3911:1;3908;3901:12;3863:52;3943:9;3937:16;3962:28;3984:5;3962:28;:::i;:::-;4009:5;3775:245;-1:-1:-1;;;3775:245:1:o;4447:403::-;4649:2;4631:21;;;4688:2;4668:18;;;4661:30;4727:34;4722:2;4707:18;;4700:62;-1:-1:-1;;;4793:2:1;4778:18;;4771:37;4840:3;4825:19;;4447:403::o;5952:413::-;6154:2;6136:21;;;6193:2;6173:18;;;6166:30;6232:34;6227:2;6212:18;;6205:62;-1:-1:-1;;;6298:2:1;6283:18;;6276:47;6355:3;6340:19;;5952:413::o;6370:397::-;6572:2;6554:21;;;6611:2;6591:18;;;6584:30;6650:34;6645:2;6630:18;;6623:62;-1:-1:-1;;;6716:2:1;6701:18;;6694:31;6757:3;6742:19;;6370:397::o;8965:127::-;9026:10;9021:3;9017:20;9014:1;9007:31;9057:4;9054:1;9047:15;9081:4;9078:1;9071:15;9097:128;9164:9;;;9185:11;;;9182:37;;;9199:18;;:::i;9230:125::-;9295:9;;;9316:10;;;9313:36;;;9329:18;;:::i
Swarm Source
ipfs://3efdffcac62bb5e3e5c33b8829535623cb14681d7e4e5cedbafb153931f2614e
Age | Block | Fee Address | BC Fee Address | Voting Power | Jailed | Incoming |
---|
Make sure to use the "Vote Down" button for any spammy posts, and the "Vote Up" for interesting conversations.