Contract Overview
My Name Tag:
Not Available, login to update
[ Download CSV Export ]
Contract Name:
Miner
Compiler Version
v0.8.9+commit.e5eed63a
Contract Source Code (Solidity)
/** *Submitted for verification at cronoscan.com on 2022-05-06 */ // File @openzeppelin/contracts/token/ERC20/[email protected] // SPDX-License-Identifier: MIT // 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 hardhat/[email protected] pragma solidity >=0.4.22 <0.9.0; library console { address constant CONSOLE_ADDRESS = address(0x000000000000000000636F6e736F6c652e6c6f67); function _sendLogPayload(bytes memory payload) private view { uint256 payloadLength = payload.length; address consoleAddress = CONSOLE_ADDRESS; assembly { let payloadStart := add(payload, 32) let r := staticcall( gas(), consoleAddress, payloadStart, payloadLength, 0, 0 ) } } function log() internal view { _sendLogPayload(abi.encodeWithSignature("log()")); } function logInt(int256 p0) internal view { _sendLogPayload(abi.encodeWithSignature("log(int)", p0)); } function logUint(uint256 p0) internal view { _sendLogPayload(abi.encodeWithSignature("log(uint)", p0)); } function logString(string memory p0) internal view { _sendLogPayload(abi.encodeWithSignature("log(string)", p0)); } function logBool(bool p0) internal view { _sendLogPayload(abi.encodeWithSignature("log(bool)", p0)); } function logAddress(address p0) internal view { _sendLogPayload(abi.encodeWithSignature("log(address)", p0)); } function logBytes(bytes memory p0) internal view { _sendLogPayload(abi.encodeWithSignature("log(bytes)", p0)); } function logBytes1(bytes1 p0) internal view { _sendLogPayload(abi.encodeWithSignature("log(bytes1)", p0)); } function logBytes2(bytes2 p0) internal view { _sendLogPayload(abi.encodeWithSignature("log(bytes2)", p0)); } function logBytes3(bytes3 p0) internal view { _sendLogPayload(abi.encodeWithSignature("log(bytes3)", p0)); } function logBytes4(bytes4 p0) internal view { _sendLogPayload(abi.encodeWithSignature("log(bytes4)", p0)); } function logBytes5(bytes5 p0) internal view { _sendLogPayload(abi.encodeWithSignature("log(bytes5)", p0)); } function logBytes6(bytes6 p0) internal view { _sendLogPayload(abi.encodeWithSignature("log(bytes6)", p0)); } function logBytes7(bytes7 p0) internal view { _sendLogPayload(abi.encodeWithSignature("log(bytes7)", p0)); } function logBytes8(bytes8 p0) internal view { _sendLogPayload(abi.encodeWithSignature("log(bytes8)", p0)); } function logBytes9(bytes9 p0) internal view { _sendLogPayload(abi.encodeWithSignature("log(bytes9)", p0)); } function logBytes10(bytes10 p0) internal view { _sendLogPayload(abi.encodeWithSignature("log(bytes10)", p0)); } function logBytes11(bytes11 p0) internal view { _sendLogPayload(abi.encodeWithSignature("log(bytes11)", p0)); } function logBytes12(bytes12 p0) internal view { _sendLogPayload(abi.encodeWithSignature("log(bytes12)", p0)); } function logBytes13(bytes13 p0) internal view { _sendLogPayload(abi.encodeWithSignature("log(bytes13)", p0)); } function logBytes14(bytes14 p0) internal view { _sendLogPayload(abi.encodeWithSignature("log(bytes14)", p0)); } function logBytes15(bytes15 p0) internal view { _sendLogPayload(abi.encodeWithSignature("log(bytes15)", p0)); } function logBytes16(bytes16 p0) internal view { _sendLogPayload(abi.encodeWithSignature("log(bytes16)", p0)); } function logBytes17(bytes17 p0) internal view { _sendLogPayload(abi.encodeWithSignature("log(bytes17)", p0)); } function logBytes18(bytes18 p0) internal view { _sendLogPayload(abi.encodeWithSignature("log(bytes18)", p0)); } function logBytes19(bytes19 p0) internal view { _sendLogPayload(abi.encodeWithSignature("log(bytes19)", p0)); } function logBytes20(bytes20 p0) internal view { _sendLogPayload(abi.encodeWithSignature("log(bytes20)", p0)); } function logBytes21(bytes21 p0) internal view { _sendLogPayload(abi.encodeWithSignature("log(bytes21)", p0)); } function logBytes22(bytes22 p0) internal view { _sendLogPayload(abi.encodeWithSignature("log(bytes22)", p0)); } function logBytes23(bytes23 p0) internal view { _sendLogPayload(abi.encodeWithSignature("log(bytes23)", p0)); } function logBytes24(bytes24 p0) internal view { _sendLogPayload(abi.encodeWithSignature("log(bytes24)", p0)); } function logBytes25(bytes25 p0) internal view { _sendLogPayload(abi.encodeWithSignature("log(bytes25)", p0)); } function logBytes26(bytes26 p0) internal view { _sendLogPayload(abi.encodeWithSignature("log(bytes26)", p0)); } function logBytes27(bytes27 p0) internal view { _sendLogPayload(abi.encodeWithSignature("log(bytes27)", p0)); } function logBytes28(bytes28 p0) internal view { _sendLogPayload(abi.encodeWithSignature("log(bytes28)", p0)); } function logBytes29(bytes29 p0) internal view { _sendLogPayload(abi.encodeWithSignature("log(bytes29)", p0)); } function logBytes30(bytes30 p0) internal view { _sendLogPayload(abi.encodeWithSignature("log(bytes30)", p0)); } function logBytes31(bytes31 p0) internal view { _sendLogPayload(abi.encodeWithSignature("log(bytes31)", p0)); } function logBytes32(bytes32 p0) internal view { _sendLogPayload(abi.encodeWithSignature("log(bytes32)", p0)); } function log(uint256 p0) internal view { _sendLogPayload(abi.encodeWithSignature("log(uint)", p0)); } function log(string memory p0) internal view { _sendLogPayload(abi.encodeWithSignature("log(string)", p0)); } function log(bool p0) internal view { _sendLogPayload(abi.encodeWithSignature("log(bool)", p0)); } function log(address p0) internal view { _sendLogPayload(abi.encodeWithSignature("log(address)", p0)); } function log(uint256 p0, uint256 p1) internal view { _sendLogPayload(abi.encodeWithSignature("log(uint,uint)", p0, p1)); } function log(uint256 p0, string memory p1) internal view { _sendLogPayload(abi.encodeWithSignature("log(uint,string)", p0, p1)); } function log(uint256 p0, bool p1) internal view { _sendLogPayload(abi.encodeWithSignature("log(uint,bool)", p0, p1)); } function log(uint256 p0, address p1) internal view { _sendLogPayload(abi.encodeWithSignature("log(uint,address)", p0, p1)); } function log(string memory p0, uint256 p1) internal view { _sendLogPayload(abi.encodeWithSignature("log(string,uint)", p0, p1)); } function log(string memory p0, string memory p1) internal view { _sendLogPayload(abi.encodeWithSignature("log(string,string)", p0, p1)); } function log(string memory p0, bool p1) internal view { _sendLogPayload(abi.encodeWithSignature("log(string,bool)", p0, p1)); } function log(string memory p0, address p1) internal view { _sendLogPayload(abi.encodeWithSignature("log(string,address)", p0, p1)); } function log(bool p0, uint256 p1) internal view { _sendLogPayload(abi.encodeWithSignature("log(bool,uint)", p0, p1)); } function log(bool p0, string memory p1) internal view { _sendLogPayload(abi.encodeWithSignature("log(bool,string)", p0, p1)); } function log(bool p0, bool p1) internal view { _sendLogPayload(abi.encodeWithSignature("log(bool,bool)", p0, p1)); } function log(bool p0, address p1) internal view { _sendLogPayload(abi.encodeWithSignature("log(bool,address)", p0, p1)); } function log(address p0, uint256 p1) internal view { _sendLogPayload(abi.encodeWithSignature("log(address,uint)", p0, p1)); } function log(address p0, string memory p1) internal view { _sendLogPayload(abi.encodeWithSignature("log(address,string)", p0, p1)); } function log(address p0, bool p1) internal view { _sendLogPayload(abi.encodeWithSignature("log(address,bool)", p0, p1)); } function log(address p0, address p1) internal view { _sendLogPayload( abi.encodeWithSignature("log(address,address)", p0, p1) ); } function log( uint256 p0, uint256 p1, uint256 p2 ) internal view { _sendLogPayload( abi.encodeWithSignature("log(uint,uint,uint)", p0, p1, p2) ); } function log( uint256 p0, uint256 p1, string memory p2 ) internal view { _sendLogPayload( abi.encodeWithSignature("log(uint,uint,string)", p0, p1, p2) ); } function log( uint256 p0, uint256 p1, bool p2 ) internal view { _sendLogPayload( abi.encodeWithSignature("log(uint,uint,bool)", p0, p1, p2) ); } function log( uint256 p0, uint256 p1, address p2 ) internal view { _sendLogPayload( abi.encodeWithSignature("log(uint,uint,address)", p0, p1, p2) ); } function log( uint256 p0, string memory p1, uint256 p2 ) internal view { _sendLogPayload( abi.encodeWithSignature("log(uint,string,uint)", p0, p1, p2) ); } function log( uint256 p0, string memory p1, string memory p2 ) internal view { _sendLogPayload( abi.encodeWithSignature("log(uint,string,string)", p0, p1, p2) ); } function log( uint256 p0, string memory p1, bool p2 ) internal view { _sendLogPayload( abi.encodeWithSignature("log(uint,string,bool)", p0, p1, p2) ); } function log( uint256 p0, string memory p1, address p2 ) internal view { _sendLogPayload( abi.encodeWithSignature("log(uint,string,address)", p0, p1, p2) ); } function log( uint256 p0, bool p1, uint256 p2 ) internal view { _sendLogPayload( abi.encodeWithSignature("log(uint,bool,uint)", p0, p1, p2) ); } function log( uint256 p0, bool p1, string memory p2 ) internal view { _sendLogPayload( abi.encodeWithSignature("log(uint,bool,string)", p0, p1, p2) ); } function log( uint256 p0, bool p1, bool p2 ) internal view { _sendLogPayload( abi.encodeWithSignature("log(uint,bool,bool)", p0, p1, p2) ); } function log( uint256 p0, bool p1, address p2 ) internal view { _sendLogPayload( abi.encodeWithSignature("log(uint,bool,address)", p0, p1, p2) ); } function log( uint256 p0, address p1, uint256 p2 ) internal view { _sendLogPayload( abi.encodeWithSignature("log(uint,address,uint)", p0, p1, p2) ); } function log( uint256 p0, address p1, string memory p2 ) internal view { _sendLogPayload( abi.encodeWithSignature("log(uint,address,string)", p0, p1, p2) ); } function log( uint256 p0, address p1, bool p2 ) internal view { _sendLogPayload( abi.encodeWithSignature("log(uint,address,bool)", p0, p1, p2) ); } function log( uint256 p0, address p1, address p2 ) internal view { _sendLogPayload( abi.encodeWithSignature("log(uint,address,address)", p0, p1, p2) ); } function log( string memory p0, uint256 p1, uint256 p2 ) internal view { _sendLogPayload( abi.encodeWithSignature("log(string,uint,uint)", p0, p1, p2) ); } function log( string memory p0, uint256 p1, string memory p2 ) internal view { _sendLogPayload( abi.encodeWithSignature("log(string,uint,string)", p0, p1, p2) ); } function log( string memory p0, uint256 p1, bool p2 ) internal view { _sendLogPayload( abi.encodeWithSignature("log(string,uint,bool)", p0, p1, p2) ); } function log( string memory p0, uint256 p1, address p2 ) internal view { _sendLogPayload( abi.encodeWithSignature("log(string,uint,address)", p0, p1, p2) ); } function log( string memory p0, string memory p1, uint256 p2 ) internal view { _sendLogPayload( abi.encodeWithSignature("log(string,string,uint)", p0, p1, p2) ); } function log( string memory p0, string memory p1, string memory p2 ) internal view { _sendLogPayload( abi.encodeWithSignature("log(string,string,string)", p0, p1, p2) ); } function log( string memory p0, string memory p1, bool p2 ) internal view { _sendLogPayload( abi.encodeWithSignature("log(string,string,bool)", p0, p1, p2) ); } function log( string memory p0, string memory p1, address p2 ) internal view { _sendLogPayload( abi.encodeWithSignature("log(string,string,address)", p0, p1, p2) ); } function log( string memory p0, bool p1, uint256 p2 ) internal view { _sendLogPayload( abi.encodeWithSignature("log(string,bool,uint)", p0, p1, p2) ); } function log( string memory p0, bool p1, string memory p2 ) internal view { _sendLogPayload( abi.encodeWithSignature("log(string,bool,string)", p0, p1, p2) ); } function log( string memory p0, bool p1, bool p2 ) internal view { _sendLogPayload( abi.encodeWithSignature("log(string,bool,bool)", p0, p1, p2) ); } function log( string memory p0, bool p1, address p2 ) internal view { _sendLogPayload( abi.encodeWithSignature("log(string,bool,address)", p0, p1, p2) ); } function log( string memory p0, address p1, uint256 p2 ) internal view { _sendLogPayload( abi.encodeWithSignature("log(string,address,uint)", p0, p1, p2) ); } function log( string memory p0, address p1, string memory p2 ) internal view { _sendLogPayload( abi.encodeWithSignature("log(string,address,string)", p0, p1, p2) ); } function log( string memory p0, address p1, bool p2 ) internal view { _sendLogPayload( abi.encodeWithSignature("log(string,address,bool)", p0, p1, p2) ); } function log( string memory p0, address p1, address p2 ) internal view { _sendLogPayload( abi.encodeWithSignature("log(string,address,address)", p0, p1, p2) ); } function log( bool p0, uint256 p1, uint256 p2 ) internal view { _sendLogPayload( abi.encodeWithSignature("log(bool,uint,uint)", p0, p1, p2) ); } function log( bool p0, uint256 p1, string memory p2 ) internal view { _sendLogPayload( abi.encodeWithSignature("log(bool,uint,string)", p0, p1, p2) ); } function log( bool p0, uint256 p1, bool p2 ) internal view { _sendLogPayload( abi.encodeWithSignature("log(bool,uint,bool)", p0, p1, p2) ); } function log( bool p0, uint256 p1, address p2 ) internal view { _sendLogPayload( abi.encodeWithSignature("log(bool,uint,address)", p0, p1, p2) ); } function log( bool p0, string memory p1, uint256 p2 ) internal view { _sendLogPayload( abi.encodeWithSignature("log(bool,string,uint)", p0, p1, p2) ); } function log( bool p0, string memory p1, string memory p2 ) internal view { _sendLogPayload( abi.encodeWithSignature("log(bool,string,string)", p0, p1, p2) ); } function log( bool p0, string memory p1, bool p2 ) internal view { _sendLogPayload( abi.encodeWithSignature("log(bool,string,bool)", p0, p1, p2) ); } function log( bool p0, string memory p1, address p2 ) internal view { _sendLogPayload( abi.encodeWithSignature("log(bool,string,address)", p0, p1, p2) ); } function log( bool p0, bool p1, uint256 p2 ) internal view { _sendLogPayload( abi.encodeWithSignature("log(bool,bool,uint)", p0, p1, p2) ); } function log( bool p0, bool p1, string memory p2 ) internal view { _sendLogPayload( abi.encodeWithSignature("log(bool,bool,string)", p0, p1, p2) ); } function log( bool p0, bool p1, bool p2 ) internal view { _sendLogPayload( abi.encodeWithSignature("log(bool,bool,bool)", p0, p1, p2) ); } function log( bool p0, bool p1, address p2 ) internal view { _sendLogPayload( abi.encodeWithSignature("log(bool,bool,address)", p0, p1, p2) ); } function log( bool p0, address p1, uint256 p2 ) internal view { _sendLogPayload( abi.encodeWithSignature("log(bool,address,uint)", p0, p1, p2) ); } function log( bool p0, address p1, string memory p2 ) internal view { _sendLogPayload( abi.encodeWithSignature("log(bool,address,string)", p0, p1, p2) ); } function log( bool p0, address p1, bool p2 ) internal view { _sendLogPayload( abi.encodeWithSignature("log(bool,address,bool)", p0, p1, p2) ); } function log( bool p0, address p1, address p2 ) internal view { _sendLogPayload( abi.encodeWithSignature("log(bool,address,address)", p0, p1, p2) ); } function log( address p0, uint256 p1, uint256 p2 ) internal view { _sendLogPayload( abi.encodeWithSignature("log(address,uint,uint)", p0, p1, p2) ); } function log( address p0, uint256 p1, string memory p2 ) internal view { _sendLogPayload( abi.encodeWithSignature("log(address,uint,string)", p0, p1, p2) ); } function log( address p0, uint256 p1, bool p2 ) internal view { _sendLogPayload( abi.encodeWithSignature("log(address,uint,bool)", p0, p1, p2) ); } function log( address p0, uint256 p1, address p2 ) internal view { _sendLogPayload( abi.encodeWithSignature("log(address,uint,address)", p0, p1, p2) ); } function log( address p0, string memory p1, uint256 p2 ) internal view { _sendLogPayload( abi.encodeWithSignature("log(address,string,uint)", p0, p1, p2) ); } function log( address p0, string memory p1, string memory p2 ) internal view { _sendLogPayload( abi.encodeWithSignature("log(address,string,string)", p0, p1, p2) ); } function log( address p0, string memory p1, bool p2 ) internal view { _sendLogPayload( abi.encodeWithSignature("log(address,string,bool)", p0, p1, p2) ); } function log( address p0, string memory p1, address p2 ) internal view { _sendLogPayload( abi.encodeWithSignature("log(address,string,address)", p0, p1, p2) ); } function log( address p0, bool p1, uint256 p2 ) internal view { _sendLogPayload( abi.encodeWithSignature("log(address,bool,uint)", p0, p1, p2) ); } function log( address p0, bool p1, string memory p2 ) internal view { _sendLogPayload( abi.encodeWithSignature("log(address,bool,string)", p0, p1, p2) ); } function log( address p0, bool p1, bool p2 ) internal view { _sendLogPayload( abi.encodeWithSignature("log(address,bool,bool)", p0, p1, p2) ); } function log( address p0, bool p1, address p2 ) internal view { _sendLogPayload( abi.encodeWithSignature("log(address,bool,address)", p0, p1, p2) ); } function log( address p0, address p1, uint256 p2 ) internal view { _sendLogPayload( abi.encodeWithSignature("log(address,address,uint)", p0, p1, p2) ); } function log( address p0, address p1, string memory p2 ) internal view { _sendLogPayload( abi.encodeWithSignature("log(address,address,string)", p0, p1, p2) ); } function log( address p0, address p1, bool p2 ) internal view { _sendLogPayload( abi.encodeWithSignature("log(address,address,bool)", p0, p1, p2) ); } function log( address p0, address p1, address p2 ) internal view { _sendLogPayload( abi.encodeWithSignature("log(address,address,address)", p0, p1, p2) ); } function log( uint256 p0, uint256 p1, uint256 p2, uint256 p3 ) internal view { _sendLogPayload( abi.encodeWithSignature("log(uint,uint,uint,uint)", p0, p1, p2, p3) ); } function log( uint256 p0, uint256 p1, uint256 p2, string memory p3 ) internal view { _sendLogPayload( abi.encodeWithSignature( "log(uint,uint,uint,string)", p0, p1, p2, p3 ) ); } function log( uint256 p0, uint256 p1, uint256 p2, bool p3 ) internal view { _sendLogPayload( abi.encodeWithSignature("log(uint,uint,uint,bool)", p0, p1, p2, p3) ); } function log( uint256 p0, uint256 p1, uint256 p2, address p3 ) internal view { _sendLogPayload( abi.encodeWithSignature( "log(uint,uint,uint,address)", p0, p1, p2, p3 ) ); } function log( uint256 p0, uint256 p1, string memory p2, uint256 p3 ) internal view { _sendLogPayload( abi.encodeWithSignature( "log(uint,uint,string,uint)", p0, p1, p2, p3 ) ); } function log( uint256 p0, uint256 p1, string memory p2, string memory p3 ) internal view { _sendLogPayload( abi.encodeWithSignature( "log(uint,uint,string,string)", p0, p1, p2, p3 ) ); } function log( uint256 p0, uint256 p1, string memory p2, bool p3 ) internal view { _sendLogPayload( abi.encodeWithSignature( "log(uint,uint,string,bool)", p0, p1, p2, p3 ) ); } function log( uint256 p0, uint256 p1, string memory p2, address p3 ) internal view { _sendLogPayload( abi.encodeWithSignature( "log(uint,uint,string,address)", p0, p1, p2, p3 ) ); } function log( uint256 p0, uint256 p1, bool p2, uint256 p3 ) internal view { _sendLogPayload( abi.encodeWithSignature("log(uint,uint,bool,uint)", p0, p1, p2, p3) ); } function log( uint256 p0, uint256 p1, bool p2, string memory p3 ) internal view { _sendLogPayload( abi.encodeWithSignature( "log(uint,uint,bool,string)", p0, p1, p2, p3 ) ); } function log( uint256 p0, uint256 p1, bool p2, bool p3 ) internal view { _sendLogPayload( abi.encodeWithSignature("log(uint,uint,bool,bool)", p0, p1, p2, p3) ); } function log( uint256 p0, uint256 p1, bool p2, address p3 ) internal view { _sendLogPayload( abi.encodeWithSignature( "log(uint,uint,bool,address)", p0, p1, p2, p3 ) ); } function log( uint256 p0, uint256 p1, address p2, uint256 p3 ) internal view { _sendLogPayload( abi.encodeWithSignature( "log(uint,uint,address,uint)", p0, p1, p2, p3 ) ); } function log( uint256 p0, uint256 p1, address p2, string memory p3 ) internal view { _sendLogPayload( abi.encodeWithSignature( "log(uint,uint,address,string)", p0, p1, p2, p3 ) ); } function log( uint256 p0, uint256 p1, address p2, bool p3 ) internal view { _sendLogPayload( abi.encodeWithSignature( "log(uint,uint,address,bool)", p0, p1, p2, p3 ) ); } function log( uint256 p0, uint256 p1, address p2, address p3 ) internal view { _sendLogPayload( abi.encodeWithSignature( "log(uint,uint,address,address)", p0, p1, p2, p3 ) ); } function log( uint256 p0, string memory p1, uint256 p2, uint256 p3 ) internal view { _sendLogPayload( abi.encodeWithSignature( "log(uint,string,uint,uint)", p0, p1, p2, p3 ) ); } function log( uint256 p0, string memory p1, uint256 p2, string memory p3 ) internal view { _sendLogPayload( abi.encodeWithSignature( "log(uint,string,uint,string)", p0, p1, p2, p3 ) ); } function log( uint256 p0, string memory p1, uint256 p2, bool p3 ) internal view { _sendLogPayload( abi.encodeWithSignature( "log(uint,string,uint,bool)", p0, p1, p2, p3 ) ); } function log( uint256 p0, string memory p1, uint256 p2, address p3 ) internal view { _sendLogPayload( abi.encodeWithSignature( "log(uint,string,uint,address)", p0, p1, p2, p3 ) ); } function log( uint256 p0, string memory p1, string memory p2, uint256 p3 ) internal view { _sendLogPayload( abi.encodeWithSignature( "log(uint,string,string,uint)", p0, p1, p2, p3 ) ); } function log( uint256 p0, string memory p1, string memory p2, string memory p3 ) internal view { _sendLogPayload( abi.encodeWithSignature( "log(uint,string,string,string)", p0, p1, p2, p3 ) ); } function log( uint256 p0, string memory p1, string memory p2, bool p3 ) internal view { _sendLogPayload( abi.encodeWithSignature( "log(uint,string,string,bool)", p0, p1, p2, p3 ) ); } function log( uint256 p0, string memory p1, string memory p2, address p3 ) internal view { _sendLogPayload( abi.encodeWithSignature( "log(uint,string,string,address)", p0, p1, p2, p3 ) ); } function log( uint256 p0, string memory p1, bool p2, uint256 p3 ) internal view { _sendLogPayload( abi.encodeWithSignature( "log(uint,string,bool,uint)", p0, p1, p2, p3 ) ); } function log( uint256 p0, string memory p1, bool p2, string memory p3 ) internal view { _sendLogPayload( abi.encodeWithSignature( "log(uint,string,bool,string)", p0, p1, p2, p3 ) ); } function log( uint256 p0, string memory p1, bool p2, bool p3 ) internal view { _sendLogPayload( abi.encodeWithSignature( "log(uint,string,bool,bool)", p0, p1, p2, p3 ) ); } function log( uint256 p0, string memory p1, bool p2, address p3 ) internal view { _sendLogPayload( abi.encodeWithSignature( "log(uint,string,bool,address)", p0, p1, p2, p3 ) ); } function log( uint256 p0, string memory p1, address p2, uint256 p3 ) internal view { _sendLogPayload( abi.encodeWithSignature( "log(uint,string,address,uint)", p0, p1, p2, p3 ) ); } function log( uint256 p0, string memory p1, address p2, string memory p3 ) internal view { _sendLogPayload( abi.encodeWithSignature( "log(uint,string,address,string)", p0, p1, p2, p3 ) ); } function log( uint256 p0, string memory p1, address p2, bool p3 ) internal view { _sendLogPayload( abi.encodeWithSignature( "log(uint,string,address,bool)", p0, p1, p2, p3 ) ); } function log( uint256 p0, string memory p1, address p2, address p3 ) internal view { _sendLogPayload( abi.encodeWithSignature( "log(uint,string,address,address)", p0, p1, p2, p3 ) ); } function log( uint256 p0, bool p1, uint256 p2, uint256 p3 ) internal view { _sendLogPayload( abi.encodeWithSignature("log(uint,bool,uint,uint)", p0, p1, p2, p3) ); } function log( uint256 p0, bool p1, uint256 p2, string memory p3 ) internal view { _sendLogPayload( abi.encodeWithSignature( "log(uint,bool,uint,string)", p0, p1, p2, p3 ) ); } function log( uint256 p0, bool p1, uint256 p2, bool p3 ) internal view { _sendLogPayload( abi.encodeWithSignature("log(uint,bool,uint,bool)", p0, p1, p2, p3) ); } function log( uint256 p0, bool p1, uint256 p2, address p3 ) internal view { _sendLogPayload( abi.encodeWithSignature( "log(uint,bool,uint,address)", p0, p1, p2, p3 ) ); } function log( uint256 p0, bool p1, string memory p2, uint256 p3 ) internal view { _sendLogPayload( abi.encodeWithSignature( "log(uint,bool,string,uint)", p0, p1, p2, p3 ) ); } function log( uint256 p0, bool p1, string memory p2, string memory p3 ) internal view { _sendLogPayload( abi.encodeWithSignature( "log(uint,bool,string,string)", p0, p1, p2, p3 ) ); } function log( uint256 p0, bool p1, string memory p2, bool p3 ) internal view { _sendLogPayload( abi.encodeWithSignature( "log(uint,bool,string,bool)", p0, p1, p2, p3 ) ); } function log( uint256 p0, bool p1, string memory p2, address p3 ) internal view { _sendLogPayload( abi.encodeWithSignature( "log(uint,bool,string,address)", p0, p1, p2, p3 ) ); } function log( uint256 p0, bool p1, bool p2, uint256 p3 ) internal view { _sendLogPayload( abi.encodeWithSignature("log(uint,bool,bool,uint)", p0, p1, p2, p3) ); } function log( uint256 p0, bool p1, bool p2, string memory p3 ) internal view { _sendLogPayload( abi.encodeWithSignature( "log(uint,bool,bool,string)", p0, p1, p2, p3 ) ); } function log( uint256 p0, bool p1, bool p2, bool p3 ) internal view { _sendLogPayload( abi.encodeWithSignature("log(uint,bool,bool,bool)", p0, p1, p2, p3) ); } function log( uint256 p0, bool p1, bool p2, address p3 ) internal view { _sendLogPayload( abi.encodeWithSignature( "log(uint,bool,bool,address)", p0, p1, p2, p3 ) ); } function log( uint256 p0, bool p1, address p2, uint256 p3 ) internal view { _sendLogPayload( abi.encodeWithSignature( "log(uint,bool,address,uint)", p0, p1, p2, p3 ) ); } function log( uint256 p0, bool p1, address p2, string memory p3 ) internal view { _sendLogPayload( abi.encodeWithSignature( "log(uint,bool,address,string)", p0, p1, p2, p3 ) ); } function log( uint256 p0, bool p1, address p2, bool p3 ) internal view { _sendLogPayload( abi.encodeWithSignature( "log(uint,bool,address,bool)", p0, p1, p2, p3 ) ); } function log( uint256 p0, bool p1, address p2, address p3 ) internal view { _sendLogPayload( abi.encodeWithSignature( "log(uint,bool,address,address)", p0, p1, p2, p3 ) ); } function log( uint256 p0, address p1, uint256 p2, uint256 p3 ) internal view { _sendLogPayload( abi.encodeWithSignature( "log(uint,address,uint,uint)", p0, p1, p2, p3 ) ); } function log( uint256 p0, address p1, uint256 p2, string memory p3 ) internal view { _sendLogPayload( abi.encodeWithSignature( "log(uint,address,uint,string)", p0, p1, p2, p3 ) ); } function log( uint256 p0, address p1, uint256 p2, bool p3 ) internal view { _sendLogPayload( abi.encodeWithSignature( "log(uint,address,uint,bool)", p0, p1, p2, p3 ) ); } function log( uint256 p0, address p1, uint256 p2, address p3 ) internal view { _sendLogPayload( abi.encodeWithSignature( "log(uint,address,uint,address)", p0, p1, p2, p3 ) ); } function log( uint256 p0, address p1, string memory p2, uint256 p3 ) internal view { _sendLogPayload( abi.encodeWithSignature( "log(uint,address,string,uint)", p0, p1, p2, p3 ) ); } function log( uint256 p0, address p1, string memory p2, string memory p3 ) internal view { _sendLogPayload( abi.encodeWithSignature( "log(uint,address,string,string)", p0, p1, p2, p3 ) ); } function log( uint256 p0, address p1, string memory p2, bool p3 ) internal view { _sendLogPayload( abi.encodeWithSignature( "log(uint,address,string,bool)", p0, p1, p2, p3 ) ); } function log( uint256 p0, address p1, string memory p2, address p3 ) internal view { _sendLogPayload( abi.encodeWithSignature( "log(uint,address,string,address)", p0, p1, p2, p3 ) ); } function log( uint256 p0, address p1, bool p2, uint256 p3 ) internal view { _sendLogPayload( abi.encodeWithSignature( "log(uint,address,bool,uint)", p0, p1, p2, p3 ) ); } function log( uint256 p0, address p1, bool p2, string memory p3 ) internal view { _sendLogPayload( abi.encodeWithSignature( "log(uint,address,bool,string)", p0, p1, p2, p3 ) ); } function log( uint256 p0, address p1, bool p2, bool p3 ) internal view { _sendLogPayload( abi.encodeWithSignature( "log(uint,address,bool,bool)", p0, p1, p2, p3 ) ); } function log( uint256 p0, address p1, bool p2, address p3 ) internal view { _sendLogPayload( abi.encodeWithSignature( "log(uint,address,bool,address)", p0, p1, p2, p3 ) ); } function log( uint256 p0, address p1, address p2, uint256 p3 ) internal view { _sendLogPayload( abi.encodeWithSignature( "log(uint,address,address,uint)", p0, p1, p2, p3 ) ); } function log( uint256 p0, address p1, address p2, string memory p3 ) internal view { _sendLogPayload( abi.encodeWithSignature( "log(uint,address,address,string)", p0, p1, p2, p3 ) ); } function log( uint256 p0, address p1, address p2, bool p3 ) internal view { _sendLogPayload( abi.encodeWithSignature( "log(uint,address,address,bool)", p0, p1, p2, p3 ) ); } function log( uint256 p0, address p1, address p2, address p3 ) internal view { _sendLogPayload( abi.encodeWithSignature( "log(uint,address,address,address)", p0, p1, p2, p3 ) ); } function log( string memory p0, uint256 p1, uint256 p2, uint256 p3 ) internal view { _sendLogPayload( abi.encodeWithSignature( "log(string,uint,uint,uint)", p0, p1, p2, p3 ) ); } function log( string memory p0, uint256 p1, uint256 p2, string memory p3 ) internal view { _sendLogPayload( abi.encodeWithSignature( "log(string,uint,uint,string)", p0, p1, p2, p3 ) ); } function log( string memory p0, uint256 p1, uint256 p2, bool p3 ) internal view { _sendLogPayload( abi.encodeWithSignature( "log(string,uint,uint,bool)", p0, p1, p2, p3 ) ); } function log( string memory p0, uint256 p1, uint256 p2, address p3 ) internal view { _sendLogPayload( abi.encodeWithSignature( "log(string,uint,uint,address)", p0, p1, p2, p3 ) ); } function log( string memory p0, uint256 p1, string memory p2, uint256 p3 ) internal view { _sendLogPayload( abi.encodeWithSignature( "log(string,uint,string,uint)", p0, p1, p2, p3 ) ); } function log( string memory p0, uint256 p1, string memory p2, string memory p3 ) internal view { _sendLogPayload( abi.encodeWithSignature( "log(string,uint,string,string)", p0, p1, p2, p3 ) ); } function log( string memory p0, uint256 p1, string memory p2, bool p3 ) internal view { _sendLogPayload( abi.encodeWithSignature( "log(string,uint,string,bool)", p0, p1, p2, p3 ) ); } function log( string memory p0, uint256 p1, string memory p2, address p3 ) internal view { _sendLogPayload( abi.encodeWithSignature( "log(string,uint,string,address)", p0, p1, p2, p3 ) ); } function log( string memory p0, uint256 p1, bool p2, uint256 p3 ) internal view { _sendLogPayload( abi.encodeWithSignature( "log(string,uint,bool,uint)", p0, p1, p2, p3 ) ); } function log( string memory p0, uint256 p1, bool p2, string memory p3 ) internal view { _sendLogPayload( abi.encodeWithSignature( "log(string,uint,bool,string)", p0, p1, p2, p3 ) ); } function log( string memory p0, uint256 p1, bool p2, bool p3 ) internal view { _sendLogPayload( abi.encodeWithSignature( "log(string,uint,bool,bool)", p0, p1, p2, p3 ) ); } function log( string memory p0, uint256 p1, bool p2, address p3 ) internal view { _sendLogPayload( abi.encodeWithSignature( "log(string,uint,bool,address)", p0, p1, p2, p3 ) ); } function log( string memory p0, uint256 p1, address p2, uint256 p3 ) internal view { _sendLogPayload( abi.encodeWithSignature( "log(string,uint,address,uint)", p0, p1, p2, p3 ) ); } function log( string memory p0, uint256 p1, address p2, string memory p3 ) internal view { _sendLogPayload( abi.encodeWithSignature( "log(string,uint,address,string)", p0, p1, p2, p3 ) ); } function log( string memory p0, uint256 p1, address p2, bool p3 ) internal view { _sendLogPayload( abi.encodeWithSignature( "log(string,uint,address,bool)", p0, p1, p2, p3 ) ); } function log( string memory p0, uint256 p1, address p2, address p3 ) internal view { _sendLogPayload( abi.encodeWithSignature( "log(string,uint,address,address)", p0, p1, p2, p3 ) ); } function log( string memory p0, string memory p1, uint256 p2, uint256 p3 ) internal view { _sendLogPayload( abi.encodeWithSignature( "log(string,string,uint,uint)", p0, p1, p2, p3 ) ); } function log( string memory p0, string memory p1, uint256 p2, string memory p3 ) internal view { _sendLogPayload( abi.encodeWithSignature( "log(string,string,uint,string)", p0, p1, p2, p3 ) ); } function log( string memory p0, string memory p1, uint256 p2, bool p3 ) internal view { _sendLogPayload( abi.encodeWithSignature( "log(string,string,uint,bool)", p0, p1, p2, p3 ) ); } function log( string memory p0, string memory p1, uint256 p2, address p3 ) internal view { _sendLogPayload( abi.encodeWithSignature( "log(string,string,uint,address)", p0, p1, p2, p3 ) ); } function log( string memory p0, string memory p1, string memory p2, uint256 p3 ) internal view { _sendLogPayload( abi.encodeWithSignature( "log(string,string,string,uint)", p0, p1, p2, p3 ) ); } function log( string memory p0, string memory p1, string memory p2, string memory p3 ) internal view { _sendLogPayload( abi.encodeWithSignature( "log(string,string,string,string)", p0, p1, p2, p3 ) ); } function log( string memory p0, string memory p1, string memory p2, bool p3 ) internal view { _sendLogPayload( abi.encodeWithSignature( "log(string,string,string,bool)", p0, p1, p2, p3 ) ); } function log( string memory p0, string memory p1, string memory p2, address p3 ) internal view { _sendLogPayload( abi.encodeWithSignature( "log(string,string,string,address)", p0, p1, p2, p3 ) ); } function log( string memory p0, string memory p1, bool p2, uint256 p3 ) internal view { _sendLogPayload( abi.encodeWithSignature( "log(string,string,bool,uint)", p0, p1, p2, p3 ) ); } function log( string memory p0, string memory p1, bool p2, string memory p3 ) internal view { _sendLogPayload( abi.encodeWithSignature( "log(string,string,bool,string)", p0, p1, p2, p3 ) ); } function log( string memory p0, string memory p1, bool p2, bool p3 ) internal view { _sendLogPayload( abi.encodeWithSignature( "log(string,string,bool,bool)", p0, p1, p2, p3 ) ); } function log( string memory p0, string memory p1, bool p2, address p3 ) internal view { _sendLogPayload( abi.encodeWithSignature( "log(string,string,bool,address)", p0, p1, p2, p3 ) ); } function log( string memory p0, string memory p1, address p2, uint256 p3 ) internal view { _sendLogPayload( abi.encodeWithSignature( "log(string,string,address,uint)", p0, p1, p2, p3 ) ); } function log( string memory p0, string memory p1, address p2, string memory p3 ) internal view { _sendLogPayload( abi.encodeWithSignature( "log(string,string,address,string)", p0, p1, p2, p3 ) ); } function log( string memory p0, string memory p1, address p2, bool p3 ) internal view { _sendLogPayload( abi.encodeWithSignature( "log(string,string,address,bool)", p0, p1, p2, p3 ) ); } function log( string memory p0, string memory p1, address p2, address p3 ) internal view { _sendLogPayload( abi.encodeWithSignature( "log(string,string,address,address)", p0, p1, p2, p3 ) ); } function log( string memory p0, bool p1, uint256 p2, uint256 p3 ) internal view { _sendLogPayload( abi.encodeWithSignature( "log(string,bool,uint,uint)", p0, p1, p2, p3 ) ); } function log( string memory p0, bool p1, uint256 p2, string memory p3 ) internal view { _sendLogPayload( abi.encodeWithSignature( "log(string,bool,uint,string)", p0, p1, p2, p3 ) ); } function log( string memory p0, bool p1, uint256 p2, bool p3 ) internal view { _sendLogPayload( abi.encodeWithSignature( "log(string,bool,uint,bool)", p0, p1, p2, p3 ) ); } function log( string memory p0, bool p1, uint256 p2, address p3 ) internal view { _sendLogPayload( abi.encodeWithSignature( "log(string,bool,uint,address)", p0, p1, p2, p3 ) ); } function log( string memory p0, bool p1, string memory p2, uint256 p3 ) internal view { _sendLogPayload( abi.encodeWithSignature( "log(string,bool,string,uint)", p0, p1, p2, p3 ) ); } function log( string memory p0, bool p1, string memory p2, string memory p3 ) internal view { _sendLogPayload( abi.encodeWithSignature( "log(string,bool,string,string)", p0, p1, p2, p3 ) ); } function log( string memory p0, bool p1, string memory p2, bool p3 ) internal view { _sendLogPayload( abi.encodeWithSignature( "log(string,bool,string,bool)", p0, p1, p2, p3 ) ); } function log( string memory p0, bool p1, string memory p2, address p3 ) internal view { _sendLogPayload( abi.encodeWithSignature( "log(string,bool,string,address)", p0, p1, p2, p3 ) ); } function log( string memory p0, bool p1, bool p2, uint256 p3 ) internal view { _sendLogPayload( abi.encodeWithSignature( "log(string,bool,bool,uint)", p0, p1, p2, p3 ) ); } function log( string memory p0, bool p1, bool p2, string memory p3 ) internal view { _sendLogPayload( abi.encodeWithSignature( "log(string,bool,bool,string)", p0, p1, p2, p3 ) ); } function log( string memory p0, bool p1, bool p2, bool p3 ) internal view { _sendLogPayload( abi.encodeWithSignature( "log(string,bool,bool,bool)", p0, p1, p2, p3 ) ); } function log( string memory p0, bool p1, bool p2, address p3 ) internal view { _sendLogPayload( abi.encodeWithSignature( "log(string,bool,bool,address)", p0, p1, p2, p3 ) ); } function log( string memory p0, bool p1, address p2, uint256 p3 ) internal view { _sendLogPayload( abi.encodeWithSignature( "log(string,bool,address,uint)", p0, p1, p2, p3 ) ); } function log( string memory p0, bool p1, address p2, string memory p3 ) internal view { _sendLogPayload( abi.encodeWithSignature( "log(string,bool,address,string)", p0, p1, p2, p3 ) ); } function log( string memory p0, bool p1, address p2, bool p3 ) internal view { _sendLogPayload( abi.encodeWithSignature( "log(string,bool,address,bool)", p0, p1, p2, p3 ) ); } function log( string memory p0, bool p1, address p2, address p3 ) internal view { _sendLogPayload( abi.encodeWithSignature( "log(string,bool,address,address)", p0, p1, p2, p3 ) ); } function log( string memory p0, address p1, uint256 p2, uint256 p3 ) internal view { _sendLogPayload( abi.encodeWithSignature( "log(string,address,uint,uint)", p0, p1, p2, p3 ) ); } function log( string memory p0, address p1, uint256 p2, string memory p3 ) internal view { _sendLogPayload( abi.encodeWithSignature( "log(string,address,uint,string)", p0, p1, p2, p3 ) ); } function log( string memory p0, address p1, uint256 p2, bool p3 ) internal view { _sendLogPayload( abi.encodeWithSignature( "log(string,address,uint,bool)", p0, p1, p2, p3 ) ); } function log( string memory p0, address p1, uint256 p2, address p3 ) internal view { _sendLogPayload( abi.encodeWithSignature( "log(string,address,uint,address)", p0, p1, p2, p3 ) ); } function log( string memory p0, address p1, string memory p2, uint256 p3 ) internal view { _sendLogPayload( abi.encodeWithSignature( "log(string,address,string,uint)", p0, p1, p2, p3 ) ); } function log( string memory p0, address p1, string memory p2, string memory p3 ) internal view { _sendLogPayload( abi.encodeWithSignature( "log(string,address,string,string)", p0, p1, p2, p3 ) ); } function log( string memory p0, address p1, string memory p2, bool p3 ) internal view { _sendLogPayload( abi.encodeWithSignature( "log(string,address,string,bool)", p0, p1, p2, p3 ) ); } function log( string memory p0, address p1, string memory p2, address p3 ) internal view { _sendLogPayload( abi.encodeWithSignature( "log(string,address,string,address)", p0, p1, p2, p3 ) ); } function log( string memory p0, address p1, bool p2, uint256 p3 ) internal view { _sendLogPayload( abi.encodeWithSignature( "log(string,address,bool,uint)", p0, p1, p2, p3 ) ); } function log( string memory p0, address p1, bool p2, string memory p3 ) internal view { _sendLogPayload( abi.encodeWithSignature( "log(string,address,bool,string)", p0, p1, p2, p3 ) ); } function log( string memory p0, address p1, bool p2, bool p3 ) internal view { _sendLogPayload( abi.encodeWithSignature( "log(string,address,bool,bool)", p0, p1, p2, p3 ) ); } function log( string memory p0, address p1, bool p2, address p3 ) internal view { _sendLogPayload( abi.encodeWithSignature( "log(string,address,bool,address)", p0, p1, p2, p3 ) ); } function log( string memory p0, address p1, address p2, uint256 p3 ) internal view { _sendLogPayload( abi.encodeWithSignature( "log(string,address,address,uint)", p0, p1, p2, p3 ) ); } function log( string memory p0, address p1, address p2, string memory p3 ) internal view { _sendLogPayload( abi.encodeWithSignature( "log(string,address,address,string)", p0, p1, p2, p3 ) ); } function log( string memory p0, address p1, address p2, bool p3 ) internal view { _sendLogPayload( abi.encodeWithSignature( "log(string,address,address,bool)", p0, p1, p2, p3 ) ); } function log( string memory p0, address p1, address p2, address p3 ) internal view { _sendLogPayload( abi.encodeWithSignature( "log(string,address,address,address)", p0, p1, p2, p3 ) ); } function log( bool p0, uint256 p1, uint256 p2, uint256 p3 ) internal view { _sendLogPayload( abi.encodeWithSignature("log(bool,uint,uint,uint)", p0, p1, p2, p3) ); } function log( bool p0, uint256 p1, uint256 p2, string memory p3 ) internal view { _sendLogPayload( abi.encodeWithSignature( "log(bool,uint,uint,string)", p0, p1, p2, p3 ) ); } function log( bool p0, uint256 p1, uint256 p2, bool p3 ) internal view { _sendLogPayload( abi.encodeWithSignature("log(bool,uint,uint,bool)", p0, p1, p2, p3) ); } function log( bool p0, uint256 p1, uint256 p2, address p3 ) internal view { _sendLogPayload( abi.encodeWithSignature( "log(bool,uint,uint,address)", p0, p1, p2, p3 ) ); } function log( bool p0, uint256 p1, string memory p2, uint256 p3 ) internal view { _sendLogPayload( abi.encodeWithSignature( "log(bool,uint,string,uint)", p0, p1, p2, p3 ) ); } function log( bool p0, uint256 p1, string memory p2, string memory p3 ) internal view { _sendLogPayload( abi.encodeWithSignature( "log(bool,uint,string,string)", p0, p1, p2, p3 ) ); } function log( bool p0, uint256 p1, string memory p2, bool p3 ) internal view { _sendLogPayload( abi.encodeWithSignature( "log(bool,uint,string,bool)", p0, p1, p2, p3 ) ); } function log( bool p0, uint256 p1, string memory p2, address p3 ) internal view { _sendLogPayload( abi.encodeWithSignature( "log(bool,uint,string,address)", p0, p1, p2, p3 ) ); } function log( bool p0, uint256 p1, bool p2, uint256 p3 ) internal view { _sendLogPayload( abi.encodeWithSignature("log(bool,uint,bool,uint)", p0, p1, p2, p3) ); } function log( bool p0, uint256 p1, bool p2, string memory p3 ) internal view { _sendLogPayload( abi.encodeWithSignature( "log(bool,uint,bool,string)", p0, p1, p2, p3 ) ); } function log( bool p0, uint256 p1, bool p2, bool p3 ) internal view { _sendLogPayload( abi.encodeWithSignature("log(bool,uint,bool,bool)", p0, p1, p2, p3) ); } function log( bool p0, uint256 p1, bool p2, address p3 ) internal view { _sendLogPayload( abi.encodeWithSignature( "log(bool,uint,bool,address)", p0, p1, p2, p3 ) ); } function log( bool p0, uint256 p1, address p2, uint256 p3 ) internal view { _sendLogPayload( abi.encodeWithSignature( "log(bool,uint,address,uint)", p0, p1, p2, p3 ) ); } function log( bool p0, uint256 p1, address p2, string memory p3 ) internal view { _sendLogPayload( abi.encodeWithSignature( "log(bool,uint,address,string)", p0, p1, p2, p3 ) ); } function log( bool p0, uint256 p1, address p2, bool p3 ) internal view { _sendLogPayload( abi.encodeWithSignature( "log(bool,uint,address,bool)", p0, p1, p2, p3 ) ); } function log( bool p0, uint256 p1, address p2, address p3 ) internal view { _sendLogPayload( abi.encodeWithSignature( "log(bool,uint,address,address)", p0, p1, p2, p3 ) ); } function log( bool p0, string memory p1, uint256 p2, uint256 p3 ) internal view { _sendLogPayload( abi.encodeWithSignature( "log(bool,string,uint,uint)", p0, p1, p2, p3 ) ); } function log( bool p0, string memory p1, uint256 p2, string memory p3 ) internal view { _sendLogPayload( abi.encodeWithSignature( "log(bool,string,uint,string)", p0, p1, p2, p3 ) ); } function log( bool p0, string memory p1, uint256 p2, bool p3 ) internal view { _sendLogPayload( abi.encodeWithSignature( "log(bool,string,uint,bool)", p0, p1, p2, p3 ) ); } function log( bool p0, string memory p1, uint256 p2, address p3 ) internal view { _sendLogPayload( abi.encodeWithSignature( "log(bool,string,uint,address)", p0, p1, p2, p3 ) ); } function log( bool p0, string memory p1, string memory p2, uint256 p3 ) internal view { _sendLogPayload( abi.encodeWithSignature( "log(bool,string,string,uint)", p0, p1, p2, p3 ) ); } function log( bool p0, string memory p1, string memory p2, string memory p3 ) internal view { _sendLogPayload( abi.encodeWithSignature( "log(bool,string,string,string)", p0, p1, p2, p3 ) ); } function log( bool p0, string memory p1, string memory p2, bool p3 ) internal view { _sendLogPayload( abi.encodeWithSignature( "log(bool,string,string,bool)", p0, p1, p2, p3 ) ); } function log( bool p0, string memory p1, string memory p2, address p3 ) internal view { _sendLogPayload( abi.encodeWithSignature( "log(bool,string,string,address)", p0, p1, p2, p3 ) ); } function log( bool p0, string memory p1, bool p2, uint256 p3 ) internal view { _sendLogPayload( abi.encodeWithSignature( "log(bool,string,bool,uint)", p0, p1, p2, p3 ) ); } function log( bool p0, string memory p1, bool p2, string memory p3 ) internal view { _sendLogPayload( abi.encodeWithSignature( "log(bool,string,bool,string)", p0, p1, p2, p3 ) ); } function log( bool p0, string memory p1, bool p2, bool p3 ) internal view { _sendLogPayload( abi.encodeWithSignature( "log(bool,string,bool,bool)", p0, p1, p2, p3 ) ); } function log( bool p0, string memory p1, bool p2, address p3 ) internal view { _sendLogPayload( abi.encodeWithSignature( "log(bool,string,bool,address)", p0, p1, p2, p3 ) ); } function log( bool p0, string memory p1, address p2, uint256 p3 ) internal view { _sendLogPayload( abi.encodeWithSignature( "log(bool,string,address,uint)", p0, p1, p2, p3 ) ); } function log( bool p0, string memory p1, address p2, string memory p3 ) internal view { _sendLogPayload( abi.encodeWithSignature( "log(bool,string,address,string)", p0, p1, p2, p3 ) ); } function log( bool p0, string memory p1, address p2, bool p3 ) internal view { _sendLogPayload( abi.encodeWithSignature( "log(bool,string,address,bool)", p0, p1, p2, p3 ) ); } function log( bool p0, string memory p1, address p2, address p3 ) internal view { _sendLogPayload( abi.encodeWithSignature( "log(bool,string,address,address)", p0, p1, p2, p3 ) ); } function log( bool p0, bool p1, uint256 p2, uint256 p3 ) internal view { _sendLogPayload( abi.encodeWithSignature("log(bool,bool,uint,uint)", p0, p1, p2, p3) ); } function log( bool p0, bool p1, uint256 p2, string memory p3 ) internal view { _sendLogPayload( abi.encodeWithSignature( "log(bool,bool,uint,string)", p0, p1, p2, p3 ) ); } function log( bool p0, bool p1, uint256 p2, bool p3 ) internal view { _sendLogPayload( abi.encodeWithSignature("log(bool,bool,uint,bool)", p0, p1, p2, p3) ); } function log( bool p0, bool p1, uint256 p2, address p3 ) internal view { _sendLogPayload( abi.encodeWithSignature( "log(bool,bool,uint,address)", p0, p1, p2, p3 ) ); } function log( bool p0, bool p1, string memory p2, uint256 p3 ) internal view { _sendLogPayload( abi.encodeWithSignature( "log(bool,bool,string,uint)", p0, p1, p2, p3 ) ); } function log( bool p0, bool p1, string memory p2, string memory p3 ) internal view { _sendLogPayload( abi.encodeWithSignature( "log(bool,bool,string,string)", p0, p1, p2, p3 ) ); } function log( bool p0, bool p1, string memory p2, bool p3 ) internal view { _sendLogPayload( abi.encodeWithSignature( "log(bool,bool,string,bool)", p0, p1, p2, p3 ) ); } function log( bool p0, bool p1, string memory p2, address p3 ) internal view { _sendLogPayload( abi.encodeWithSignature( "log(bool,bool,string,address)", p0, p1, p2, p3 ) ); } function log( bool p0, bool p1, bool p2, uint256 p3 ) internal view { _sendLogPayload( abi.encodeWithSignature("log(bool,bool,bool,uint)", p0, p1, p2, p3) ); } function log( bool p0, bool p1, bool p2, string memory p3 ) internal view { _sendLogPayload( abi.encodeWithSignature( "log(bool,bool,bool,string)", p0, p1, p2, p3 ) ); } function log( bool p0, bool p1, bool p2, bool p3 ) internal view { _sendLogPayload( abi.encodeWithSignature("log(bool,bool,bool,bool)", p0, p1, p2, p3) ); } function log( bool p0, bool p1, bool p2, address p3 ) internal view { _sendLogPayload( abi.encodeWithSignature( "log(bool,bool,bool,address)", p0, p1, p2, p3 ) ); } function log( bool p0, bool p1, address p2, uint256 p3 ) internal view { _sendLogPayload( abi.encodeWithSignature( "log(bool,bool,address,uint)", p0, p1, p2, p3 ) ); } function log( bool p0, bool p1, address p2, string memory p3 ) internal view { _sendLogPayload( abi.encodeWithSignature( "log(bool,bool,address,string)", p0, p1, p2, p3 ) ); } function log( bool p0, bool p1, address p2, bool p3 ) internal view { _sendLogPayload( abi.encodeWithSignature( "log(bool,bool,address,bool)", p0, p1, p2, p3 ) ); } function log( bool p0, bool p1, address p2, address p3 ) internal view { _sendLogPayload( abi.encodeWithSignature( "log(bool,bool,address,address)", p0, p1, p2, p3 ) ); } function log( bool p0, address p1, uint256 p2, uint256 p3 ) internal view { _sendLogPayload( abi.encodeWithSignature( "log(bool,address,uint,uint)", p0, p1, p2, p3 ) ); } function log( bool p0, address p1, uint256 p2, string memory p3 ) internal view { _sendLogPayload( abi.encodeWithSignature( "log(bool,address,uint,string)", p0, p1, p2, p3 ) ); } function log( bool p0, address p1, uint256 p2, bool p3 ) internal view { _sendLogPayload( abi.encodeWithSignature( "log(bool,address,uint,bool)", p0, p1, p2, p3 ) ); } function log( bool p0, address p1, uint256 p2, address p3 ) internal view { _sendLogPayload( abi.encodeWithSignature( "log(bool,address,uint,address)", p0, p1, p2, p3 ) ); } function log( bool p0, address p1, string memory p2, uint256 p3 ) internal view { _sendLogPayload( abi.encodeWithSignature( "log(bool,address,string,uint)", p0, p1, p2, p3 ) ); } function log( bool p0, address p1, string memory p2, string memory p3 ) internal view { _sendLogPayload( abi.encodeWithSignature( "log(bool,address,string,string)", p0, p1, p2, p3 ) ); } function log( bool p0, address p1, string memory p2, bool p3 ) internal view { _sendLogPayload( abi.encodeWithSignature( "log(bool,address,string,bool)", p0, p1, p2, p3 ) ); } function log( bool p0, address p1, string memory p2, address p3 ) internal view { _sendLogPayload( abi.encodeWithSignature( "log(bool,address,string,address)", p0, p1, p2, p3 ) ); } function log( bool p0, address p1, bool p2, uint256 p3 ) internal view { _sendLogPayload( abi.encodeWithSignature( "log(bool,address,bool,uint)", p0, p1, p2, p3 ) ); } function log( bool p0, address p1, bool p2, string memory p3 ) internal view { _sendLogPayload( abi.encodeWithSignature( "log(bool,address,bool,string)", p0, p1, p2, p3 ) ); } function log( bool p0, address p1, bool p2, bool p3 ) internal view { _sendLogPayload( abi.encodeWithSignature( "log(bool,address,bool,bool)", p0, p1, p2, p3 ) ); } function log( bool p0, address p1, bool p2, address p3 ) internal view { _sendLogPayload( abi.encodeWithSignature( "log(bool,address,bool,address)", p0, p1, p2, p3 ) ); } function log( bool p0, address p1, address p2, uint256 p3 ) internal view { _sendLogPayload( abi.encodeWithSignature( "log(bool,address,address,uint)", p0, p1, p2, p3 ) ); } function log( bool p0, address p1, address p2, string memory p3 ) internal view { _sendLogPayload( abi.encodeWithSignature( "log(bool,address,address,string)", p0, p1, p2, p3 ) ); } function log( bool p0, address p1, address p2, bool p3 ) internal view { _sendLogPayload( abi.encodeWithSignature( "log(bool,address,address,bool)", p0, p1, p2, p3 ) ); } function log( bool p0, address p1, address p2, address p3 ) internal view { _sendLogPayload( abi.encodeWithSignature( "log(bool,address,address,address)", p0, p1, p2, p3 ) ); } function log( address p0, uint256 p1, uint256 p2, uint256 p3 ) internal view { _sendLogPayload( abi.encodeWithSignature( "log(address,uint,uint,uint)", p0, p1, p2, p3 ) ); } function log( address p0, uint256 p1, uint256 p2, string memory p3 ) internal view { _sendLogPayload( abi.encodeWithSignature( "log(address,uint,uint,string)", p0, p1, p2, p3 ) ); } function log( address p0, uint256 p1, uint256 p2, bool p3 ) internal view { _sendLogPayload( abi.encodeWithSignature( "log(address,uint,uint,bool)", p0, p1, p2, p3 ) ); } function log( address p0, uint256 p1, uint256 p2, address p3 ) internal view { _sendLogPayload( abi.encodeWithSignature( "log(address,uint,uint,address)", p0, p1, p2, p3 ) ); } function log( address p0, uint256 p1, string memory p2, uint256 p3 ) internal view { _sendLogPayload( abi.encodeWithSignature( "log(address,uint,string,uint)", p0, p1, p2, p3 ) ); } function log( address p0, uint256 p1, string memory p2, string memory p3 ) internal view { _sendLogPayload( abi.encodeWithSignature( "log(address,uint,string,string)", p0, p1, p2, p3 ) ); } function log( address p0, uint256 p1, string memory p2, bool p3 ) internal view { _sendLogPayload( abi.encodeWithSignature( "log(address,uint,string,bool)", p0, p1, p2, p3 ) ); } function log( address p0, uint256 p1, string memory p2, address p3 ) internal view { _sendLogPayload( abi.encodeWithSignature( "log(address,uint,string,address)", p0, p1, p2, p3 ) ); } function log( address p0, uint256 p1, bool p2, uint256 p3 ) internal view { _sendLogPayload( abi.encodeWithSignature( "log(address,uint,bool,uint)", p0, p1, p2, p3 ) ); } function log( address p0, uint256 p1, bool p2, string memory p3 ) internal view { _sendLogPayload( abi.encodeWithSignature( "log(address,uint,bool,string)", p0, p1, p2, p3 ) ); } function log( address p0, uint256 p1, bool p2, bool p3 ) internal view { _sendLogPayload( abi.encodeWithSignature( "log(address,uint,bool,bool)", p0, p1, p2, p3 ) ); } function log( address p0, uint256 p1, bool p2, address p3 ) internal view { _sendLogPayload( abi.encodeWithSignature( "log(address,uint,bool,address)", p0, p1, p2, p3 ) ); } function log( address p0, uint256 p1, address p2, uint256 p3 ) internal view { _sendLogPayload( abi.encodeWithSignature( "log(address,uint,address,uint)", p0, p1, p2, p3 ) ); } function log( address p0, uint256 p1, address p2, string memory p3 ) internal view { _sendLogPayload( abi.encodeWithSignature( "log(address,uint,address,string)", p0, p1, p2, p3 ) ); } function log( address p0, uint256 p1, address p2, bool p3 ) internal view { _sendLogPayload( abi.encodeWithSignature( "log(address,uint,address,bool)", p0, p1, p2, p3 ) ); } function log( address p0, uint256 p1, address p2, address p3 ) internal view { _sendLogPayload( abi.encodeWithSignature( "log(address,uint,address,address)", p0, p1, p2, p3 ) ); } function log( address p0, string memory p1, uint256 p2, uint256 p3 ) internal view { _sendLogPayload( abi.encodeWithSignature( "log(address,string,uint,uint)", p0, p1, p2, p3 ) ); } function log( address p0, string memory p1, uint256 p2, string memory p3 ) internal view { _sendLogPayload( abi.encodeWithSignature( "log(address,string,uint,string)", p0, p1, p2, p3 ) ); } function log( address p0, string memory p1, uint256 p2, bool p3 ) internal view { _sendLogPayload( abi.encodeWithSignature( "log(address,string,uint,bool)", p0, p1, p2, p3 ) ); } function log( address p0, string memory p1, uint256 p2, address p3 ) internal view { _sendLogPayload( abi.encodeWithSignature( "log(address,string,uint,address)", p0, p1, p2, p3 ) ); } function log( address p0, string memory p1, string memory p2, uint256 p3 ) internal view { _sendLogPayload( abi.encodeWithSignature( "log(address,string,string,uint)", p0, p1, p2, p3 ) ); } function log( address p0, string memory p1, string memory p2, string memory p3 ) internal view { _sendLogPayload( abi.encodeWithSignature( "log(address,string,string,string)", p0, p1, p2, p3 ) ); } function log( address p0, string memory p1, string memory p2, bool p3 ) internal view { _sendLogPayload( abi.encodeWithSignature( "log(address,string,string,bool)", p0, p1, p2, p3 ) ); } function log( address p0, string memory p1, string memory p2, address p3 ) internal view { _sendLogPayload( abi.encodeWithSignature( "log(address,string,string,address)", p0, p1, p2, p3 ) ); } function log( address p0, string memory p1, bool p2, uint256 p3 ) internal view { _sendLogPayload( abi.encodeWithSignature( "log(address,string,bool,uint)", p0, p1, p2, p3 ) ); } function log( address p0, string memory p1, bool p2, string memory p3 ) internal view { _sendLogPayload( abi.encodeWithSignature( "log(address,string,bool,string)", p0, p1, p2, p3 ) ); } function log( address p0, string memory p1, bool p2, bool p3 ) internal view { _sendLogPayload( abi.encodeWithSignature( "log(address,string,bool,bool)", p0, p1, p2, p3 ) ); } function log( address p0, string memory p1, bool p2, address p3 ) internal view { _sendLogPayload( abi.encodeWithSignature( "log(address,string,bool,address)", p0, p1, p2, p3 ) ); } function log( address p0, string memory p1, address p2, uint256 p3 ) internal view { _sendLogPayload( abi.encodeWithSignature( "log(address,string,address,uint)", p0, p1, p2, p3 ) ); } function log( address p0, string memory p1, address p2, string memory p3 ) internal view { _sendLogPayload( abi.encodeWithSignature( "log(address,string,address,string)", p0, p1, p2, p3 ) ); } function log( address p0, string memory p1, address p2, bool p3 ) internal view { _sendLogPayload( abi.encodeWithSignature( "log(address,string,address,bool)", p0, p1, p2, p3 ) ); } function log( address p0, string memory p1, address p2, address p3 ) internal view { _sendLogPayload( abi.encodeWithSignature( "log(address,string,address,address)", p0, p1, p2, p3 ) ); } function log( address p0, bool p1, uint256 p2, uint256 p3 ) internal view { _sendLogPayload( abi.encodeWithSignature( "log(address,bool,uint,uint)", p0, p1, p2, p3 ) ); } function log( address p0, bool p1, uint256 p2, string memory p3 ) internal view { _sendLogPayload( abi.encodeWithSignature( "log(address,bool,uint,string)", p0, p1, p2, p3 ) ); } function log( address p0, bool p1, uint256 p2, bool p3 ) internal view { _sendLogPayload( abi.encodeWithSignature( "log(address,bool,uint,bool)", p0, p1, p2, p3 ) ); } function log( address p0, bool p1, uint256 p2, address p3 ) internal view { _sendLogPayload( abi.encodeWithSignature( "log(address,bool,uint,address)", p0, p1, p2, p3 ) ); } function log( address p0, bool p1, string memory p2, uint256 p3 ) internal view { _sendLogPayload( abi.encodeWithSignature( "log(address,bool,string,uint)", p0, p1, p2, p3 ) ); } function log( address p0, bool p1, string memory p2, string memory p3 ) internal view { _sendLogPayload( abi.encodeWithSignature( "log(address,bool,string,string)", p0, p1, p2, p3 ) ); } function log( address p0, bool p1, string memory p2, bool p3 ) internal view { _sendLogPayload( abi.encodeWithSignature( "log(address,bool,string,bool)", p0, p1, p2, p3 ) ); } function log( address p0, bool p1, string memory p2, address p3 ) internal view { _sendLogPayload( abi.encodeWithSignature( "log(address,bool,string,address)", p0, p1, p2, p3 ) ); } function log( address p0, bool p1, bool p2, uint256 p3 ) internal view { _sendLogPayload( abi.encodeWithSignature( "log(address,bool,bool,uint)", p0, p1, p2, p3 ) ); } function log( address p0, bool p1, bool p2, string memory p3 ) internal view { _sendLogPayload( abi.encodeWithSignature( "log(address,bool,bool,string)", p0, p1, p2, p3 ) ); } function log( address p0, bool p1, bool p2, bool p3 ) internal view { _sendLogPayload( abi.encodeWithSignature( "log(address,bool,bool,bool)", p0, p1, p2, p3 ) ); } function log( address p0, bool p1, bool p2, address p3 ) internal view { _sendLogPayload( abi.encodeWithSignature( "log(address,bool,bool,address)", p0, p1, p2, p3 ) ); } function log( address p0, bool p1, address p2, uint256 p3 ) internal view { _sendLogPayload( abi.encodeWithSignature( "log(address,bool,address,uint)", p0, p1, p2, p3 ) ); } function log( address p0, bool p1, address p2, string memory p3 ) internal view { _sendLogPayload( abi.encodeWithSignature( "log(address,bool,address,string)", p0, p1, p2, p3 ) ); } function log( address p0, bool p1, address p2, bool p3 ) internal view { _sendLogPayload( abi.encodeWithSignature( "log(address,bool,address,bool)", p0, p1, p2, p3 ) ); } function log( address p0, bool p1, address p2, address p3 ) internal view { _sendLogPayload( abi.encodeWithSignature( "log(address,bool,address,address)", p0, p1, p2, p3 ) ); } function log( address p0, address p1, uint256 p2, uint256 p3 ) internal view { _sendLogPayload( abi.encodeWithSignature( "log(address,address,uint,uint)", p0, p1, p2, p3 ) ); } function log( address p0, address p1, uint256 p2, string memory p3 ) internal view { _sendLogPayload( abi.encodeWithSignature( "log(address,address,uint,string)", p0, p1, p2, p3 ) ); } function log( address p0, address p1, uint256 p2, bool p3 ) internal view { _sendLogPayload( abi.encodeWithSignature( "log(address,address,uint,bool)", p0, p1, p2, p3 ) ); } function log( address p0, address p1, uint256 p2, address p3 ) internal view { _sendLogPayload( abi.encodeWithSignature( "log(address,address,uint,address)", p0, p1, p2, p3 ) ); } function log( address p0, address p1, string memory p2, uint256 p3 ) internal view { _sendLogPayload( abi.encodeWithSignature( "log(address,address,string,uint)", p0, p1, p2, p3 ) ); } function log( address p0, address p1, string memory p2, string memory p3 ) internal view { _sendLogPayload( abi.encodeWithSignature( "log(address,address,string,string)", p0, p1, p2, p3 ) ); } function log( address p0, address p1, string memory p2, bool p3 ) internal view { _sendLogPayload( abi.encodeWithSignature( "log(address,address,string,bool)", p0, p1, p2, p3 ) ); } function log( address p0, address p1, string memory p2, address p3 ) internal view { _sendLogPayload( abi.encodeWithSignature( "log(address,address,string,address)", p0, p1, p2, p3 ) ); } function log( address p0, address p1, bool p2, uint256 p3 ) internal view { _sendLogPayload( abi.encodeWithSignature( "log(address,address,bool,uint)", p0, p1, p2, p3 ) ); } function log( address p0, address p1, bool p2, string memory p3 ) internal view { _sendLogPayload( abi.encodeWithSignature( "log(address,address,bool,string)", p0, p1, p2, p3 ) ); } function log( address p0, address p1, bool p2, bool p3 ) internal view { _sendLogPayload( abi.encodeWithSignature( "log(address,address,bool,bool)", p0, p1, p2, p3 ) ); } function log( address p0, address p1, bool p2, address p3 ) internal view { _sendLogPayload( abi.encodeWithSignature( "log(address,address,bool,address)", p0, p1, p2, p3 ) ); } function log( address p0, address p1, address p2, uint256 p3 ) internal view { _sendLogPayload( abi.encodeWithSignature( "log(address,address,address,uint)", p0, p1, p2, p3 ) ); } function log( address p0, address p1, address p2, string memory p3 ) internal view { _sendLogPayload( abi.encodeWithSignature( "log(address,address,address,string)", p0, p1, p2, p3 ) ); } function log( address p0, address p1, address p2, bool p3 ) internal view { _sendLogPayload( abi.encodeWithSignature( "log(address,address,address,bool)", p0, p1, p2, p3 ) ); } function log( address p0, address p1, address p2, address p3 ) internal view { _sendLogPayload( abi.encodeWithSignature( "log(address,address,address,address)", p0, p1, p2, p3 ) ); } } // File contracts/Miner.sol /** 88b d88 88 88b d88 88 88888888ba 888b d888 88 888b d888 "" 88 "8b 88`8b d8'88 88 88`8b d8'88 88 ,8P 88 `8b d8' 88 ,adPPYYba, ,adPPYb,88 88 `8b d8' 88 88 8b,dPPYba, ,adPPYba, 8b,dPPYba, 88aaaaaa8P' ,adPPYba, ,adPPYYba, 8b,dPPYba, ,adPPYba, 88 `8b d8' 88 "" `Y8 a8" `Y88 88 `8b d8' 88 88 88P' `"8a a8P_____88 88P' "Y8 88""""""8b, a8P_____88 "" `Y8 88P' `"8a I8[ "" 88 `8b d8' 88 ,adPPPPP88 8b 88 88 `8b d8' 88 88 88 88 8PP""""""" 88 88 `8b 8PP""""""" ,adPPPPP88 88 88 `"Y8ba, 88 `888' 88 88, ,88 "8a, ,d88 88 `888' 88 88 88 88 "8b, ,aa 88 88 a8P "8b, ,aa 88, ,88 88 88 aa ]8I 88 `8' 88 `"8bbdP"Y8 `"8bbdP"Y8 88 `8' 88 88 88 88 `"Ybbd8"' 88 88888888P" `"Ybbd8"' `"8bbdP"Y8 88 88 `"YbbdP"' */ pragma solidity 0.8.9; contract Miner { // 12.5 days for miners to double // after this period, rewards do NOT accumulate anymore though! IERC20 private token; uint256 private constant RUNE_REQ_PER_MINER = 1_080_000; uint256 private constant INITIAL_MARKET_RUNES = 108_000_000_000; uint256 public constant START_TIME = 1652202000; uint256 private constant PSN = 10000; uint256 private constant PSNH = 5000; uint256 private constant getDepositFeeVal = 200; uint256 private constant getWithdrawFeeVal = 800; uint256 private marketRunes = INITIAL_MARKET_RUNES; uint256 public uniqueUsers; address public immutable owner; address private depositFeeReceiver; address private immutable withdrawFeeReceiver; mapping(address => uint256) private academyMiners; mapping(address => uint256) private claimedRunes; mapping(address => uint256) private lastInfusion; mapping(address => bool) private hasParticipated; mapping(address => address) private referrals; error OnlyOwner(address); error NonZeroMarketRunes(uint256); error FeeTooLow(); error NotStarted(uint256); modifier hasStarted() { if (block.timestamp < START_TIME) revert NotStarted(block.timestamp); _; } ///@dev compound some intitial native coin deposit here constructor( address _depositFeeReceiver, address _withdrawFeeReceiver, address _token ) { owner = msg.sender; depositFeeReceiver = _depositFeeReceiver; withdrawFeeReceiver = _withdrawFeeReceiver; token = IERC20(_token); console.log( "owner %s dev %s marketing %s", owner, depositFeeReceiver, withdrawFeeReceiver ); } function changeDevFeeReceiver(address newReceiver) external { if (msg.sender != owner) revert OnlyOwner(msg.sender); depositFeeReceiver = newReceiver; } ///@dev should market runes be 0 we can resest to initial state and also (re-)fund the contract again if needed function init() external view { if (msg.sender != owner) revert OnlyOwner(msg.sender); if (marketRunes > 0) revert NonZeroMarketRunes(marketRunes); } function fund() external view { if (msg.sender != owner) revert OnlyOwner(msg.sender); } // buy token from the contract function deposit(address ref, uint256 amount) public hasStarted { uint256 allowance = token.allowance(msg.sender, address(this)); require(allowance >= amount, "INSUFFICENT AMOUNT"); token.transferFrom(msg.sender, address(this), amount); uint256 runesBought = calculateRuneBuy( amount, token.balanceOf(address(this)) - amount ); uint256 depositFee = getDepositFee(runesBought); if (depositFee == 0) revert FeeTooLow(); runesBought = runesBought - depositFee; token.transfer(depositFeeReceiver, getDepositFee(amount)); claimedRunes[msg.sender] += runesBought; if (!hasParticipated[msg.sender]) { hasParticipated[msg.sender] = true; uniqueUsers++; } compound(ref); } ///@dev handles referrals function compound(address ref) public hasStarted { if (ref == msg.sender) ref = address(0); if ( referrals[msg.sender] == address(0) && referrals[msg.sender] != msg.sender ) { referrals[msg.sender] = ref; if (!hasParticipated[ref]) { hasParticipated[ref] = true; uniqueUsers++; } } uint256 runesUsed = getMyRunes(msg.sender); uint256 myRuneRewards = getRunesSinceLastInfusion(msg.sender); claimedRunes[msg.sender] += myRuneRewards; uint256 newMiners = claimedRunes[msg.sender] / RUNE_REQ_PER_MINER; claimedRunes[msg.sender] -= (RUNE_REQ_PER_MINER * newMiners); academyMiners[msg.sender] += newMiners; lastInfusion[msg.sender] = block.timestamp; // send referral runes claimedRunes[referrals[msg.sender]] += (runesUsed / 8); // boost market to nerf miners hoarding marketRunes += (runesUsed / 5); } // sells token to the contract function claim() external hasStarted { uint256 ownedRunes = getMyRunes(msg.sender); uint256 runeValue = calculateRuneSell(ownedRunes); uint256 withdrawFee = getWithdrawFee(runeValue); if (academyMiners[msg.sender] == 0) uniqueUsers--; claimedRunes[msg.sender] = 0; lastInfusion[msg.sender] = block.timestamp; marketRunes += ownedRunes; token.transfer(withdrawFeeReceiver, withdrawFee); token.transfer(msg.sender, runeValue - withdrawFee); } // ################################## view functions ######################################## function estimateDeposit(uint256 amount) external view returns (uint256 runes, uint256 miners) { runes = calculateRuneBuy(amount, token.balanceOf(address(this))); uint256 myRuneRewards = getRunesSinceLastInfusion(msg.sender); runes += myRuneRewards; miners = runes / RUNE_REQ_PER_MINER; } function runeRewards(address adr) external view returns (uint256) { return calculateRuneSell(getMyRunes(adr)); } function calculateRuneSell(uint256 runes) public view returns (uint256) { return calculateTrade(runes, marketRunes, token.balanceOf(address(this))); } function calculateRuneBuy(uint256 amount, uint256 contractBalance) public view returns (uint256) { return calculateTrade(amount, contractBalance, marketRunes); } function getBalance() external view returns (uint256) { return token.balanceOf(address(this)); } function getMyMiners() external view returns (uint256) { return academyMiners[msg.sender]; } function getMyRunes(address adr) public view returns (uint256) { return claimedRunes[adr] + getRunesSinceLastInfusion(adr); } function getRunesSinceLastInfusion(address adr) public view returns (uint256) { // 1 rune per second per miner return min(RUNE_REQ_PER_MINER, block.timestamp - lastInfusion[adr]) * academyMiners[adr]; } // private ones function calculateTrade( uint256 rt, uint256 rs, uint256 bs ) private pure returns (uint256) { return (PSN * bs) / (PSNH + (((rs * PSN) + (rt * PSNH)) / rt)); } function getDepositFee(uint256 amount) private pure returns (uint256) { return (amount * getDepositFeeVal) / 10000; } function getWithdrawFee(uint256 amount) private pure returns (uint256) { return (amount * getWithdrawFeeVal) / 10000; } function min(uint256 a, uint256 b) private pure returns (uint256) { return a < b ? a : b; } }
[{"inputs":[{"internalType":"address","name":"_depositFeeReceiver","type":"address"},{"internalType":"address","name":"_withdrawFeeReceiver","type":"address"},{"internalType":"address","name":"_token","type":"address"}],"stateMutability":"nonpayable","type":"constructor"},{"inputs":[],"name":"FeeTooLow","type":"error"},{"inputs":[{"internalType":"uint256","name":"","type":"uint256"}],"name":"NonZeroMarketRunes","type":"error"},{"inputs":[{"internalType":"uint256","name":"","type":"uint256"}],"name":"NotStarted","type":"error"},{"inputs":[{"internalType":"address","name":"","type":"address"}],"name":"OnlyOwner","type":"error"},{"inputs":[],"name":"START_TIME","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"uint256","name":"amount","type":"uint256"},{"internalType":"uint256","name":"contractBalance","type":"uint256"}],"name":"calculateRuneBuy","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"uint256","name":"runes","type":"uint256"}],"name":"calculateRuneSell","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"newReceiver","type":"address"}],"name":"changeDevFeeReceiver","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"claim","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"ref","type":"address"}],"name":"compound","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"ref","type":"address"},{"internalType":"uint256","name":"amount","type":"uint256"}],"name":"deposit","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"uint256","name":"amount","type":"uint256"}],"name":"estimateDeposit","outputs":[{"internalType":"uint256","name":"runes","type":"uint256"},{"internalType":"uint256","name":"miners","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"fund","outputs":[],"stateMutability":"view","type":"function"},{"inputs":[],"name":"getBalance","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"getMyMiners","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"adr","type":"address"}],"name":"getMyRunes","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"adr","type":"address"}],"name":"getRunesSinceLastInfusion","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"init","outputs":[],"stateMutability":"view","type":"function"},{"inputs":[],"name":"owner","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"adr","type":"address"}],"name":"runeRewards","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"uniqueUsers","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"}]
Contract Creation Code
60c06040526419254d38006001553480156200001a57600080fd5b50604051620023bd380380620023bd8339818101604052810190620000409190620002e5565b3373ffffffffffffffffffffffffffffffffffffffff1660808173ffffffffffffffffffffffffffffffffffffffff168152505082600360006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055508173ffffffffffffffffffffffffffffffffffffffff1660a08173ffffffffffffffffffffffffffffffffffffffff1681525050806000806101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055506200019d6040518060400160405280601c81526020017f6f776e657220257320646576202573206d61726b6574696e6720257300000000815250608051600360009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1660a051620001a660201b6200171f1760201c565b5050506200044a565b6200024c84848484604051602401620001c39493929190620003f6565b6040516020818303038152906040527fed8f28f6000000000000000000000000000000000000000000000000000000007bffffffffffffffffffffffffffffffffffffffffffffffffffffffff19166020820180517bffffffffffffffffffffffffffffffffffffffffffffffffffffffff83818316178352505050506200025260201b60201c565b50505050565b60008151905060006a636f6e736f6c652e6c6f679050602083016000808483855afa5050505050565b600080fd5b600073ffffffffffffffffffffffffffffffffffffffff82169050919050565b6000620002ad8262000280565b9050919050565b620002bf81620002a0565b8114620002cb57600080fd5b50565b600081519050620002df81620002b4565b92915050565b6000806000606084860312156200030157620003006200027b565b5b60006200031186828701620002ce565b93505060206200032486828701620002ce565b92505060406200033786828701620002ce565b9150509250925092565b600081519050919050565b600082825260208201905092915050565b60005b838110156200037d57808201518184015260208101905062000360565b838111156200038d576000848401525b50505050565b6000601f19601f8301169050919050565b6000620003b18262000341565b620003bd81856200034c565b9350620003cf8185602086016200035d565b620003da8162000393565b840191505092915050565b620003f081620002a0565b82525050565b60006080820190508181036000830152620004128187620003a4565b9050620004236020830186620003e5565b620004326040830185620003e5565b620004416060830184620003e5565b95945050505050565b60805160a051611f3862000485600039600061109f0152600081816113b3015281816114d701528181611571015261164d0152611f386000f3fe608060405234801561001057600080fd5b506004361061010b5760003560e01c80637da831d3116100a2578063af93f42511610071578063af93f425146102bb578063b60d4288146102eb578063ddaa26ad146102f5578063e1c7392a14610313578063f3bd08c81461031d5761010b565b80637da831d31461020c57806389466f521461023c5780638da5cb5b1461026c5780639074d4c81461028a5761010b565b806340aeff0e116100de57806340aeff0e1461019857806347e7ef24146101b65780634e71d92d146101d257806362c45661146101dc5761010b565b80630a76e5ed1461011057806312065fe01461012e5780632580fa6f1461014c578063284dac231461017c575b600080fd5b610118610339565b60405161012591906118c4565b60405180910390f35b610136610380565b60405161014391906118c4565b60405180910390f35b61016660048036038101906101619190611942565b610431565b60405161017391906118c4565b60405180910390f35b61019660048036038101906101919190611942565b61044b565b005b6101a06109e5565b6040516101ad91906118c4565b60405180910390f35b6101d060048036038101906101cb919061199b565b6109eb565b005b6101da610eee565b005b6101f660048036038101906101f191906119db565b6111ed565b60405161020391906118c4565b60405180910390f35b61022660048036038101906102219190611942565b6112ab565b60405161023391906118c4565b60405180910390f35b61025660048036038101906102519190611942565b611355565b60405161026391906118c4565b60405180910390f35b6102746113b1565b6040516102819190611a17565b60405180910390f35b6102a4600480360381019061029f91906119db565b6113d5565b6040516102b2929190611a32565b60405180910390f35b6102d560048036038101906102d09190611a5b565b6114be565b6040516102e291906118c4565b60405180910390f35b6102f36114d5565b005b6102fd611567565b60405161030a91906118c4565b60405180910390f35b61031b61156f565b005b61033760048036038101906103329190611942565b61164b565b005b6000600460003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054905090565b60008060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166370a08231306040518263ffffffff1660e01b81526004016103dc9190611a17565b60206040518083038186803b1580156103f457600080fd5b505afa158015610408573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061042c9190611ab0565b905090565b600061044461043f83611355565b6111ed565b9050919050565b63627a9a1042101561049457426040517f03454d3b00000000000000000000000000000000000000000000000000000000815260040161048b91906118c4565b60405180910390fd5b3373ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff1614156104cd57600090505b600073ffffffffffffffffffffffffffffffffffffffff16600860003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff161480156105f357503373ffffffffffffffffffffffffffffffffffffffff16600860003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1614155b156107395780600860003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550600760008273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff16610738576001600760008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff0219169083151502179055506002600081548092919061073290611b0c565b91905055505b5b600061074433611355565b90506000610751336112ab565b905080600560003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008282546107a29190611b55565b92505081905550600062107ac0600560003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020546107f99190611bda565b90508062107ac061080a9190611c0b565b600560003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008282546108589190611c65565b9250508190555080600460003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008282546108ae9190611b55565b9250508190555042600660003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055506008836109069190611bda565b60056000600860003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008282546109b39190611b55565b925050819055506005836109c79190611bda565b600160008282546109d89190611b55565b9250508190555050505050565b60025481565b63627a9a10421015610a3457426040517f03454d3b000000000000000000000000000000000000000000000000000000008152600401610a2b91906118c4565b60405180910390fd5b60008060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663dd62ed3e33306040518363ffffffff1660e01b8152600401610a92929190611c99565b60206040518083038186803b158015610aaa57600080fd5b505afa158015610abe573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610ae29190611ab0565b905081811015610b27576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610b1e90611d1f565b60405180910390fd5b60008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166323b872dd3330856040518463ffffffff1660e01b8152600401610b8493929190611d3f565b602060405180830381600087803b158015610b9e57600080fd5b505af1158015610bb2573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610bd69190611dae565b506000610c96838460008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166370a08231306040518263ffffffff1660e01b8152600401610c379190611a17565b60206040518083038186803b158015610c4f57600080fd5b505afa158015610c63573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610c879190611ab0565b610c919190611c65565b6114be565b90506000610ca3826117c1565b90506000811415610ce0576040517f732f941300000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b8082610cec9190611c65565b915060008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663a9059cbb600360009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16610d56876117c1565b6040518363ffffffff1660e01b8152600401610d73929190611ddb565b602060405180830381600087803b158015610d8d57600080fd5b505af1158015610da1573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610dc59190611dae565b5081600560003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206000828254610e159190611b55565b92505081905550600760003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff16610ede576001600760003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff02191690831515021790555060026000815480929190610ed890611b0c565b91905055505b610ee78561044b565b5050505050565b63627a9a10421015610f3757426040517f03454d3b000000000000000000000000000000000000000000000000000000008152600401610f2e91906118c4565b60405180910390fd5b6000610f4233611355565b90506000610f4f826111ed565b90506000610f5c826117e4565b90506000600460003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020541415610fbf5760026000815480929190610fb990611e04565b91905055505b6000600560003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000208190555042600660003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002081905550826001600082825461105a9190611b55565b9250508190555060008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663a9059cbb7f0000000000000000000000000000000000000000000000000000000000000000836040518363ffffffff1660e01b81526004016110dc929190611ddb565b602060405180830381600087803b1580156110f657600080fd5b505af115801561110a573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061112e9190611dae565b5060008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663a9059cbb3383856111789190611c65565b6040518363ffffffff1660e01b8152600401611195929190611ddb565b602060405180830381600087803b1580156111af57600080fd5b505af11580156111c3573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906111e79190611dae565b50505050565b60006112a48260015460008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166370a08231306040518263ffffffff1660e01b815260040161124f9190611a17565b60206040518083038186803b15801561126757600080fd5b505afa15801561127b573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061129f9190611ab0565b611808565b9050919050565b6000600460008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205461134462107ac0600660008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020544261133f9190611c65565b611869565b61134e9190611c0b565b9050919050565b6000611360826112ab565b600560008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020546113aa9190611b55565b9050919050565b7f000000000000000000000000000000000000000000000000000000000000000081565b60008061148a8360008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166370a08231306040518263ffffffff1660e01b81526004016114359190611a17565b60206040518083038186803b15801561144d57600080fd5b505afa158015611461573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906114859190611ab0565b6114be565b91506000611497336112ab565b905080836114a59190611b55565b925062107ac0836114b69190611bda565b915050915091565b60006114cd8383600154611808565b905092915050565b7f000000000000000000000000000000000000000000000000000000000000000073ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff161461156557336040517f0a86c02a00000000000000000000000000000000000000000000000000000000815260040161155c9190611a17565b60405180910390fd5b565b63627a9a1081565b7f000000000000000000000000000000000000000000000000000000000000000073ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff16146115ff57336040517f0a86c02a0000000000000000000000000000000000000000000000000000000081526004016115f69190611a17565b60405180910390fd5b60006001541115611649576001546040517fb0bf4b2200000000000000000000000000000000000000000000000000000000815260040161164091906118c4565b60405180910390fd5b565b7f000000000000000000000000000000000000000000000000000000000000000073ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff16146116db57336040517f0a86c02a0000000000000000000000000000000000000000000000000000000081526004016116d29190611a17565b60405180910390fd5b80600360006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555050565b6117bb848484846040516024016117399493929190611eb6565b6040516020818303038152906040527fed8f28f6000000000000000000000000000000000000000000000000000000007bffffffffffffffffffffffffffffffffffffffffffffffffffffffff19166020820180517bffffffffffffffffffffffffffffffffffffffffffffffffffffffff8381831617835250505050611882565b50505050565b600061271060c8836117d39190611c0b565b6117dd9190611bda565b9050919050565b6000612710610320836117f79190611c0b565b6118019190611bda565b9050919050565b600083611388856118199190611c0b565b612710856118279190611c0b565b6118319190611b55565b61183b9190611bda565b6113886118489190611b55565b826127106118569190611c0b565b6118609190611bda565b90509392505050565b6000818310611878578161187a565b825b905092915050565b60008151905060006a636f6e736f6c652e6c6f679050602083016000808483855afa5050505050565b6000819050919050565b6118be816118ab565b82525050565b60006020820190506118d960008301846118b5565b92915050565b600080fd5b600073ffffffffffffffffffffffffffffffffffffffff82169050919050565b600061190f826118e4565b9050919050565b61191f81611904565b811461192a57600080fd5b50565b60008135905061193c81611916565b92915050565b600060208284031215611958576119576118df565b5b60006119668482850161192d565b91505092915050565b611978816118ab565b811461198357600080fd5b50565b6000813590506119958161196f565b92915050565b600080604083850312156119b2576119b16118df565b5b60006119c08582860161192d565b92505060206119d185828601611986565b9150509250929050565b6000602082840312156119f1576119f06118df565b5b60006119ff84828501611986565b91505092915050565b611a1181611904565b82525050565b6000602082019050611a2c6000830184611a08565b92915050565b6000604082019050611a4760008301856118b5565b611a5460208301846118b5565b9392505050565b60008060408385031215611a7257611a716118df565b5b6000611a8085828601611986565b9250506020611a9185828601611986565b9150509250929050565b600081519050611aaa8161196f565b92915050565b600060208284031215611ac657611ac56118df565b5b6000611ad484828501611a9b565b91505092915050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b6000611b17826118ab565b91507fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff821415611b4a57611b49611add565b5b600182019050919050565b6000611b60826118ab565b9150611b6b836118ab565b9250827fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff03821115611ba057611b9f611add565b5b828201905092915050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601260045260246000fd5b6000611be5826118ab565b9150611bf0836118ab565b925082611c0057611bff611bab565b5b828204905092915050565b6000611c16826118ab565b9150611c21836118ab565b9250817fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff0483118215151615611c5a57611c59611add565b5b828202905092915050565b6000611c70826118ab565b9150611c7b836118ab565b925082821015611c8e57611c8d611add565b5b828203905092915050565b6000604082019050611cae6000830185611a08565b611cbb6020830184611a08565b9392505050565b600082825260208201905092915050565b7f494e535546464943454e5420414d4f554e540000000000000000000000000000600082015250565b6000611d09601283611cc2565b9150611d1482611cd3565b602082019050919050565b60006020820190508181036000830152611d3881611cfc565b9050919050565b6000606082019050611d546000830186611a08565b611d616020830185611a08565b611d6e60408301846118b5565b949350505050565b60008115159050919050565b611d8b81611d76565b8114611d9657600080fd5b50565b600081519050611da881611d82565b92915050565b600060208284031215611dc457611dc36118df565b5b6000611dd284828501611d99565b91505092915050565b6000604082019050611df06000830185611a08565b611dfd60208301846118b5565b9392505050565b6000611e0f826118ab565b91506000821415611e2357611e22611add565b5b600182039050919050565b600081519050919050565b60005b83811015611e57578082015181840152602081019050611e3c565b83811115611e66576000848401525b50505050565b6000601f19601f8301169050919050565b6000611e8882611e2e565b611e928185611cc2565b9350611ea2818560208601611e39565b611eab81611e6c565b840191505092915050565b60006080820190508181036000830152611ed08187611e7d565b9050611edf6020830186611a08565b611eec6040830185611a08565b611ef96060830184611a08565b9594505050505056fea2646970667358221220dbc08a29e97c87eec37f593531f6ade449ad43b3a2ab2da38d04f5cec996864e64736f6c63430008090033000000000000000000000000fa3367397c15fd2eba967ee1babd3098dfcc2e01000000000000000000000000fa3367397c15fd2eba967ee1babd3098dfcc2e0100000000000000000000000097749c9b61f878a880dfe312d2594ae07aed7656
Constructor Arguments (ABI-Encoded and is the last bytes of the Contract Creation Code above)
000000000000000000000000fa3367397c15fd2eba967ee1babd3098dfcc2e01000000000000000000000000fa3367397c15fd2eba967ee1babd3098dfcc2e0100000000000000000000000097749c9b61f878a880dfe312d2594ae07aed7656
-----Decoded View---------------
Arg [0] : _depositFeeReceiver (address): 0xfa3367397c15fd2eba967ee1babd3098dfcc2e01
Arg [1] : _withdrawFeeReceiver (address): 0xfa3367397c15fd2eba967ee1babd3098dfcc2e01
Arg [2] : _token (address): 0x97749c9b61f878a880dfe312d2594ae07aed7656
-----Encoded View---------------
3 Constructor Arguments found :
Arg [0] : 000000000000000000000000fa3367397c15fd2eba967ee1babd3098dfcc2e01
Arg [1] : 000000000000000000000000fa3367397c15fd2eba967ee1babd3098dfcc2e01
Arg [2] : 00000000000000000000000097749c9b61f878a880dfe312d2594ae07aed7656
Deployed ByteCode Sourcemap
118591:7285:0:-:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;124699:106;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;124581:110;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;124047:126;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;121945:1046;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;119194:26;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;121051:855;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;123035:532;;;:::i;:::-;;124181:177;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;124960:283;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;124813:139;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;119229:30;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;123676:363;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;;:::i;:::-;;;;;;;;124366:207;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;120905:102;;;:::i;:::-;;118880:47;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;120725:172;;;:::i;:::-;;120425:175;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;124699:106;124745:7;124772:13;:25;124786:10;124772:25;;;;;;;;;;;;;;;;124765:32;;124699:106;:::o;124581:110::-;124626:7;124653:5;;;;;;;;;;;:15;;;124677:4;124653:30;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;124646:37;;124581:110;:::o;124047:126::-;124104:7;124131:34;124149:15;124160:3;124149:10;:15::i;:::-;124131:17;:34::i;:::-;124124:41;;124047:126;;;:::o;121945:1046::-;118917:10;119804:15;:28;119800:68;;;119852:15;119841:27;;;;;;;;;;;:::i;:::-;;;;;;;;119800:68;122016:10:::1;122009:17;;:3;:17;;;122005:39;;;122042:1;122028:16;;122005:39;122108:1;122075:35;;:9;:21;122085:10;122075:21;;;;;;;;;;;;;;;;;;;;;;;;;:35;;;:87;;;;;122152:10;122127:35;;:9;:21;122137:10;122127:21;;;;;;;;;;;;;;;;;;;;;;;;;:35;;;;122075:87;122057:306;;;122213:3;122189:9;:21;122199:10;122189:21;;;;;;;;;;;;;;;;:27;;;;;;;;;;;;;;;;;;122236:15;:20;122252:3;122236:20;;;;;;;;;;;;;;;;;;;;;;;;;122231:121;;122300:4;122277:15;:20;122293:3;122277:20;;;;;;;;;;;;;;;;:27;;;;;;;;;;;;;;;;;;122323:11;;:13;;;;;;;;;:::i;:::-;;;;;;122231:121;122057:306;122375:17;122395:22;122406:10;122395;:22::i;:::-;122375:42;;122428:21;122452:37;122478:10;122452:25;:37::i;:::-;122428:61;;122528:13;122500:12;:24;122513:10;122500:24;;;;;;;;;;;;;;;;:41;;;;;;;:::i;:::-;;;;;;;;122554:17;118794:9;122574:12;:24;122587:10;122574:24;;;;;;;;;;;;;;;;:45;;;;:::i;:::-;122554:65;;122680:9;118794;122659:30;;;;:::i;:::-;122630:12;:24;122643:10;122630:24;;;;;;;;;;;;;;;;:60;;;;;;;:::i;:::-;;;;;;;;122730:9;122701:13;:25;122715:10;122701:25;;;;;;;;;;;;;;;;:38;;;;;;;:::i;:::-;;;;;;;;122777:15;122750:12;:24;122763:10;122750:24;;;;;;;;;;;;;;;:42;;;;122889:1;122877:9;:13;;;;:::i;:::-;122837:12;:35;122850:9;:21;122860:10;122850:21;;;;;;;;;;;;;;;;;;;;;;;;;122837:35;;;;;;;;;;;;;;;;:54;;;;;;;:::i;:::-;;;;;;;;122981:1;122969:9;:13;;;;:::i;:::-;122953:11;;:30;;;;;;;:::i;:::-;;;;;;;;121994:997;;;121945:1046:::0;:::o;119194:26::-;;;;:::o;121051:855::-;118917:10;119804:15;:28;119800:68;;;119852:15;119841:27;;;;;;;;;;;:::i;:::-;;;;;;;;119800:68;121126:17:::1;121146:5:::0;::::1;;;;;;;;;;:15;;;121162:10;121182:4;121146:42;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;121126:62;;121220:6;121207:9;:19;;121199:50;;;;;;;;;;;;:::i;:::-;;;;;;;;;121262:5;::::0;::::1;;;;;;;;:18;;;121281:10;121301:4;121308:6;121262:53;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;121328:19;121350:102;121381:6;121435;121402:5;::::0;::::1;;;;;;;;:15;;;121426:4;121402:30;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;:39;;;;:::i;:::-;121350:16;:102::i;:::-;121328:124;;121465:18;121486:26;121500:11;121486:13;:26::i;:::-;121465:47;;121543:1;121529:10;:15;121525:39;;;121553:11;;;;;;;;;;;;;;121525:39;121605:10;121591:11;:24;;;;:::i;:::-;121577:38;;121628:5;::::0;::::1;;;;;;;;:14;;;121643:18;;;;;;;;;;;121663:21;121677:6;121663:13;:21::i;:::-;121628:57;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;121726:11;121698:12;:24;121711:10;121698:24;;;;;;;;;;;;;;;;:39;;;;;;;:::i;:::-;;;;;;;;121755:15;:27;121771:10;121755:27;;;;;;;;;;;;;;;;;;;;;;;;;121750:123;;121829:4;121799:15;:27;121815:10;121799:27;;;;;;;;;;;;;;;;:34;;;;;;;;;;;;;;;;;;121848:11;;:13;;;;;;;;;:::i;:::-;;;;;;121750:123;121885:13;121894:3;121885:8;:13::i;:::-;121115:791;;;121051:855:::0;;:::o;123035:532::-;118917:10;119804:15;:28;119800:68;;;119852:15;119841:27;;;;;;;;;;;:::i;:::-;;;;;;;;119800:68;123083:18:::1;123104:22;123115:10;123104;:22::i;:::-;123083:43;;123137:17;123157:29;123175:10;123157:17;:29::i;:::-;123137:49;;123199:19;123221:25;123236:9;123221:14;:25::i;:::-;123199:47;;123292:1;123263:13;:25;123277:10;123263:25;;;;;;;;;;;;;;;;:30;123259:49;;;123295:11;;:13;;;;;;;;;:::i;:::-;;;;;;123259:49;123346:1;123319:12;:24;123332:10;123319:24;;;;;;;;;;;;;;;:28;;;;123385:15;123358:12;:24;123371:10;123358:24;;;;;;;;;;;;;;;:42;;;;123426:10;123411:11;;:25;;;;;;;:::i;:::-;;;;;;;;123447:5;::::0;::::1;;;;;;;;:14;;;123462:19;123483:11;123447:48;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;123508:5;::::0;::::1;;;;;;;;:14;;;123523:10;123547:11;123535:9;:23;;;;:::i;:::-;123508:51;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;123072:495;;;123035:532::o:0;124181:177::-;124244:7;124284:66;124299:5;124306:11;;124319:5;;;;;;;;;;:15;;;124343:4;124319:30;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;124284:14;:66::i;:::-;124264:86;;124181:177;;;:::o;124960:283::-;125056:7;125217:13;:18;125231:3;125217:18;;;;;;;;;;;;;;;;125141:60;118794:9;125183:12;:17;125196:3;125183:17;;;;;;;;;;;;;;;;125165:15;:35;;;;:::i;:::-;125141:3;:60::i;:::-;:94;;;;:::i;:::-;125121:114;;124960:283;;;:::o;124813:139::-;124867:7;124914:30;124940:3;124914:25;:30::i;:::-;124894:12;:17;124907:3;124894:17;;;;;;;;;;;;;;;;:50;;;;:::i;:::-;124887:57;;124813:139;;;:::o;119229:30::-;;;:::o;123676:363::-;123767:13;123782:14;123822:56;123839:6;123847:5;;;;;;;;;;:15;;;123871:4;123847:30;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;123822:16;:56::i;:::-;123814:64;;123889:21;123913:37;123939:10;123913:25;:37::i;:::-;123889:61;;123970:13;123961:22;;;;;:::i;:::-;;;118794:9;124005:5;:26;;;;:::i;:::-;123996:35;;123803:236;123676:363;;;:::o;124366:207::-;124481:7;124513:52;124528:6;124536:15;124553:11;;124513:14;:52::i;:::-;124506:59;;124366:207;;;;:::o;120905:102::-;120964:5;120950:19;;:10;:19;;;120946:53;;120988:10;120978:21;;;;;;;;;;;:::i;:::-;;;;;;;;120946:53;120905:102::o;118880:47::-;118917:10;118880:47;:::o;120725:172::-;120784:5;120770:19;;:10;:19;;;120766:53;;120808:10;120798:21;;;;;;;;;;;:::i;:::-;;;;;;;;120766:53;120848:1;120834:11;;:15;120830:59;;;120877:11;;120858:31;;;;;;;;;;;:::i;:::-;;;;;;;;120830:59;120725:172::o;120425:175::-;120514:5;120500:19;;:10;:19;;;120496:53;;120538:10;120528:21;;;;;;;;;;;:::i;:::-;;;;;;;;120496:53;120581:11;120560:18;;:32;;;;;;;;;;;;;;;;;;120425:175;:::o;71598:362::-;71733:219;71861:2;71882;71903;71924;71763:178;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;71733:15;:219::i;:::-;71598:362;;;;:::o;125488:131::-;125549:7;125606:5;119068:3;125577:6;:25;;;;:::i;:::-;125576:35;;;;:::i;:::-;125569:42;;125488:131;;;:::o;125627:133::-;125689:7;125747:5;119123:3;125717:6;:26;;;;:::i;:::-;125716:36;;;;:::i;:::-;125709:43;;125627:133;;;:::o;125274:206::-;125390:7;125468:2;119011:4;125454:2;:9;;;;:::i;:::-;118967:5;125441:2;:8;;;;:::i;:::-;125440:24;;;;:::i;:::-;125439:31;;;;:::i;:::-;119011:4;125431:40;;;;:::i;:::-;125424:2;118967:5;125418:8;;;;:::i;:::-;125417:55;;;;:::i;:::-;125410:62;;125274:206;;;;;:::o;125768:105::-;125825:7;125856:1;125852;:5;:13;;125864:1;125852:13;;;125860:1;125852:13;125845:20;;125768:105;;;;:::o;3178:457::-;3249:21;3273:7;:14;3249:38;;3298:22;3126:42;3298:40;;3406:2;3397:7;3393:16;3601:1;3581;3549:13;3518:12;3485:14;3461:5;3432:185;3358:270;;;;3178:457;:::o;7:77:1:-;44:7;73:5;62:16;;7:77;;;:::o;90:118::-;177:24;195:5;177:24;:::i;:::-;172:3;165:37;90:118;;:::o;214:222::-;307:4;345:2;334:9;330:18;322:26;;358:71;426:1;415:9;411:17;402:6;358:71;:::i;:::-;214:222;;;;:::o;523:117::-;632:1;629;622:12;769:126;806:7;846:42;839:5;835:54;824:65;;769:126;;;:::o;901:96::-;938:7;967:24;985:5;967:24;:::i;:::-;956:35;;901:96;;;:::o;1003:122::-;1076:24;1094:5;1076:24;:::i;:::-;1069:5;1066:35;1056:63;;1115:1;1112;1105:12;1056:63;1003:122;:::o;1131:139::-;1177:5;1215:6;1202:20;1193:29;;1231:33;1258:5;1231:33;:::i;:::-;1131:139;;;;:::o;1276:329::-;1335:6;1384:2;1372:9;1363:7;1359:23;1355:32;1352:119;;;1390:79;;:::i;:::-;1352:119;1510:1;1535:53;1580:7;1571:6;1560:9;1556:22;1535:53;:::i;:::-;1525:63;;1481:117;1276:329;;;;:::o;1611:122::-;1684:24;1702:5;1684:24;:::i;:::-;1677:5;1674:35;1664:63;;1723:1;1720;1713:12;1664:63;1611:122;:::o;1739:139::-;1785:5;1823:6;1810:20;1801:29;;1839:33;1866:5;1839:33;:::i;:::-;1739:139;;;;:::o;1884:474::-;1952:6;1960;2009:2;1997:9;1988:7;1984:23;1980:32;1977:119;;;2015:79;;:::i;:::-;1977:119;2135:1;2160:53;2205:7;2196:6;2185:9;2181:22;2160:53;:::i;:::-;2150:63;;2106:117;2262:2;2288:53;2333:7;2324:6;2313:9;2309:22;2288:53;:::i;:::-;2278:63;;2233:118;1884:474;;;;;:::o;2364:329::-;2423:6;2472:2;2460:9;2451:7;2447:23;2443:32;2440:119;;;2478:79;;:::i;:::-;2440:119;2598:1;2623:53;2668:7;2659:6;2648:9;2644:22;2623:53;:::i;:::-;2613:63;;2569:117;2364:329;;;;:::o;2699:118::-;2786:24;2804:5;2786:24;:::i;:::-;2781:3;2774:37;2699:118;;:::o;2823:222::-;2916:4;2954:2;2943:9;2939:18;2931:26;;2967:71;3035:1;3024:9;3020:17;3011:6;2967:71;:::i;:::-;2823:222;;;;:::o;3051:332::-;3172:4;3210:2;3199:9;3195:18;3187:26;;3223:71;3291:1;3280:9;3276:17;3267:6;3223:71;:::i;:::-;3304:72;3372:2;3361:9;3357:18;3348:6;3304:72;:::i;:::-;3051:332;;;;;:::o;3389:474::-;3457:6;3465;3514:2;3502:9;3493:7;3489:23;3485:32;3482:119;;;3520:79;;:::i;:::-;3482:119;3640:1;3665:53;3710:7;3701:6;3690:9;3686:22;3665:53;:::i;:::-;3655:63;;3611:117;3767:2;3793:53;3838:7;3829:6;3818:9;3814:22;3793:53;:::i;:::-;3783:63;;3738:118;3389:474;;;;;:::o;3869:143::-;3926:5;3957:6;3951:13;3942:22;;3973:33;4000:5;3973:33;:::i;:::-;3869:143;;;;:::o;4018:351::-;4088:6;4137:2;4125:9;4116:7;4112:23;4108:32;4105:119;;;4143:79;;:::i;:::-;4105:119;4263:1;4288:64;4344:7;4335:6;4324:9;4320:22;4288:64;:::i;:::-;4278:74;;4234:128;4018:351;;;;:::o;4375:180::-;4423:77;4420:1;4413:88;4520:4;4517:1;4510:15;4544:4;4541:1;4534:15;4561:233;4600:3;4623:24;4641:5;4623:24;:::i;:::-;4614:33;;4669:66;4662:5;4659:77;4656:103;;;4739:18;;:::i;:::-;4656:103;4786:1;4779:5;4775:13;4768:20;;4561:233;;;:::o;4800:305::-;4840:3;4859:20;4877:1;4859:20;:::i;:::-;4854:25;;4893:20;4911:1;4893:20;:::i;:::-;4888:25;;5047:1;4979:66;4975:74;4972:1;4969:81;4966:107;;;5053:18;;:::i;:::-;4966:107;5097:1;5094;5090:9;5083:16;;4800:305;;;;:::o;5111:180::-;5159:77;5156:1;5149:88;5256:4;5253:1;5246:15;5280:4;5277:1;5270:15;5297:185;5337:1;5354:20;5372:1;5354:20;:::i;:::-;5349:25;;5388:20;5406:1;5388:20;:::i;:::-;5383:25;;5427:1;5417:35;;5432:18;;:::i;:::-;5417:35;5474:1;5471;5467:9;5462:14;;5297:185;;;;:::o;5488:348::-;5528:7;5551:20;5569:1;5551:20;:::i;:::-;5546:25;;5585:20;5603:1;5585:20;:::i;:::-;5580:25;;5773:1;5705:66;5701:74;5698:1;5695:81;5690:1;5683:9;5676:17;5672:105;5669:131;;;5780:18;;:::i;:::-;5669:131;5828:1;5825;5821:9;5810:20;;5488:348;;;;:::o;5842:191::-;5882:4;5902:20;5920:1;5902:20;:::i;:::-;5897:25;;5936:20;5954:1;5936:20;:::i;:::-;5931:25;;5975:1;5972;5969:8;5966:34;;;5980:18;;:::i;:::-;5966:34;6025:1;6022;6018:9;6010:17;;5842:191;;;;:::o;6039:332::-;6160:4;6198:2;6187:9;6183:18;6175:26;;6211:71;6279:1;6268:9;6264:17;6255:6;6211:71;:::i;:::-;6292:72;6360:2;6349:9;6345:18;6336:6;6292:72;:::i;:::-;6039:332;;;;;:::o;6377:169::-;6461:11;6495:6;6490:3;6483:19;6535:4;6530:3;6526:14;6511:29;;6377:169;;;;:::o;6552:168::-;6692:20;6688:1;6680:6;6676:14;6669:44;6552:168;:::o;6726:366::-;6868:3;6889:67;6953:2;6948:3;6889:67;:::i;:::-;6882:74;;6965:93;7054:3;6965:93;:::i;:::-;7083:2;7078:3;7074:12;7067:19;;6726:366;;;:::o;7098:419::-;7264:4;7302:2;7291:9;7287:18;7279:26;;7351:9;7345:4;7341:20;7337:1;7326:9;7322:17;7315:47;7379:131;7505:4;7379:131;:::i;:::-;7371:139;;7098:419;;;:::o;7523:442::-;7672:4;7710:2;7699:9;7695:18;7687:26;;7723:71;7791:1;7780:9;7776:17;7767:6;7723:71;:::i;:::-;7804:72;7872:2;7861:9;7857:18;7848:6;7804:72;:::i;:::-;7886;7954:2;7943:9;7939:18;7930:6;7886:72;:::i;:::-;7523:442;;;;;;:::o;7971:90::-;8005:7;8048:5;8041:13;8034:21;8023:32;;7971:90;;;:::o;8067:116::-;8137:21;8152:5;8137:21;:::i;:::-;8130:5;8127:32;8117:60;;8173:1;8170;8163:12;8117:60;8067:116;:::o;8189:137::-;8243:5;8274:6;8268:13;8259:22;;8290:30;8314:5;8290:30;:::i;:::-;8189:137;;;;:::o;8332:345::-;8399:6;8448:2;8436:9;8427:7;8423:23;8419:32;8416:119;;;8454:79;;:::i;:::-;8416:119;8574:1;8599:61;8652:7;8643:6;8632:9;8628:22;8599:61;:::i;:::-;8589:71;;8545:125;8332:345;;;;:::o;8683:332::-;8804:4;8842:2;8831:9;8827:18;8819:26;;8855:71;8923:1;8912:9;8908:17;8899:6;8855:71;:::i;:::-;8936:72;9004:2;8993:9;8989:18;8980:6;8936:72;:::i;:::-;8683:332;;;;;:::o;9021:171::-;9060:3;9083:24;9101:5;9083:24;:::i;:::-;9074:33;;9129:4;9122:5;9119:15;9116:41;;;9137:18;;:::i;:::-;9116:41;9184:1;9177:5;9173:13;9166:20;;9021:171;;;:::o;9198:99::-;9250:6;9284:5;9278:12;9268:22;;9198:99;;;:::o;9303:307::-;9371:1;9381:113;9395:6;9392:1;9389:13;9381:113;;;9480:1;9475:3;9471:11;9465:18;9461:1;9456:3;9452:11;9445:39;9417:2;9414:1;9410:10;9405:15;;9381:113;;;9512:6;9509:1;9506:13;9503:101;;;9592:1;9583:6;9578:3;9574:16;9567:27;9503:101;9352:258;9303:307;;;:::o;9616:102::-;9657:6;9708:2;9704:7;9699:2;9692:5;9688:14;9684:28;9674:38;;9616:102;;;:::o;9724:364::-;9812:3;9840:39;9873:5;9840:39;:::i;:::-;9895:71;9959:6;9954:3;9895:71;:::i;:::-;9888:78;;9975:52;10020:6;10015:3;10008:4;10001:5;9997:16;9975:52;:::i;:::-;10052:29;10074:6;10052:29;:::i;:::-;10047:3;10043:39;10036:46;;9816:272;9724:364;;;;:::o;10094:644::-;10291:4;10329:3;10318:9;10314:19;10306:27;;10379:9;10373:4;10369:20;10365:1;10354:9;10350:17;10343:47;10407:78;10480:4;10471:6;10407:78;:::i;:::-;10399:86;;10495:72;10563:2;10552:9;10548:18;10539:6;10495:72;:::i;:::-;10577;10645:2;10634:9;10630:18;10621:6;10577:72;:::i;:::-;10659;10727:2;10716:9;10712:18;10703:6;10659:72;:::i;:::-;10094:644;;;;;;;:::o
Swarm Source
ipfs://dbc08a29e97c87eec37f593531f6ade449ad43b3a2ab2da38d04f5cec996864e
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.