diff --git a/.vscode/settings.json b/.vscode/settings.json new file mode 100644 index 0000000..9e26dfe --- /dev/null +++ b/.vscode/settings.json @@ -0,0 +1 @@ +{} \ No newline at end of file diff --git a/cache/solidity-files-cache.json b/cache/solidity-files-cache.json deleted file mode 100644 index 6830ec9..0000000 --- a/cache/solidity-files-cache.json +++ /dev/null @@ -1,414 +0,0 @@ -{ - "_format": "ethers-rs-sol-cache-3", - "paths": { - "artifacts": "out", - "sources": "src", - "tests": "test", - "libraries": [ - "lib" - ] - }, - "files": { - "/mnt/c/Users/PizzaHi5/Documents/CreatorDAO/CreatorDAO/lib/chainlink/contracts/src/v0.8/KeeperBase.sol": { - "lastModificationDate": 1653016585036, - "contentHash": "216a5d4c261e07cc7b31f828950e35ad", - "sourceName": "lib/chainlink/contracts/src/v0.8/KeeperBase.sol", - "solcConfig": { - "settings": { - "optimizer": { - "enabled": true, - "runs": 200 - }, - "metadata": { - "bytecodeHash": "ipfs" - }, - "outputSelection": { - "*": { - "": [ - "ast" - ], - "*": [ - "abi", - "evm.bytecode", - "evm.deployedBytecode", - "evm.methodIdentifiers" - ] - } - }, - "evmVersion": "london" - } - }, - "imports": [], - "versionRequirement": "^0.8.0", - "artifacts": { - "KeeperBase": { - "0.8.13+commit.abaa5c0e.Linux.gcc": "KeeperBase.sol/KeeperBase.json" - } - } - }, - "/mnt/c/Users/PizzaHi5/Documents/CreatorDAO/CreatorDAO/lib/chainlink/contracts/src/v0.8/KeeperCompatible.sol": { - "lastModificationDate": 1653016585036, - "contentHash": "c153645393332a62a1e73cb0d5a6162c", - "sourceName": "lib/chainlink/contracts/src/v0.8/KeeperCompatible.sol", - "solcConfig": { - "settings": { - "optimizer": { - "enabled": true, - "runs": 200 - }, - "metadata": { - "bytecodeHash": "ipfs" - }, - "outputSelection": { - "*": { - "": [ - "ast" - ], - "*": [ - "abi", - "evm.bytecode", - "evm.deployedBytecode", - "evm.methodIdentifiers" - ] - } - }, - "evmVersion": "london" - } - }, - "imports": [ - "lib/chainlink/contracts/src/v0.8/KeeperBase.sol", - "lib/chainlink/contracts/src/v0.8/interfaces/KeeperCompatibleInterface.sol" - ], - "versionRequirement": "^0.8.0", - "artifacts": { - "KeeperCompatible": { - "0.8.13+commit.abaa5c0e.Linux.gcc": "KeeperCompatible.sol/KeeperCompatible.json" - } - } - }, - "/mnt/c/Users/PizzaHi5/Documents/CreatorDAO/CreatorDAO/lib/chainlink/contracts/src/v0.8/interfaces/KeeperCompatibleInterface.sol": { - "lastModificationDate": 1653016585676, - "contentHash": "bdbf3e274e50272d9c830fa414fcbec9", - "sourceName": "lib/chainlink/contracts/src/v0.8/interfaces/KeeperCompatibleInterface.sol", - "solcConfig": { - "settings": { - "optimizer": { - "enabled": true, - "runs": 200 - }, - "metadata": { - "bytecodeHash": "ipfs" - }, - "outputSelection": { - "*": { - "": [ - "ast" - ], - "*": [ - "abi", - "evm.bytecode", - "evm.deployedBytecode", - "evm.methodIdentifiers" - ] - } - }, - "evmVersion": "london" - } - }, - "imports": [], - "versionRequirement": "^0.8.0", - "artifacts": { - "KeeperCompatibleInterface": { - "0.8.13+commit.abaa5c0e.Linux.gcc": "KeeperCompatibleInterface.sol/KeeperCompatibleInterface.json" - } - } - }, - "/mnt/c/Users/PizzaHi5/Documents/CreatorDAO/CreatorDAO/lib/forge-std/lib/ds-test/src/test.sol": { - "lastModificationDate": 1653017738689, - "contentHash": "962996f0e05d5218857a538a62d7c47e", - "sourceName": "lib/forge-std/lib/ds-test/src/test.sol", - "solcConfig": { - "settings": { - "optimizer": { - "enabled": true, - "runs": 200 - }, - "metadata": { - "bytecodeHash": "ipfs" - }, - "outputSelection": { - "*": { - "": [ - "ast" - ], - "*": [ - "abi", - "evm.bytecode", - "evm.deployedBytecode", - "evm.methodIdentifiers" - ] - } - }, - "evmVersion": "london" - } - }, - "imports": [], - "versionRequirement": ">=0.5.0", - "artifacts": { - "DSTest": { - "0.8.13+commit.abaa5c0e.Linux.gcc": "test.sol/DSTest.json" - } - } - }, - "/mnt/c/Users/PizzaHi5/Documents/CreatorDAO/CreatorDAO/lib/openzeppelin-contracts/contracts/token/ERC20/IERC20.sol": { - "lastModificationDate": 1652740572928, - "contentHash": "ad7c2d0af148c8f9f097d65deeb4da6b", - "sourceName": "lib/openzeppelin-contracts/contracts/token/ERC20/IERC20.sol", - "solcConfig": { - "settings": { - "optimizer": { - "enabled": true, - "runs": 200 - }, - "metadata": { - "bytecodeHash": "ipfs" - }, - "outputSelection": { - "*": { - "": [ - "ast" - ], - "*": [ - "abi", - "evm.bytecode", - "evm.deployedBytecode", - "evm.methodIdentifiers" - ] - } - }, - "evmVersion": "london" - } - }, - "imports": [], - "versionRequirement": "^0.8.0", - "artifacts": { - "IERC20": { - "0.8.13+commit.abaa5c0e.Linux.gcc": "IERC20.sol/IERC20.json" - } - } - }, - "/mnt/c/Users/PizzaHi5/Documents/CreatorDAO/CreatorDAO/lib/openzeppelin-contracts/contracts/token/ERC20/utils/SafeERC20.sol": { - "lastModificationDate": 1652740572999, - "contentHash": "76814c83c32552ed2b521c816b4d801a", - "sourceName": "lib/openzeppelin-contracts/contracts/token/ERC20/utils/SafeERC20.sol", - "solcConfig": { - "settings": { - "optimizer": { - "enabled": true, - "runs": 200 - }, - "metadata": { - "bytecodeHash": "ipfs" - }, - "outputSelection": { - "*": { - "": [ - "ast" - ], - "*": [ - "abi", - "evm.bytecode", - "evm.deployedBytecode", - "evm.methodIdentifiers" - ] - } - }, - "evmVersion": "london" - } - }, - "imports": [ - "lib/openzeppelin-contracts/contracts/token/ERC20/IERC20.sol", - "lib/openzeppelin-contracts/contracts/utils/Address.sol" - ], - "versionRequirement": "^0.8.0", - "artifacts": { - "SafeERC20": { - "0.8.13+commit.abaa5c0e.Linux.gcc": "SafeERC20.sol/SafeERC20.json" - } - } - }, - "/mnt/c/Users/PizzaHi5/Documents/CreatorDAO/CreatorDAO/lib/openzeppelin-contracts/contracts/token/ERC20/utils/TokenTimelock.sol": { - "lastModificationDate": 1652740573002, - "contentHash": "5d2b54b53436cb1d51e9aed8f2b27982", - "sourceName": "lib/openzeppelin-contracts/contracts/token/ERC20/utils/TokenTimelock.sol", - "solcConfig": { - "settings": { - "optimizer": { - "enabled": true, - "runs": 200 - }, - "metadata": { - "bytecodeHash": "ipfs" - }, - "outputSelection": { - "*": { - "": [ - "ast" - ], - "*": [ - "abi", - "evm.bytecode", - "evm.deployedBytecode", - "evm.methodIdentifiers" - ] - } - }, - "evmVersion": "london" - } - }, - "imports": [ - "lib/openzeppelin-contracts/contracts/token/ERC20/IERC20.sol", - "lib/openzeppelin-contracts/contracts/token/ERC20/utils/SafeERC20.sol", - "lib/openzeppelin-contracts/contracts/utils/Address.sol" - ], - "versionRequirement": "^0.8.0", - "artifacts": { - "TokenTimelock": { - "0.8.13+commit.abaa5c0e.Linux.gcc": "TokenTimelock.sol/TokenTimelock.json" - } - } - }, - "/mnt/c/Users/PizzaHi5/Documents/CreatorDAO/CreatorDAO/lib/openzeppelin-contracts/contracts/utils/Address.sol": { - "lastModificationDate": 1653351092984, - "contentHash": "1907721a20f3940c8c10d080893ced64", - "sourceName": "lib/openzeppelin-contracts/contracts/utils/Address.sol", - "solcConfig": { - "settings": { - "optimizer": { - "enabled": true, - "runs": 200 - }, - "metadata": { - "bytecodeHash": "ipfs" - }, - "outputSelection": { - "*": { - "": [ - "ast" - ], - "*": [ - "abi", - "evm.bytecode", - "evm.deployedBytecode", - "evm.methodIdentifiers" - ] - } - }, - "evmVersion": "london" - } - }, - "imports": [], - "versionRequirement": "^0.8.1", - "artifacts": { - "Address": { - "0.8.13+commit.abaa5c0e.Linux.gcc": "Address.sol/Address.json" - } - } - }, - "/mnt/c/Users/PizzaHi5/Documents/CreatorDAO/CreatorDAO/src/AssetCreationr1.sol": { - "lastModificationDate": 1653530871426, - "contentHash": "1e7148c238a76ec845182da669220b8a", - "sourceName": "src/AssetCreationr1.sol", - "solcConfig": { - "settings": { - "optimizer": { - "enabled": true, - "runs": 200 - }, - "metadata": { - "bytecodeHash": "ipfs" - }, - "outputSelection": { - "*": { - "": [ - "ast" - ], - "*": [ - "abi", - "evm.bytecode", - "evm.deployedBytecode", - "evm.methodIdentifiers" - ] - } - }, - "evmVersion": "london" - } - }, - "imports": [ - "lib/chainlink/contracts/src/v0.8/KeeperBase.sol", - "lib/chainlink/contracts/src/v0.8/KeeperCompatible.sol", - "lib/chainlink/contracts/src/v0.8/interfaces/KeeperCompatibleInterface.sol", - "lib/openzeppelin-contracts/contracts/token/ERC20/IERC20.sol", - "lib/openzeppelin-contracts/contracts/token/ERC20/utils/SafeERC20.sol", - "lib/openzeppelin-contracts/contracts/token/ERC20/utils/TokenTimelock.sol", - "lib/openzeppelin-contracts/contracts/utils/Address.sol" - ], - "versionRequirement": "^0.8.0", - "artifacts": { - "AssetCreation": { - "0.8.13+commit.abaa5c0e.Linux.gcc": "AssetCreationr1.sol/AssetCreation.json" - } - } - }, - "/mnt/c/Users/PizzaHi5/Documents/CreatorDAO/CreatorDAO/test/AssetCreation.t.sol": { - "lastModificationDate": 1653507187889, - "contentHash": "e5162c717081b92dd8845c84cbda6b15", - "sourceName": "test/AssetCreation.t.sol", - "solcConfig": { - "settings": { - "optimizer": { - "enabled": true, - "runs": 200 - }, - "metadata": { - "bytecodeHash": "ipfs" - }, - "outputSelection": { - "*": { - "": [ - "ast" - ], - "*": [ - "abi", - "evm.bytecode", - "evm.deployedBytecode", - "evm.methodIdentifiers" - ] - } - }, - "evmVersion": "london" - } - }, - "imports": [ - "lib/chainlink/contracts/src/v0.8/KeeperBase.sol", - "lib/chainlink/contracts/src/v0.8/KeeperCompatible.sol", - "lib/chainlink/contracts/src/v0.8/interfaces/KeeperCompatibleInterface.sol", - "lib/forge-std/lib/ds-test/src/test.sol", - "lib/openzeppelin-contracts/contracts/token/ERC20/IERC20.sol", - "lib/openzeppelin-contracts/contracts/token/ERC20/utils/SafeERC20.sol", - "lib/openzeppelin-contracts/contracts/token/ERC20/utils/TokenTimelock.sol", - "lib/openzeppelin-contracts/contracts/utils/Address.sol", - "src/AssetCreationr1.sol" - ], - "versionRequirement": "^0.8.13", - "artifacts": { - "AssetCreationTest": { - "0.8.13+commit.abaa5c0e.Linux.gcc": "AssetCreation.t.sol/AssetCreationTest.json" - }, - "CheatCodes": { - "0.8.13+commit.abaa5c0e.Linux.gcc": "AssetCreation.t.sol/CheatCodes.json" - } - } - } - } -} \ No newline at end of file diff --git a/lib/chainlink b/lib/chainlink index 73e70a9..8f9b151 160000 --- a/lib/chainlink +++ b/lib/chainlink @@ -1 +1 @@ -Subproject commit 73e70a927ac040d09f70f0048715ceeabf7d8aba +Subproject commit 8f9b151a4fca3b4d3fa940123a5f1f6f876f3177 diff --git a/lib/forge-std b/lib/forge-std index 1680d7f..2a2ce36 160000 --- a/lib/forge-std +++ b/lib/forge-std @@ -1 +1 @@ -Subproject commit 1680d7fb3e00b7b197a7336e7c88e838c7e6a3ec +Subproject commit 2a2ce3692b8c1523b29de3ec9d961ee9fbbc43a6 diff --git a/lib/openzeppelin-contracts b/lib/openzeppelin-contracts index 65b4572..8d908fe 160000 --- a/lib/openzeppelin-contracts +++ b/lib/openzeppelin-contracts @@ -1 +1 @@ -Subproject commit 65b45726b34dafe8fc3ef78c3d4b7b3f404f61ad +Subproject commit 8d908fe2c20503b05f888dd9f702e3fa6fa65840 diff --git a/out/Address.sol/Address.json b/out/Address.sol/Address.json deleted file mode 100644 index fde2542..0000000 --- a/out/Address.sol/Address.json +++ /dev/null @@ -1,3967 +0,0 @@ -{ - "abi": [], - "bytecode": { - "object": "0x60566037600b82828239805160001a607314602a57634e487b7160e01b600052600060045260246000fd5b30600052607381538281f3fe73000000000000000000000000000000000000000030146080604052600080fdfea2646970667358221220f12130c271d4886f1e1f3e0dd1346325f30ae258fd550c728aa8a0585cff694264736f6c634300080d0033", - "sourceMap": "194:8111:7:-:0;;;;;;;;;;;;;;;-1:-1:-1;;;194:8111:7;;;;;;;;;;;;;;;;;", - "linkReferences": {} - }, - "deployedBytecode": { - "object": "0x73000000000000000000000000000000000000000030146080604052600080fdfea2646970667358221220f12130c271d4886f1e1f3e0dd1346325f30ae258fd550c728aa8a0585cff694264736f6c634300080d0033", - "sourceMap": "194:8111:7:-:0;;;;;;;;", - "linkReferences": {} - }, - "ast": { - "absolutePath": "/mnt/c/Users/PizzaHi5/Documents/CreatorDAO/CreatorDAO/lib/openzeppelin-contracts/contracts/utils/Address.sol", - "id": 2558, - "exportedSymbols": { - "Address": [ - 2557 - ] - }, - "nodeType": "SourceUnit", - "src": "101:8205:7", - "nodes": [ - { - "id": 2264, - "nodeType": "PragmaDirective", - "src": "101:23:7", - "literals": [ - "solidity", - "^", - "0.8", - ".1" - ] - }, - { - "id": 2557, - "nodeType": "ContractDefinition", - "src": "194:8111:7", - "nodes": [ - { - "id": 2280, - "nodeType": "FunctionDefinition", - "src": "1175:320:7", - "body": { - "id": 2279, - "nodeType": "Block", - "src": "1241:254:7", - "statements": [ - { - "expression": { - "commonType": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "id": 2277, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "expression": { - "expression": { - "id": 2273, - "name": "account", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2268, - "src": "1465:7:7", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "id": 2274, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberName": "code", - "nodeType": "MemberAccess", - "src": "1465:12:7", - "typeDescriptions": { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes memory" - } - }, - "id": 2275, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberName": "length", - "nodeType": "MemberAccess", - "src": "1465:19:7", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "BinaryOperation", - "operator": ">", - "rightExpression": { - "hexValue": "30", - "id": 2276, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "number", - "lValueRequested": false, - "nodeType": "Literal", - "src": "1487:1:7", - "typeDescriptions": { - "typeIdentifier": "t_rational_0_by_1", - "typeString": "int_const 0" - }, - "value": "0" - }, - "src": "1465:23:7", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "functionReturnParameters": 2272, - "id": 2278, - "nodeType": "Return", - "src": "1458:30:7" - } - ] - }, - "documentation": { - "id": 2266, - "nodeType": "StructuredDocumentation", - "src": "216:954:7", - "text": " @dev Returns true if `account` is a contract.\n [IMPORTANT]\n ====\n It is unsafe to assume that an address for which this function returns\n false is an externally-owned account (EOA) and not a contract.\n Among others, `isContract` will return false for the following\n types of addresses:\n - an externally-owned account\n - a contract in construction\n - an address where a contract will be created\n - an address where a contract lived, but was destroyed\n ====\n [IMPORTANT]\n ====\n You shouldn't rely on `isContract` to protect against flash loan attacks!\n Preventing calls from contracts is highly discouraged. It breaks composability, breaks support for smart wallets\n like Gnosis Safe, and does not provide security since it can be circumvented by calling from a contract\n constructor.\n ====" - }, - "implemented": true, - "kind": "function", - "modifiers": [], - "name": "isContract", - "nameLocation": "1184:10:7", - "parameters": { - "id": 2269, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 2268, - "mutability": "mutable", - "name": "account", - "nameLocation": "1203:7:7", - "nodeType": "VariableDeclaration", - "scope": 2280, - "src": "1195:15:7", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "typeName": { - "id": 2267, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "1195:7:7", - "stateMutability": "nonpayable", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "visibility": "internal" - } - ], - "src": "1194:17:7" - }, - "returnParameters": { - "id": 2272, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 2271, - "mutability": "mutable", - "name": "", - "nameLocation": "-1:-1:-1", - "nodeType": "VariableDeclaration", - "scope": 2280, - "src": "1235:4:7", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - "typeName": { - "id": 2270, - "name": "bool", - "nodeType": "ElementaryTypeName", - "src": "1235:4:7", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "visibility": "internal" - } - ], - "src": "1234:6:7" - }, - "scope": 2557, - "stateMutability": "view", - "virtual": false, - "visibility": "internal" - }, - { - "id": 2314, - "nodeType": "FunctionDefinition", - "src": "2412:312:7", - "body": { - "id": 2313, - "nodeType": "Block", - "src": "2483:241:7", - "statements": [ - { - "expression": { - "arguments": [ - { - "commonType": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "id": 2295, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "expression": { - "arguments": [ - { - "id": 2291, - "name": "this", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": -28, - "src": "2509:4:7", - "typeDescriptions": { - "typeIdentifier": "t_contract$_Address_$2557", - "typeString": "library Address" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_contract$_Address_$2557", - "typeString": "library Address" - } - ], - "id": 2290, - "isConstant": false, - "isLValue": false, - "isPure": true, - "lValueRequested": false, - "nodeType": "ElementaryTypeNameExpression", - "src": "2501:7:7", - "typeDescriptions": { - "typeIdentifier": "t_type$_t_address_$", - "typeString": "type(address)" - }, - "typeName": { - "id": 2289, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "2501:7:7", - "typeDescriptions": {} - } - }, - "id": 2292, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "typeConversion", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "2501:13:7", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "id": 2293, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberName": "balance", - "nodeType": "MemberAccess", - "src": "2501:21:7", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "BinaryOperation", - "operator": ">=", - "rightExpression": { - "id": 2294, - "name": "amount", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2285, - "src": "2526:6:7", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "src": "2501:31:7", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - { - "hexValue": "416464726573733a20696e73756666696369656e742062616c616e6365", - "id": 2296, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "string", - "lValueRequested": false, - "nodeType": "Literal", - "src": "2534:31:7", - "typeDescriptions": { - "typeIdentifier": "t_stringliteral_5597a22abd0ef5332f8053862eb236db7590f17e2b93a53f63a103becfb561f9", - "typeString": "literal_string \"Address: insufficient balance\"" - }, - "value": "Address: insufficient balance" - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - { - "typeIdentifier": "t_stringliteral_5597a22abd0ef5332f8053862eb236db7590f17e2b93a53f63a103becfb561f9", - "typeString": "literal_string \"Address: insufficient balance\"" - } - ], - "id": 2288, - "name": "require", - "nodeType": "Identifier", - "overloadedDeclarations": [ - -18, - -18 - ], - "referencedDeclaration": -18, - "src": "2493:7:7", - "typeDescriptions": { - "typeIdentifier": "t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$", - "typeString": "function (bool,string memory) pure" - } - }, - "id": 2297, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "2493:73:7", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 2298, - "nodeType": "ExpressionStatement", - "src": "2493:73:7" - }, - { - "assignments": [ - 2300, - null - ], - "declarations": [ - { - "constant": false, - "id": 2300, - "mutability": "mutable", - "name": "success", - "nameLocation": "2583:7:7", - "nodeType": "VariableDeclaration", - "scope": 2313, - "src": "2578:12:7", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - "typeName": { - "id": 2299, - "name": "bool", - "nodeType": "ElementaryTypeName", - "src": "2578:4:7", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "visibility": "internal" - }, - null - ], - "id": 2307, - "initialValue": { - "arguments": [ - { - "hexValue": "", - "id": 2305, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "string", - "lValueRequested": false, - "nodeType": "Literal", - "src": "2626:2:7", - "typeDescriptions": { - "typeIdentifier": "t_stringliteral_c5d2460186f7233c927e7db2dcc703c0e500b653ca82273b7bfad8045d85a470", - "typeString": "literal_string \"\"" - }, - "value": "" - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_stringliteral_c5d2460186f7233c927e7db2dcc703c0e500b653ca82273b7bfad8045d85a470", - "typeString": "literal_string \"\"" - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_stringliteral_c5d2460186f7233c927e7db2dcc703c0e500b653ca82273b7bfad8045d85a470", - "typeString": "literal_string \"\"" - } - ], - "expression": { - "id": 2301, - "name": "recipient", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2283, - "src": "2596:9:7", - "typeDescriptions": { - "typeIdentifier": "t_address_payable", - "typeString": "address payable" - } - }, - "id": 2302, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberName": "call", - "nodeType": "MemberAccess", - "src": "2596:14:7", - "typeDescriptions": { - "typeIdentifier": "t_function_barecall_payable$_t_bytes_memory_ptr_$returns$_t_bool_$_t_bytes_memory_ptr_$", - "typeString": "function (bytes memory) payable returns (bool,bytes memory)" - } - }, - "id": 2304, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "names": [ - "value" - ], - "nodeType": "FunctionCallOptions", - "options": [ - { - "id": 2303, - "name": "amount", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2285, - "src": "2618:6:7", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - } - ], - "src": "2596:29:7", - "typeDescriptions": { - "typeIdentifier": "t_function_barecall_payable$_t_bytes_memory_ptr_$returns$_t_bool_$_t_bytes_memory_ptr_$value", - "typeString": "function (bytes memory) payable returns (bool,bytes memory)" - } - }, - "id": 2306, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "2596:33:7", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_tuple$_t_bool_$_t_bytes_memory_ptr_$", - "typeString": "tuple(bool,bytes memory)" - } - }, - "nodeType": "VariableDeclarationStatement", - "src": "2577:52:7" - }, - { - "expression": { - "arguments": [ - { - "id": 2309, - "name": "success", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2300, - "src": "2647:7:7", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - { - "hexValue": "416464726573733a20756e61626c6520746f2073656e642076616c75652c20726563697069656e74206d61792068617665207265766572746564", - "id": 2310, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "string", - "lValueRequested": false, - "nodeType": "Literal", - "src": "2656:60:7", - "typeDescriptions": { - "typeIdentifier": "t_stringliteral_51ddaa38748c0a1144620fb5bfe8edab31ea437571ad591a7734bbfd0429aeae", - "typeString": "literal_string \"Address: unable to send value, recipient may have reverted\"" - }, - "value": "Address: unable to send value, recipient may have reverted" - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - { - "typeIdentifier": "t_stringliteral_51ddaa38748c0a1144620fb5bfe8edab31ea437571ad591a7734bbfd0429aeae", - "typeString": "literal_string \"Address: unable to send value, recipient may have reverted\"" - } - ], - "id": 2308, - "name": "require", - "nodeType": "Identifier", - "overloadedDeclarations": [ - -18, - -18 - ], - "referencedDeclaration": -18, - "src": "2639:7:7", - "typeDescriptions": { - "typeIdentifier": "t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$", - "typeString": "function (bool,string memory) pure" - } - }, - "id": 2311, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "2639:78:7", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 2312, - "nodeType": "ExpressionStatement", - "src": "2639:78:7" - } - ] - }, - "documentation": { - "id": 2281, - "nodeType": "StructuredDocumentation", - "src": "1501:906:7", - "text": " @dev Replacement for Solidity's `transfer`: sends `amount` wei to\n `recipient`, forwarding all available gas and reverting on errors.\n https://eips.ethereum.org/EIPS/eip-1884[EIP1884] increases the gas cost\n of certain opcodes, possibly making contracts go over the 2300 gas limit\n imposed by `transfer`, making them unable to receive funds via\n `transfer`. {sendValue} removes this limitation.\n https://diligence.consensys.net/posts/2019/09/stop-using-soliditys-transfer-now/[Learn more].\n IMPORTANT: because control is transferred to `recipient`, care must be\n taken to not create reentrancy vulnerabilities. Consider using\n {ReentrancyGuard} or the\n https://solidity.readthedocs.io/en/v0.5.11/security-considerations.html#use-the-checks-effects-interactions-pattern[checks-effects-interactions pattern]." - }, - "implemented": true, - "kind": "function", - "modifiers": [], - "name": "sendValue", - "nameLocation": "2421:9:7", - "parameters": { - "id": 2286, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 2283, - "mutability": "mutable", - "name": "recipient", - "nameLocation": "2447:9:7", - "nodeType": "VariableDeclaration", - "scope": 2314, - "src": "2431:25:7", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_address_payable", - "typeString": "address payable" - }, - "typeName": { - "id": 2282, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "2431:15:7", - "stateMutability": "payable", - "typeDescriptions": { - "typeIdentifier": "t_address_payable", - "typeString": "address payable" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 2285, - "mutability": "mutable", - "name": "amount", - "nameLocation": "2466:6:7", - "nodeType": "VariableDeclaration", - "scope": 2314, - "src": "2458:14:7", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 2284, - "name": "uint256", - "nodeType": "ElementaryTypeName", - "src": "2458:7:7", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "visibility": "internal" - } - ], - "src": "2430:43:7" - }, - "returnParameters": { - "id": 2287, - "nodeType": "ParameterList", - "parameters": [], - "src": "2483:0:7" - }, - "scope": 2557, - "stateMutability": "nonpayable", - "virtual": false, - "visibility": "internal" - }, - { - "id": 2331, - "nodeType": "FunctionDefinition", - "src": "3466:173:7", - "body": { - "id": 2330, - "nodeType": "Block", - "src": "3555:84:7", - "statements": [ - { - "expression": { - "arguments": [ - { - "id": 2325, - "name": "target", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2317, - "src": "3585:6:7", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - { - "id": 2326, - "name": "data", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2319, - "src": "3593:4:7", - "typeDescriptions": { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes memory" - } - }, - { - "hexValue": "416464726573733a206c6f772d6c6576656c2063616c6c206661696c6564", - "id": 2327, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "string", - "lValueRequested": false, - "nodeType": "Literal", - "src": "3599:32:7", - "typeDescriptions": { - "typeIdentifier": "t_stringliteral_24d7ab5d382116e64324f19950ca9340b8af1ddeb09a8d026e0a3c6a01dcc9df", - "typeString": "literal_string \"Address: low-level call failed\"" - }, - "value": "Address: low-level call failed" - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_address", - "typeString": "address" - }, - { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes memory" - }, - { - "typeIdentifier": "t_stringliteral_24d7ab5d382116e64324f19950ca9340b8af1ddeb09a8d026e0a3c6a01dcc9df", - "typeString": "literal_string \"Address: low-level call failed\"" - } - ], - "id": 2324, - "name": "functionCall", - "nodeType": "Identifier", - "overloadedDeclarations": [ - 2331, - 2351 - ], - "referencedDeclaration": 2351, - "src": "3572:12:7", - "typeDescriptions": { - "typeIdentifier": "t_function_internal_nonpayable$_t_address_$_t_bytes_memory_ptr_$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", - "typeString": "function (address,bytes memory,string memory) returns (bytes memory)" - } - }, - "id": 2328, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "3572:60:7", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes memory" - } - }, - "functionReturnParameters": 2323, - "id": 2329, - "nodeType": "Return", - "src": "3565:67:7" - } - ] - }, - "documentation": { - "id": 2315, - "nodeType": "StructuredDocumentation", - "src": "2730:731:7", - "text": " @dev Performs a Solidity function call using a low level `call`. A\n plain `call` is an unsafe replacement for a function call: use this\n function instead.\n If `target` reverts with a revert reason, it is bubbled up by this\n function (like regular Solidity function calls).\n Returns the raw returned data. To convert to the expected return value,\n use https://solidity.readthedocs.io/en/latest/units-and-global-variables.html?highlight=abi.decode#abi-encoding-and-decoding-functions[`abi.decode`].\n Requirements:\n - `target` must be a contract.\n - calling `target` with `data` must not revert.\n _Available since v3.1._" - }, - "implemented": true, - "kind": "function", - "modifiers": [], - "name": "functionCall", - "nameLocation": "3475:12:7", - "parameters": { - "id": 2320, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 2317, - "mutability": "mutable", - "name": "target", - "nameLocation": "3496:6:7", - "nodeType": "VariableDeclaration", - "scope": 2331, - "src": "3488:14:7", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "typeName": { - "id": 2316, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "3488:7:7", - "stateMutability": "nonpayable", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 2319, - "mutability": "mutable", - "name": "data", - "nameLocation": "3517:4:7", - "nodeType": "VariableDeclaration", - "scope": 2331, - "src": "3504:17:7", - "stateVariable": false, - "storageLocation": "memory", - "typeDescriptions": { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes" - }, - "typeName": { - "id": 2318, - "name": "bytes", - "nodeType": "ElementaryTypeName", - "src": "3504:5:7", - "typeDescriptions": { - "typeIdentifier": "t_bytes_storage_ptr", - "typeString": "bytes" - } - }, - "visibility": "internal" - } - ], - "src": "3487:35:7" - }, - "returnParameters": { - "id": 2323, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 2322, - "mutability": "mutable", - "name": "", - "nameLocation": "-1:-1:-1", - "nodeType": "VariableDeclaration", - "scope": 2331, - "src": "3541:12:7", - "stateVariable": false, - "storageLocation": "memory", - "typeDescriptions": { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes" - }, - "typeName": { - "id": 2321, - "name": "bytes", - "nodeType": "ElementaryTypeName", - "src": "3541:5:7", - "typeDescriptions": { - "typeIdentifier": "t_bytes_storage_ptr", - "typeString": "bytes" - } - }, - "visibility": "internal" - } - ], - "src": "3540:14:7" - }, - "scope": 2557, - "stateMutability": "nonpayable", - "virtual": false, - "visibility": "internal" - }, - { - "id": 2351, - "nodeType": "FunctionDefinition", - "src": "3861:223:7", - "body": { - "id": 2350, - "nodeType": "Block", - "src": "4008:76:7", - "statements": [ - { - "expression": { - "arguments": [ - { - "id": 2344, - "name": "target", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2334, - "src": "4047:6:7", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - { - "id": 2345, - "name": "data", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2336, - "src": "4055:4:7", - "typeDescriptions": { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes memory" - } - }, - { - "hexValue": "30", - "id": 2346, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "number", - "lValueRequested": false, - "nodeType": "Literal", - "src": "4061:1:7", - "typeDescriptions": { - "typeIdentifier": "t_rational_0_by_1", - "typeString": "int_const 0" - }, - "value": "0" - }, - { - "id": 2347, - "name": "errorMessage", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2338, - "src": "4064:12:7", - "typeDescriptions": { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string memory" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_address", - "typeString": "address" - }, - { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes memory" - }, - { - "typeIdentifier": "t_rational_0_by_1", - "typeString": "int_const 0" - }, - { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string memory" - } - ], - "id": 2343, - "name": "functionCallWithValue", - "nodeType": "Identifier", - "overloadedDeclarations": [ - 2371, - 2421 - ], - "referencedDeclaration": 2421, - "src": "4025:21:7", - "typeDescriptions": { - "typeIdentifier": "t_function_internal_nonpayable$_t_address_$_t_bytes_memory_ptr_$_t_uint256_$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", - "typeString": "function (address,bytes memory,uint256,string memory) returns (bytes memory)" - } - }, - "id": 2348, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "4025:52:7", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes memory" - } - }, - "functionReturnParameters": 2342, - "id": 2349, - "nodeType": "Return", - "src": "4018:59:7" - } - ] - }, - "documentation": { - "id": 2332, - "nodeType": "StructuredDocumentation", - "src": "3645:211:7", - "text": " @dev Same as {xref-Address-functionCall-address-bytes-}[`functionCall`], but with\n `errorMessage` as a fallback revert reason when `target` reverts.\n _Available since v3.1._" - }, - "implemented": true, - "kind": "function", - "modifiers": [], - "name": "functionCall", - "nameLocation": "3870:12:7", - "parameters": { - "id": 2339, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 2334, - "mutability": "mutable", - "name": "target", - "nameLocation": "3900:6:7", - "nodeType": "VariableDeclaration", - "scope": 2351, - "src": "3892:14:7", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "typeName": { - "id": 2333, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "3892:7:7", - "stateMutability": "nonpayable", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 2336, - "mutability": "mutable", - "name": "data", - "nameLocation": "3929:4:7", - "nodeType": "VariableDeclaration", - "scope": 2351, - "src": "3916:17:7", - "stateVariable": false, - "storageLocation": "memory", - "typeDescriptions": { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes" - }, - "typeName": { - "id": 2335, - "name": "bytes", - "nodeType": "ElementaryTypeName", - "src": "3916:5:7", - "typeDescriptions": { - "typeIdentifier": "t_bytes_storage_ptr", - "typeString": "bytes" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 2338, - "mutability": "mutable", - "name": "errorMessage", - "nameLocation": "3957:12:7", - "nodeType": "VariableDeclaration", - "scope": 2351, - "src": "3943:26:7", - "stateVariable": false, - "storageLocation": "memory", - "typeDescriptions": { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string" - }, - "typeName": { - "id": 2337, - "name": "string", - "nodeType": "ElementaryTypeName", - "src": "3943:6:7", - "typeDescriptions": { - "typeIdentifier": "t_string_storage_ptr", - "typeString": "string" - } - }, - "visibility": "internal" - } - ], - "src": "3882:93:7" - }, - "returnParameters": { - "id": 2342, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 2341, - "mutability": "mutable", - "name": "", - "nameLocation": "-1:-1:-1", - "nodeType": "VariableDeclaration", - "scope": 2351, - "src": "3994:12:7", - "stateVariable": false, - "storageLocation": "memory", - "typeDescriptions": { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes" - }, - "typeName": { - "id": 2340, - "name": "bytes", - "nodeType": "ElementaryTypeName", - "src": "3994:5:7", - "typeDescriptions": { - "typeIdentifier": "t_bytes_storage_ptr", - "typeString": "bytes" - } - }, - "visibility": "internal" - } - ], - "src": "3993:14:7" - }, - "scope": 2557, - "stateMutability": "nonpayable", - "virtual": false, - "visibility": "internal" - }, - { - "id": 2371, - "nodeType": "FunctionDefinition", - "src": "4446:254:7", - "body": { - "id": 2370, - "nodeType": "Block", - "src": "4589:111:7", - "statements": [ - { - "expression": { - "arguments": [ - { - "id": 2364, - "name": "target", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2354, - "src": "4628:6:7", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - { - "id": 2365, - "name": "data", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2356, - "src": "4636:4:7", - "typeDescriptions": { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes memory" - } - }, - { - "id": 2366, - "name": "value", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2358, - "src": "4642:5:7", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - { - "hexValue": "416464726573733a206c6f772d6c6576656c2063616c6c20776974682076616c7565206661696c6564", - "id": 2367, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "string", - "lValueRequested": false, - "nodeType": "Literal", - "src": "4649:43:7", - "typeDescriptions": { - "typeIdentifier": "t_stringliteral_88a4a0b5e975840320a0475d4027005235904fdb5ece94df156f3d717cb2dbfc", - "typeString": "literal_string \"Address: low-level call with value failed\"" - }, - "value": "Address: low-level call with value failed" - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_address", - "typeString": "address" - }, - { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes memory" - }, - { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - { - "typeIdentifier": "t_stringliteral_88a4a0b5e975840320a0475d4027005235904fdb5ece94df156f3d717cb2dbfc", - "typeString": "literal_string \"Address: low-level call with value failed\"" - } - ], - "id": 2363, - "name": "functionCallWithValue", - "nodeType": "Identifier", - "overloadedDeclarations": [ - 2371, - 2421 - ], - "referencedDeclaration": 2421, - "src": "4606:21:7", - "typeDescriptions": { - "typeIdentifier": "t_function_internal_nonpayable$_t_address_$_t_bytes_memory_ptr_$_t_uint256_$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", - "typeString": "function (address,bytes memory,uint256,string memory) returns (bytes memory)" - } - }, - "id": 2368, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "4606:87:7", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes memory" - } - }, - "functionReturnParameters": 2362, - "id": 2369, - "nodeType": "Return", - "src": "4599:94:7" - } - ] - }, - "documentation": { - "id": 2352, - "nodeType": "StructuredDocumentation", - "src": "4090:351:7", - "text": " @dev Same as {xref-Address-functionCall-address-bytes-}[`functionCall`],\n but also transferring `value` wei to `target`.\n Requirements:\n - the calling contract must have an ETH balance of at least `value`.\n - the called Solidity function must be `payable`.\n _Available since v3.1._" - }, - "implemented": true, - "kind": "function", - "modifiers": [], - "name": "functionCallWithValue", - "nameLocation": "4455:21:7", - "parameters": { - "id": 2359, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 2354, - "mutability": "mutable", - "name": "target", - "nameLocation": "4494:6:7", - "nodeType": "VariableDeclaration", - "scope": 2371, - "src": "4486:14:7", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "typeName": { - "id": 2353, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "4486:7:7", - "stateMutability": "nonpayable", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 2356, - "mutability": "mutable", - "name": "data", - "nameLocation": "4523:4:7", - "nodeType": "VariableDeclaration", - "scope": 2371, - "src": "4510:17:7", - "stateVariable": false, - "storageLocation": "memory", - "typeDescriptions": { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes" - }, - "typeName": { - "id": 2355, - "name": "bytes", - "nodeType": "ElementaryTypeName", - "src": "4510:5:7", - "typeDescriptions": { - "typeIdentifier": "t_bytes_storage_ptr", - "typeString": "bytes" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 2358, - "mutability": "mutable", - "name": "value", - "nameLocation": "4545:5:7", - "nodeType": "VariableDeclaration", - "scope": 2371, - "src": "4537:13:7", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 2357, - "name": "uint256", - "nodeType": "ElementaryTypeName", - "src": "4537:7:7", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "visibility": "internal" - } - ], - "src": "4476:80:7" - }, - "returnParameters": { - "id": 2362, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 2361, - "mutability": "mutable", - "name": "", - "nameLocation": "-1:-1:-1", - "nodeType": "VariableDeclaration", - "scope": 2371, - "src": "4575:12:7", - "stateVariable": false, - "storageLocation": "memory", - "typeDescriptions": { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes" - }, - "typeName": { - "id": 2360, - "name": "bytes", - "nodeType": "ElementaryTypeName", - "src": "4575:5:7", - "typeDescriptions": { - "typeIdentifier": "t_bytes_storage_ptr", - "typeString": "bytes" - } - }, - "visibility": "internal" - } - ], - "src": "4574:14:7" - }, - "scope": 2557, - "stateMutability": "nonpayable", - "virtual": false, - "visibility": "internal" - }, - { - "id": 2421, - "nodeType": "FunctionDefinition", - "src": "4948:499:7", - "body": { - "id": 2420, - "nodeType": "Block", - "src": "5127:320:7", - "statements": [ - { - "expression": { - "arguments": [ - { - "commonType": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "id": 2392, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "expression": { - "arguments": [ - { - "id": 2388, - "name": "this", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": -28, - "src": "5153:4:7", - "typeDescriptions": { - "typeIdentifier": "t_contract$_Address_$2557", - "typeString": "library Address" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_contract$_Address_$2557", - "typeString": "library Address" - } - ], - "id": 2387, - "isConstant": false, - "isLValue": false, - "isPure": true, - "lValueRequested": false, - "nodeType": "ElementaryTypeNameExpression", - "src": "5145:7:7", - "typeDescriptions": { - "typeIdentifier": "t_type$_t_address_$", - "typeString": "type(address)" - }, - "typeName": { - "id": 2386, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "5145:7:7", - "typeDescriptions": {} - } - }, - "id": 2389, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "typeConversion", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "5145:13:7", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "id": 2390, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberName": "balance", - "nodeType": "MemberAccess", - "src": "5145:21:7", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "BinaryOperation", - "operator": ">=", - "rightExpression": { - "id": 2391, - "name": "value", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2378, - "src": "5170:5:7", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "src": "5145:30:7", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - { - "hexValue": "416464726573733a20696e73756666696369656e742062616c616e636520666f722063616c6c", - "id": 2393, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "string", - "lValueRequested": false, - "nodeType": "Literal", - "src": "5177:40:7", - "typeDescriptions": { - "typeIdentifier": "t_stringliteral_565f1a77334fc4792800921178c71e4521acffab18ff9e7885b49377ee80ab4c", - "typeString": "literal_string \"Address: insufficient balance for call\"" - }, - "value": "Address: insufficient balance for call" - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - { - "typeIdentifier": "t_stringliteral_565f1a77334fc4792800921178c71e4521acffab18ff9e7885b49377ee80ab4c", - "typeString": "literal_string \"Address: insufficient balance for call\"" - } - ], - "id": 2385, - "name": "require", - "nodeType": "Identifier", - "overloadedDeclarations": [ - -18, - -18 - ], - "referencedDeclaration": -18, - "src": "5137:7:7", - "typeDescriptions": { - "typeIdentifier": "t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$", - "typeString": "function (bool,string memory) pure" - } - }, - "id": 2394, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "5137:81:7", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 2395, - "nodeType": "ExpressionStatement", - "src": "5137:81:7" - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "id": 2398, - "name": "target", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2374, - "src": "5247:6:7", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_address", - "typeString": "address" - } - ], - "id": 2397, - "name": "isContract", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2280, - "src": "5236:10:7", - "typeDescriptions": { - "typeIdentifier": "t_function_internal_view$_t_address_$returns$_t_bool_$", - "typeString": "function (address) view returns (bool)" - } - }, - "id": 2399, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "5236:18:7", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - { - "hexValue": "416464726573733a2063616c6c20746f206e6f6e2d636f6e7472616374", - "id": 2400, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "string", - "lValueRequested": false, - "nodeType": "Literal", - "src": "5256:31:7", - "typeDescriptions": { - "typeIdentifier": "t_stringliteral_cc2e4e38850b7c0a3e942cfed89b71c77302df25bcb2ec297a0c4ff9ff6b90ad", - "typeString": "literal_string \"Address: call to non-contract\"" - }, - "value": "Address: call to non-contract" - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - { - "typeIdentifier": "t_stringliteral_cc2e4e38850b7c0a3e942cfed89b71c77302df25bcb2ec297a0c4ff9ff6b90ad", - "typeString": "literal_string \"Address: call to non-contract\"" - } - ], - "id": 2396, - "name": "require", - "nodeType": "Identifier", - "overloadedDeclarations": [ - -18, - -18 - ], - "referencedDeclaration": -18, - "src": "5228:7:7", - "typeDescriptions": { - "typeIdentifier": "t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$", - "typeString": "function (bool,string memory) pure" - } - }, - "id": 2401, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "5228:60:7", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 2402, - "nodeType": "ExpressionStatement", - "src": "5228:60:7" - }, - { - "assignments": [ - 2404, - 2406 - ], - "declarations": [ - { - "constant": false, - "id": 2404, - "mutability": "mutable", - "name": "success", - "nameLocation": "5305:7:7", - "nodeType": "VariableDeclaration", - "scope": 2420, - "src": "5300:12:7", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - "typeName": { - "id": 2403, - "name": "bool", - "nodeType": "ElementaryTypeName", - "src": "5300:4:7", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 2406, - "mutability": "mutable", - "name": "returndata", - "nameLocation": "5327:10:7", - "nodeType": "VariableDeclaration", - "scope": 2420, - "src": "5314:23:7", - "stateVariable": false, - "storageLocation": "memory", - "typeDescriptions": { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes" - }, - "typeName": { - "id": 2405, - "name": "bytes", - "nodeType": "ElementaryTypeName", - "src": "5314:5:7", - "typeDescriptions": { - "typeIdentifier": "t_bytes_storage_ptr", - "typeString": "bytes" - } - }, - "visibility": "internal" - } - ], - "id": 2413, - "initialValue": { - "arguments": [ - { - "id": 2411, - "name": "data", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2376, - "src": "5367:4:7", - "typeDescriptions": { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes memory" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes memory" - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes memory" - } - ], - "expression": { - "id": 2407, - "name": "target", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2374, - "src": "5341:6:7", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "id": 2408, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberName": "call", - "nodeType": "MemberAccess", - "src": "5341:11:7", - "typeDescriptions": { - "typeIdentifier": "t_function_barecall_payable$_t_bytes_memory_ptr_$returns$_t_bool_$_t_bytes_memory_ptr_$", - "typeString": "function (bytes memory) payable returns (bool,bytes memory)" - } - }, - "id": 2410, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "names": [ - "value" - ], - "nodeType": "FunctionCallOptions", - "options": [ - { - "id": 2409, - "name": "value", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2378, - "src": "5360:5:7", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - } - ], - "src": "5341:25:7", - "typeDescriptions": { - "typeIdentifier": "t_function_barecall_payable$_t_bytes_memory_ptr_$returns$_t_bool_$_t_bytes_memory_ptr_$value", - "typeString": "function (bytes memory) payable returns (bool,bytes memory)" - } - }, - "id": 2412, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "5341:31:7", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_tuple$_t_bool_$_t_bytes_memory_ptr_$", - "typeString": "tuple(bool,bytes memory)" - } - }, - "nodeType": "VariableDeclarationStatement", - "src": "5299:73:7" - }, - { - "expression": { - "arguments": [ - { - "id": 2415, - "name": "success", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2404, - "src": "5406:7:7", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - { - "id": 2416, - "name": "returndata", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2406, - "src": "5415:10:7", - "typeDescriptions": { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes memory" - } - }, - { - "id": 2417, - "name": "errorMessage", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2380, - "src": "5427:12:7", - "typeDescriptions": { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string memory" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes memory" - }, - { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string memory" - } - ], - "id": 2414, - "name": "verifyCallResult", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2556, - "src": "5389:16:7", - "typeDescriptions": { - "typeIdentifier": "t_function_internal_pure$_t_bool_$_t_bytes_memory_ptr_$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", - "typeString": "function (bool,bytes memory,string memory) pure returns (bytes memory)" - } - }, - "id": 2418, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "5389:51:7", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes memory" - } - }, - "functionReturnParameters": 2384, - "id": 2419, - "nodeType": "Return", - "src": "5382:58:7" - } - ] - }, - "documentation": { - "id": 2372, - "nodeType": "StructuredDocumentation", - "src": "4706:237:7", - "text": " @dev Same as {xref-Address-functionCallWithValue-address-bytes-uint256-}[`functionCallWithValue`], but\n with `errorMessage` as a fallback revert reason when `target` reverts.\n _Available since v3.1._" - }, - "implemented": true, - "kind": "function", - "modifiers": [], - "name": "functionCallWithValue", - "nameLocation": "4957:21:7", - "parameters": { - "id": 2381, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 2374, - "mutability": "mutable", - "name": "target", - "nameLocation": "4996:6:7", - "nodeType": "VariableDeclaration", - "scope": 2421, - "src": "4988:14:7", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "typeName": { - "id": 2373, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "4988:7:7", - "stateMutability": "nonpayable", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 2376, - "mutability": "mutable", - "name": "data", - "nameLocation": "5025:4:7", - "nodeType": "VariableDeclaration", - "scope": 2421, - "src": "5012:17:7", - "stateVariable": false, - "storageLocation": "memory", - "typeDescriptions": { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes" - }, - "typeName": { - "id": 2375, - "name": "bytes", - "nodeType": "ElementaryTypeName", - "src": "5012:5:7", - "typeDescriptions": { - "typeIdentifier": "t_bytes_storage_ptr", - "typeString": "bytes" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 2378, - "mutability": "mutable", - "name": "value", - "nameLocation": "5047:5:7", - "nodeType": "VariableDeclaration", - "scope": 2421, - "src": "5039:13:7", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 2377, - "name": "uint256", - "nodeType": "ElementaryTypeName", - "src": "5039:7:7", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 2380, - "mutability": "mutable", - "name": "errorMessage", - "nameLocation": "5076:12:7", - "nodeType": "VariableDeclaration", - "scope": 2421, - "src": "5062:26:7", - "stateVariable": false, - "storageLocation": "memory", - "typeDescriptions": { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string" - }, - "typeName": { - "id": 2379, - "name": "string", - "nodeType": "ElementaryTypeName", - "src": "5062:6:7", - "typeDescriptions": { - "typeIdentifier": "t_string_storage_ptr", - "typeString": "string" - } - }, - "visibility": "internal" - } - ], - "src": "4978:116:7" - }, - "returnParameters": { - "id": 2384, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 2383, - "mutability": "mutable", - "name": "", - "nameLocation": "-1:-1:-1", - "nodeType": "VariableDeclaration", - "scope": 2421, - "src": "5113:12:7", - "stateVariable": false, - "storageLocation": "memory", - "typeDescriptions": { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes" - }, - "typeName": { - "id": 2382, - "name": "bytes", - "nodeType": "ElementaryTypeName", - "src": "5113:5:7", - "typeDescriptions": { - "typeIdentifier": "t_bytes_storage_ptr", - "typeString": "bytes" - } - }, - "visibility": "internal" - } - ], - "src": "5112:14:7" - }, - "scope": 2557, - "stateMutability": "nonpayable", - "virtual": false, - "visibility": "internal" - }, - { - "id": 2438, - "nodeType": "FunctionDefinition", - "src": "5624:197:7", - "body": { - "id": 2437, - "nodeType": "Block", - "src": "5724:97:7", - "statements": [ - { - "expression": { - "arguments": [ - { - "id": 2432, - "name": "target", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2424, - "src": "5760:6:7", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - { - "id": 2433, - "name": "data", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2426, - "src": "5768:4:7", - "typeDescriptions": { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes memory" - } - }, - { - "hexValue": "416464726573733a206c6f772d6c6576656c207374617469632063616c6c206661696c6564", - "id": 2434, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "string", - "lValueRequested": false, - "nodeType": "Literal", - "src": "5774:39:7", - "typeDescriptions": { - "typeIdentifier": "t_stringliteral_90ec82aa826a536a4cbfae44ecfa384680faa9a4b77344bce96aa761ad904df0", - "typeString": "literal_string \"Address: low-level static call failed\"" - }, - "value": "Address: low-level static call failed" - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_address", - "typeString": "address" - }, - { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes memory" - }, - { - "typeIdentifier": "t_stringliteral_90ec82aa826a536a4cbfae44ecfa384680faa9a4b77344bce96aa761ad904df0", - "typeString": "literal_string \"Address: low-level static call failed\"" - } - ], - "id": 2431, - "name": "functionStaticCall", - "nodeType": "Identifier", - "overloadedDeclarations": [ - 2438, - 2473 - ], - "referencedDeclaration": 2473, - "src": "5741:18:7", - "typeDescriptions": { - "typeIdentifier": "t_function_internal_view$_t_address_$_t_bytes_memory_ptr_$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", - "typeString": "function (address,bytes memory,string memory) view returns (bytes memory)" - } - }, - "id": 2435, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "5741:73:7", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes memory" - } - }, - "functionReturnParameters": 2430, - "id": 2436, - "nodeType": "Return", - "src": "5734:80:7" - } - ] - }, - "documentation": { - "id": 2422, - "nodeType": "StructuredDocumentation", - "src": "5453:166:7", - "text": " @dev Same as {xref-Address-functionCall-address-bytes-}[`functionCall`],\n but performing a static call.\n _Available since v3.3._" - }, - "implemented": true, - "kind": "function", - "modifiers": [], - "name": "functionStaticCall", - "nameLocation": "5633:18:7", - "parameters": { - "id": 2427, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 2424, - "mutability": "mutable", - "name": "target", - "nameLocation": "5660:6:7", - "nodeType": "VariableDeclaration", - "scope": 2438, - "src": "5652:14:7", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "typeName": { - "id": 2423, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "5652:7:7", - "stateMutability": "nonpayable", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 2426, - "mutability": "mutable", - "name": "data", - "nameLocation": "5681:4:7", - "nodeType": "VariableDeclaration", - "scope": 2438, - "src": "5668:17:7", - "stateVariable": false, - "storageLocation": "memory", - "typeDescriptions": { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes" - }, - "typeName": { - "id": 2425, - "name": "bytes", - "nodeType": "ElementaryTypeName", - "src": "5668:5:7", - "typeDescriptions": { - "typeIdentifier": "t_bytes_storage_ptr", - "typeString": "bytes" - } - }, - "visibility": "internal" - } - ], - "src": "5651:35:7" - }, - "returnParameters": { - "id": 2430, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 2429, - "mutability": "mutable", - "name": "", - "nameLocation": "-1:-1:-1", - "nodeType": "VariableDeclaration", - "scope": 2438, - "src": "5710:12:7", - "stateVariable": false, - "storageLocation": "memory", - "typeDescriptions": { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes" - }, - "typeName": { - "id": 2428, - "name": "bytes", - "nodeType": "ElementaryTypeName", - "src": "5710:5:7", - "typeDescriptions": { - "typeIdentifier": "t_bytes_storage_ptr", - "typeString": "bytes" - } - }, - "visibility": "internal" - } - ], - "src": "5709:14:7" - }, - "scope": 2557, - "stateMutability": "view", - "virtual": false, - "visibility": "internal" - }, - { - "id": 2473, - "nodeType": "FunctionDefinition", - "src": "6005:386:7", - "body": { - "id": 2472, - "nodeType": "Block", - "src": "6163:228:7", - "statements": [ - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "id": 2452, - "name": "target", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2441, - "src": "6192:6:7", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_address", - "typeString": "address" - } - ], - "id": 2451, - "name": "isContract", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2280, - "src": "6181:10:7", - "typeDescriptions": { - "typeIdentifier": "t_function_internal_view$_t_address_$returns$_t_bool_$", - "typeString": "function (address) view returns (bool)" - } - }, - "id": 2453, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "6181:18:7", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - { - "hexValue": "416464726573733a207374617469632063616c6c20746f206e6f6e2d636f6e7472616374", - "id": 2454, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "string", - "lValueRequested": false, - "nodeType": "Literal", - "src": "6201:38:7", - "typeDescriptions": { - "typeIdentifier": "t_stringliteral_c79cc78e4f16ce3933a42b84c73868f93bb4a59c031a0acf576679de98c608a9", - "typeString": "literal_string \"Address: static call to non-contract\"" - }, - "value": "Address: static call to non-contract" - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - { - "typeIdentifier": "t_stringliteral_c79cc78e4f16ce3933a42b84c73868f93bb4a59c031a0acf576679de98c608a9", - "typeString": "literal_string \"Address: static call to non-contract\"" - } - ], - "id": 2450, - "name": "require", - "nodeType": "Identifier", - "overloadedDeclarations": [ - -18, - -18 - ], - "referencedDeclaration": -18, - "src": "6173:7:7", - "typeDescriptions": { - "typeIdentifier": "t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$", - "typeString": "function (bool,string memory) pure" - } - }, - "id": 2455, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "6173:67:7", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 2456, - "nodeType": "ExpressionStatement", - "src": "6173:67:7" - }, - { - "assignments": [ - 2458, - 2460 - ], - "declarations": [ - { - "constant": false, - "id": 2458, - "mutability": "mutable", - "name": "success", - "nameLocation": "6257:7:7", - "nodeType": "VariableDeclaration", - "scope": 2472, - "src": "6252:12:7", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - "typeName": { - "id": 2457, - "name": "bool", - "nodeType": "ElementaryTypeName", - "src": "6252:4:7", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 2460, - "mutability": "mutable", - "name": "returndata", - "nameLocation": "6279:10:7", - "nodeType": "VariableDeclaration", - "scope": 2472, - "src": "6266:23:7", - "stateVariable": false, - "storageLocation": "memory", - "typeDescriptions": { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes" - }, - "typeName": { - "id": 2459, - "name": "bytes", - "nodeType": "ElementaryTypeName", - "src": "6266:5:7", - "typeDescriptions": { - "typeIdentifier": "t_bytes_storage_ptr", - "typeString": "bytes" - } - }, - "visibility": "internal" - } - ], - "id": 2465, - "initialValue": { - "arguments": [ - { - "id": 2463, - "name": "data", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2443, - "src": "6311:4:7", - "typeDescriptions": { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes memory" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes memory" - } - ], - "expression": { - "id": 2461, - "name": "target", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2441, - "src": "6293:6:7", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "id": 2462, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberName": "staticcall", - "nodeType": "MemberAccess", - "src": "6293:17:7", - "typeDescriptions": { - "typeIdentifier": "t_function_barestaticcall_view$_t_bytes_memory_ptr_$returns$_t_bool_$_t_bytes_memory_ptr_$", - "typeString": "function (bytes memory) view returns (bool,bytes memory)" - } - }, - "id": 2464, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "6293:23:7", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_tuple$_t_bool_$_t_bytes_memory_ptr_$", - "typeString": "tuple(bool,bytes memory)" - } - }, - "nodeType": "VariableDeclarationStatement", - "src": "6251:65:7" - }, - { - "expression": { - "arguments": [ - { - "id": 2467, - "name": "success", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2458, - "src": "6350:7:7", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - { - "id": 2468, - "name": "returndata", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2460, - "src": "6359:10:7", - "typeDescriptions": { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes memory" - } - }, - { - "id": 2469, - "name": "errorMessage", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2445, - "src": "6371:12:7", - "typeDescriptions": { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string memory" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes memory" - }, - { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string memory" - } - ], - "id": 2466, - "name": "verifyCallResult", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2556, - "src": "6333:16:7", - "typeDescriptions": { - "typeIdentifier": "t_function_internal_pure$_t_bool_$_t_bytes_memory_ptr_$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", - "typeString": "function (bool,bytes memory,string memory) pure returns (bytes memory)" - } - }, - "id": 2470, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "6333:51:7", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes memory" - } - }, - "functionReturnParameters": 2449, - "id": 2471, - "nodeType": "Return", - "src": "6326:58:7" - } - ] - }, - "documentation": { - "id": 2439, - "nodeType": "StructuredDocumentation", - "src": "5827:173:7", - "text": " @dev Same as {xref-Address-functionCall-address-bytes-string-}[`functionCall`],\n but performing a static call.\n _Available since v3.3._" - }, - "implemented": true, - "kind": "function", - "modifiers": [], - "name": "functionStaticCall", - "nameLocation": "6014:18:7", - "parameters": { - "id": 2446, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 2441, - "mutability": "mutable", - "name": "target", - "nameLocation": "6050:6:7", - "nodeType": "VariableDeclaration", - "scope": 2473, - "src": "6042:14:7", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "typeName": { - "id": 2440, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "6042:7:7", - "stateMutability": "nonpayable", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 2443, - "mutability": "mutable", - "name": "data", - "nameLocation": "6079:4:7", - "nodeType": "VariableDeclaration", - "scope": 2473, - "src": "6066:17:7", - "stateVariable": false, - "storageLocation": "memory", - "typeDescriptions": { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes" - }, - "typeName": { - "id": 2442, - "name": "bytes", - "nodeType": "ElementaryTypeName", - "src": "6066:5:7", - "typeDescriptions": { - "typeIdentifier": "t_bytes_storage_ptr", - "typeString": "bytes" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 2445, - "mutability": "mutable", - "name": "errorMessage", - "nameLocation": "6107:12:7", - "nodeType": "VariableDeclaration", - "scope": 2473, - "src": "6093:26:7", - "stateVariable": false, - "storageLocation": "memory", - "typeDescriptions": { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string" - }, - "typeName": { - "id": 2444, - "name": "string", - "nodeType": "ElementaryTypeName", - "src": "6093:6:7", - "typeDescriptions": { - "typeIdentifier": "t_string_storage_ptr", - "typeString": "string" - } - }, - "visibility": "internal" - } - ], - "src": "6032:93:7" - }, - "returnParameters": { - "id": 2449, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 2448, - "mutability": "mutable", - "name": "", - "nameLocation": "-1:-1:-1", - "nodeType": "VariableDeclaration", - "scope": 2473, - "src": "6149:12:7", - "stateVariable": false, - "storageLocation": "memory", - "typeDescriptions": { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes" - }, - "typeName": { - "id": 2447, - "name": "bytes", - "nodeType": "ElementaryTypeName", - "src": "6149:5:7", - "typeDescriptions": { - "typeIdentifier": "t_bytes_storage_ptr", - "typeString": "bytes" - } - }, - "visibility": "internal" - } - ], - "src": "6148:14:7" - }, - "scope": 2557, - "stateMutability": "view", - "virtual": false, - "visibility": "internal" - }, - { - "id": 2490, - "nodeType": "FunctionDefinition", - "src": "6570:198:7", - "body": { - "id": 2489, - "nodeType": "Block", - "src": "6667:101:7", - "statements": [ - { - "expression": { - "arguments": [ - { - "id": 2484, - "name": "target", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2476, - "src": "6705:6:7", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - { - "id": 2485, - "name": "data", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2478, - "src": "6713:4:7", - "typeDescriptions": { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes memory" - } - }, - { - "hexValue": "416464726573733a206c6f772d6c6576656c2064656c65676174652063616c6c206661696c6564", - "id": 2486, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "string", - "lValueRequested": false, - "nodeType": "Literal", - "src": "6719:41:7", - "typeDescriptions": { - "typeIdentifier": "t_stringliteral_9fdcd12e4b726339b32a442b0a448365d5d85c96b2d2cff917b4f66c63110398", - "typeString": "literal_string \"Address: low-level delegate call failed\"" - }, - "value": "Address: low-level delegate call failed" - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_address", - "typeString": "address" - }, - { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes memory" - }, - { - "typeIdentifier": "t_stringliteral_9fdcd12e4b726339b32a442b0a448365d5d85c96b2d2cff917b4f66c63110398", - "typeString": "literal_string \"Address: low-level delegate call failed\"" - } - ], - "id": 2483, - "name": "functionDelegateCall", - "nodeType": "Identifier", - "overloadedDeclarations": [ - 2490, - 2525 - ], - "referencedDeclaration": 2525, - "src": "6684:20:7", - "typeDescriptions": { - "typeIdentifier": "t_function_internal_nonpayable$_t_address_$_t_bytes_memory_ptr_$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", - "typeString": "function (address,bytes memory,string memory) returns (bytes memory)" - } - }, - "id": 2487, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "6684:77:7", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes memory" - } - }, - "functionReturnParameters": 2482, - "id": 2488, - "nodeType": "Return", - "src": "6677:84:7" - } - ] - }, - "documentation": { - "id": 2474, - "nodeType": "StructuredDocumentation", - "src": "6397:168:7", - "text": " @dev Same as {xref-Address-functionCall-address-bytes-}[`functionCall`],\n but performing a delegate call.\n _Available since v3.4._" - }, - "implemented": true, - "kind": "function", - "modifiers": [], - "name": "functionDelegateCall", - "nameLocation": "6579:20:7", - "parameters": { - "id": 2479, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 2476, - "mutability": "mutable", - "name": "target", - "nameLocation": "6608:6:7", - "nodeType": "VariableDeclaration", - "scope": 2490, - "src": "6600:14:7", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "typeName": { - "id": 2475, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "6600:7:7", - "stateMutability": "nonpayable", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 2478, - "mutability": "mutable", - "name": "data", - "nameLocation": "6629:4:7", - "nodeType": "VariableDeclaration", - "scope": 2490, - "src": "6616:17:7", - "stateVariable": false, - "storageLocation": "memory", - "typeDescriptions": { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes" - }, - "typeName": { - "id": 2477, - "name": "bytes", - "nodeType": "ElementaryTypeName", - "src": "6616:5:7", - "typeDescriptions": { - "typeIdentifier": "t_bytes_storage_ptr", - "typeString": "bytes" - } - }, - "visibility": "internal" - } - ], - "src": "6599:35:7" - }, - "returnParameters": { - "id": 2482, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 2481, - "mutability": "mutable", - "name": "", - "nameLocation": "-1:-1:-1", - "nodeType": "VariableDeclaration", - "scope": 2490, - "src": "6653:12:7", - "stateVariable": false, - "storageLocation": "memory", - "typeDescriptions": { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes" - }, - "typeName": { - "id": 2480, - "name": "bytes", - "nodeType": "ElementaryTypeName", - "src": "6653:5:7", - "typeDescriptions": { - "typeIdentifier": "t_bytes_storage_ptr", - "typeString": "bytes" - } - }, - "visibility": "internal" - } - ], - "src": "6652:14:7" - }, - "scope": 2557, - "stateMutability": "nonpayable", - "virtual": false, - "visibility": "internal" - }, - { - "id": 2525, - "nodeType": "FunctionDefinition", - "src": "6954:387:7", - "body": { - "id": 2524, - "nodeType": "Block", - "src": "7109:232:7", - "statements": [ - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "id": 2504, - "name": "target", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2493, - "src": "7138:6:7", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_address", - "typeString": "address" - } - ], - "id": 2503, - "name": "isContract", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2280, - "src": "7127:10:7", - "typeDescriptions": { - "typeIdentifier": "t_function_internal_view$_t_address_$returns$_t_bool_$", - "typeString": "function (address) view returns (bool)" - } - }, - "id": 2505, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "7127:18:7", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - { - "hexValue": "416464726573733a2064656c65676174652063616c6c20746f206e6f6e2d636f6e7472616374", - "id": 2506, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "string", - "lValueRequested": false, - "nodeType": "Literal", - "src": "7147:40:7", - "typeDescriptions": { - "typeIdentifier": "t_stringliteral_b94ded0918034cf8f896e19fa3cfdef1188cd569c577264a3622e49152f88520", - "typeString": "literal_string \"Address: delegate call to non-contract\"" - }, - "value": "Address: delegate call to non-contract" - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - { - "typeIdentifier": "t_stringliteral_b94ded0918034cf8f896e19fa3cfdef1188cd569c577264a3622e49152f88520", - "typeString": "literal_string \"Address: delegate call to non-contract\"" - } - ], - "id": 2502, - "name": "require", - "nodeType": "Identifier", - "overloadedDeclarations": [ - -18, - -18 - ], - "referencedDeclaration": -18, - "src": "7119:7:7", - "typeDescriptions": { - "typeIdentifier": "t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$", - "typeString": "function (bool,string memory) pure" - } - }, - "id": 2507, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "7119:69:7", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 2508, - "nodeType": "ExpressionStatement", - "src": "7119:69:7" - }, - { - "assignments": [ - 2510, - 2512 - ], - "declarations": [ - { - "constant": false, - "id": 2510, - "mutability": "mutable", - "name": "success", - "nameLocation": "7205:7:7", - "nodeType": "VariableDeclaration", - "scope": 2524, - "src": "7200:12:7", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - "typeName": { - "id": 2509, - "name": "bool", - "nodeType": "ElementaryTypeName", - "src": "7200:4:7", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 2512, - "mutability": "mutable", - "name": "returndata", - "nameLocation": "7227:10:7", - "nodeType": "VariableDeclaration", - "scope": 2524, - "src": "7214:23:7", - "stateVariable": false, - "storageLocation": "memory", - "typeDescriptions": { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes" - }, - "typeName": { - "id": 2511, - "name": "bytes", - "nodeType": "ElementaryTypeName", - "src": "7214:5:7", - "typeDescriptions": { - "typeIdentifier": "t_bytes_storage_ptr", - "typeString": "bytes" - } - }, - "visibility": "internal" - } - ], - "id": 2517, - "initialValue": { - "arguments": [ - { - "id": 2515, - "name": "data", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2495, - "src": "7261:4:7", - "typeDescriptions": { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes memory" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes memory" - } - ], - "expression": { - "id": 2513, - "name": "target", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2493, - "src": "7241:6:7", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "id": 2514, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberName": "delegatecall", - "nodeType": "MemberAccess", - "src": "7241:19:7", - "typeDescriptions": { - "typeIdentifier": "t_function_baredelegatecall_nonpayable$_t_bytes_memory_ptr_$returns$_t_bool_$_t_bytes_memory_ptr_$", - "typeString": "function (bytes memory) returns (bool,bytes memory)" - } - }, - "id": 2516, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "7241:25:7", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_tuple$_t_bool_$_t_bytes_memory_ptr_$", - "typeString": "tuple(bool,bytes memory)" - } - }, - "nodeType": "VariableDeclarationStatement", - "src": "7199:67:7" - }, - { - "expression": { - "arguments": [ - { - "id": 2519, - "name": "success", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2510, - "src": "7300:7:7", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - { - "id": 2520, - "name": "returndata", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2512, - "src": "7309:10:7", - "typeDescriptions": { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes memory" - } - }, - { - "id": 2521, - "name": "errorMessage", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2497, - "src": "7321:12:7", - "typeDescriptions": { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string memory" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes memory" - }, - { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string memory" - } - ], - "id": 2518, - "name": "verifyCallResult", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2556, - "src": "7283:16:7", - "typeDescriptions": { - "typeIdentifier": "t_function_internal_pure$_t_bool_$_t_bytes_memory_ptr_$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", - "typeString": "function (bool,bytes memory,string memory) pure returns (bytes memory)" - } - }, - "id": 2522, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "7283:51:7", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes memory" - } - }, - "functionReturnParameters": 2501, - "id": 2523, - "nodeType": "Return", - "src": "7276:58:7" - } - ] - }, - "documentation": { - "id": 2491, - "nodeType": "StructuredDocumentation", - "src": "6774:175:7", - "text": " @dev Same as {xref-Address-functionCall-address-bytes-string-}[`functionCall`],\n but performing a delegate call.\n _Available since v3.4._" - }, - "implemented": true, - "kind": "function", - "modifiers": [], - "name": "functionDelegateCall", - "nameLocation": "6963:20:7", - "parameters": { - "id": 2498, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 2493, - "mutability": "mutable", - "name": "target", - "nameLocation": "7001:6:7", - "nodeType": "VariableDeclaration", - "scope": 2525, - "src": "6993:14:7", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "typeName": { - "id": 2492, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "6993:7:7", - "stateMutability": "nonpayable", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 2495, - "mutability": "mutable", - "name": "data", - "nameLocation": "7030:4:7", - "nodeType": "VariableDeclaration", - "scope": 2525, - "src": "7017:17:7", - "stateVariable": false, - "storageLocation": "memory", - "typeDescriptions": { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes" - }, - "typeName": { - "id": 2494, - "name": "bytes", - "nodeType": "ElementaryTypeName", - "src": "7017:5:7", - "typeDescriptions": { - "typeIdentifier": "t_bytes_storage_ptr", - "typeString": "bytes" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 2497, - "mutability": "mutable", - "name": "errorMessage", - "nameLocation": "7058:12:7", - "nodeType": "VariableDeclaration", - "scope": 2525, - "src": "7044:26:7", - "stateVariable": false, - "storageLocation": "memory", - "typeDescriptions": { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string" - }, - "typeName": { - "id": 2496, - "name": "string", - "nodeType": "ElementaryTypeName", - "src": "7044:6:7", - "typeDescriptions": { - "typeIdentifier": "t_string_storage_ptr", - "typeString": "string" - } - }, - "visibility": "internal" - } - ], - "src": "6983:93:7" - }, - "returnParameters": { - "id": 2501, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 2500, - "mutability": "mutable", - "name": "", - "nameLocation": "-1:-1:-1", - "nodeType": "VariableDeclaration", - "scope": 2525, - "src": "7095:12:7", - "stateVariable": false, - "storageLocation": "memory", - "typeDescriptions": { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes" - }, - "typeName": { - "id": 2499, - "name": "bytes", - "nodeType": "ElementaryTypeName", - "src": "7095:5:7", - "typeDescriptions": { - "typeIdentifier": "t_bytes_storage_ptr", - "typeString": "bytes" - } - }, - "visibility": "internal" - } - ], - "src": "7094:14:7" - }, - "scope": 2557, - "stateMutability": "nonpayable", - "virtual": false, - "visibility": "internal" - }, - { - "id": 2556, - "nodeType": "FunctionDefinition", - "src": "7561:742:7", - "body": { - "id": 2555, - "nodeType": "Block", - "src": "7721:582:7", - "statements": [ - { - "condition": { - "id": 2537, - "name": "success", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2528, - "src": "7735:7:7", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "falseBody": { - "id": 2553, - "nodeType": "Block", - "src": "7792:505:7", - "statements": [ - { - "condition": { - "commonType": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "id": 2544, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "expression": { - "id": 2541, - "name": "returndata", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2530, - "src": "7876:10:7", - "typeDescriptions": { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes memory" - } - }, - "id": 2542, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberName": "length", - "nodeType": "MemberAccess", - "src": "7876:17:7", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "BinaryOperation", - "operator": ">", - "rightExpression": { - "hexValue": "30", - "id": 2543, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "number", - "lValueRequested": false, - "nodeType": "Literal", - "src": "7896:1:7", - "typeDescriptions": { - "typeIdentifier": "t_rational_0_by_1", - "typeString": "int_const 0" - }, - "value": "0" - }, - "src": "7876:21:7", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "falseBody": { - "id": 2551, - "nodeType": "Block", - "src": "8234:53:7", - "statements": [ - { - "expression": { - "arguments": [ - { - "id": 2548, - "name": "errorMessage", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2532, - "src": "8259:12:7", - "typeDescriptions": { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string memory" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string memory" - } - ], - "id": 2547, - "name": "revert", - "nodeType": "Identifier", - "overloadedDeclarations": [ - -19, - -19 - ], - "referencedDeclaration": -19, - "src": "8252:6:7", - "typeDescriptions": { - "typeIdentifier": "t_function_revert_pure$_t_string_memory_ptr_$returns$__$", - "typeString": "function (string memory) pure" - } - }, - "id": 2549, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "8252:20:7", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 2550, - "nodeType": "ExpressionStatement", - "src": "8252:20:7" - } - ] - }, - "id": 2552, - "nodeType": "IfStatement", - "src": "7872:415:7", - "trueBody": { - "id": 2546, - "nodeType": "Block", - "src": "7899:329:7", - "statements": [ - { - "AST": { - "nodeType": "YulBlock", - "src": "8069:145:7", - "statements": [ - { - "nodeType": "YulVariableDeclaration", - "src": "8091:40:7", - "value": { - "arguments": [ - { - "name": "returndata", - "nodeType": "YulIdentifier", - "src": "8120:10:7" - } - ], - "functionName": { - "name": "mload", - "nodeType": "YulIdentifier", - "src": "8114:5:7" - }, - "nodeType": "YulFunctionCall", - "src": "8114:17:7" - }, - "variables": [ - { - "name": "returndata_size", - "nodeType": "YulTypedName", - "src": "8095:15:7", - "type": "" - } - ] - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "8163:2:7", - "type": "", - "value": "32" - }, - { - "name": "returndata", - "nodeType": "YulIdentifier", - "src": "8167:10:7" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "8159:3:7" - }, - "nodeType": "YulFunctionCall", - "src": "8159:19:7" - }, - { - "name": "returndata_size", - "nodeType": "YulIdentifier", - "src": "8180:15:7" - } - ], - "functionName": { - "name": "revert", - "nodeType": "YulIdentifier", - "src": "8152:6:7" - }, - "nodeType": "YulFunctionCall", - "src": "8152:44:7" - }, - "nodeType": "YulExpressionStatement", - "src": "8152:44:7" - } - ] - }, - "documentation": "@solidity memory-safe-assembly", - "evmVersion": "london", - "externalReferences": [ - { - "declaration": 2530, - "isOffset": false, - "isSlot": false, - "src": "8120:10:7", - "valueSize": 1 - }, - { - "declaration": 2530, - "isOffset": false, - "isSlot": false, - "src": "8167:10:7", - "valueSize": 1 - } - ], - "id": 2545, - "nodeType": "InlineAssembly", - "src": "8060:154:7" - } - ] - } - } - ] - }, - "id": 2554, - "nodeType": "IfStatement", - "src": "7731:566:7", - "trueBody": { - "id": 2540, - "nodeType": "Block", - "src": "7744:42:7", - "statements": [ - { - "expression": { - "id": 2538, - "name": "returndata", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2530, - "src": "7765:10:7", - "typeDescriptions": { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes memory" - } - }, - "functionReturnParameters": 2536, - "id": 2539, - "nodeType": "Return", - "src": "7758:17:7" - } - ] - } - } - ] - }, - "documentation": { - "id": 2526, - "nodeType": "StructuredDocumentation", - "src": "7347:209:7", - "text": " @dev Tool to verifies that a low level call was successful, and revert if it wasn't, either by bubbling the\n revert reason using the provided one.\n _Available since v4.3._" - }, - "implemented": true, - "kind": "function", - "modifiers": [], - "name": "verifyCallResult", - "nameLocation": "7570:16:7", - "parameters": { - "id": 2533, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 2528, - "mutability": "mutable", - "name": "success", - "nameLocation": "7601:7:7", - "nodeType": "VariableDeclaration", - "scope": 2556, - "src": "7596:12:7", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - "typeName": { - "id": 2527, - "name": "bool", - "nodeType": "ElementaryTypeName", - "src": "7596:4:7", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 2530, - "mutability": "mutable", - "name": "returndata", - "nameLocation": "7631:10:7", - "nodeType": "VariableDeclaration", - "scope": 2556, - "src": "7618:23:7", - "stateVariable": false, - "storageLocation": "memory", - "typeDescriptions": { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes" - }, - "typeName": { - "id": 2529, - "name": "bytes", - "nodeType": "ElementaryTypeName", - "src": "7618:5:7", - "typeDescriptions": { - "typeIdentifier": "t_bytes_storage_ptr", - "typeString": "bytes" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 2532, - "mutability": "mutable", - "name": "errorMessage", - "nameLocation": "7665:12:7", - "nodeType": "VariableDeclaration", - "scope": 2556, - "src": "7651:26:7", - "stateVariable": false, - "storageLocation": "memory", - "typeDescriptions": { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string" - }, - "typeName": { - "id": 2531, - "name": "string", - "nodeType": "ElementaryTypeName", - "src": "7651:6:7", - "typeDescriptions": { - "typeIdentifier": "t_string_storage_ptr", - "typeString": "string" - } - }, - "visibility": "internal" - } - ], - "src": "7586:97:7" - }, - "returnParameters": { - "id": 2536, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 2535, - "mutability": "mutable", - "name": "", - "nameLocation": "-1:-1:-1", - "nodeType": "VariableDeclaration", - "scope": 2556, - "src": "7707:12:7", - "stateVariable": false, - "storageLocation": "memory", - "typeDescriptions": { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes" - }, - "typeName": { - "id": 2534, - "name": "bytes", - "nodeType": "ElementaryTypeName", - "src": "7707:5:7", - "typeDescriptions": { - "typeIdentifier": "t_bytes_storage_ptr", - "typeString": "bytes" - } - }, - "visibility": "internal" - } - ], - "src": "7706:14:7" - }, - "scope": 2557, - "stateMutability": "pure", - "virtual": false, - "visibility": "internal" - } - ], - "abstract": false, - "baseContracts": [], - "canonicalName": "Address", - "contractDependencies": [], - "contractKind": "library", - "documentation": { - "id": 2265, - "nodeType": "StructuredDocumentation", - "src": "126:67:7", - "text": " @dev Collection of functions related to the address type" - }, - "fullyImplemented": true, - "linearizedBaseContracts": [ - 2557 - ], - "name": "Address", - "nameLocation": "202:7:7", - "scope": 2558, - "usedErrors": [] - } - ], - "license": "MIT" - } -} \ No newline at end of file diff --git a/out/AssetCreation.sol/AssetCreation.json b/out/AssetCreation.sol/AssetCreation.json deleted file mode 100644 index 8c866c0..0000000 --- a/out/AssetCreation.sol/AssetCreation.json +++ /dev/null @@ -1,2578 +0,0 @@ -{ - "abi": [ - { - "inputs": [ - { - "internalType": "uint256", - "name": "amount", - "type": "uint256" - }, - { - "internalType": "uint256", - "name": "_raisedAmount", - "type": "uint256" - }, - { - "internalType": "address", - "name": "_user", - "type": "address" - } - ], - "stateMutability": "nonpayable", - "type": "constructor" - }, - { - "inputs": [], - "name": "callEndContract", - "outputs": [], - "stateMutability": "nonpayable", - "type": "function" - }, - { - "inputs": [ - { - "internalType": "address", - "name": "_userAddr", - "type": "address" - } - ], - "name": "checkIfUser", - "outputs": [ - { - "internalType": "bool", - "name": "", - "type": "bool" - } - ], - "stateMutability": "view", - "type": "function" - }, - { - "inputs": [], - "name": "checkTimeRemaining", - "outputs": [ - { - "internalType": "uint256", - "name": "", - "type": "uint256" - } - ], - "stateMutability": "view", - "type": "function" - }, - { - "inputs": [ - { - "internalType": "bytes", - "name": "", - "type": "bytes" - } - ], - "name": "checkUpkeep", - "outputs": [ - { - "internalType": "bool", - "name": "upkeepNeeded", - "type": "bool" - }, - { - "internalType": "bytes", - "name": "performData", - "type": "bytes" - } - ], - "stateMutability": "view", - "type": "function" - }, - { - "inputs": [], - "name": "getCreator", - "outputs": [ - { - "internalType": "address", - "name": "", - "type": "address" - } - ], - "stateMutability": "view", - "type": "function" - }, - { - "inputs": [], - "name": "getUser", - "outputs": [ - { - "internalType": "address", - "name": "", - "type": "address" - } - ], - "stateMutability": "view", - "type": "function" - }, - { - "inputs": [], - "name": "ierc20", - "outputs": [ - { - "internalType": "contract IERC20", - "name": "", - "type": "address" - } - ], - "stateMutability": "view", - "type": "function" - }, - { - "inputs": [ - { - "internalType": "bytes", - "name": "", - "type": "bytes" - } - ], - "name": "performUpkeep", - "outputs": [], - "stateMutability": "nonpayable", - "type": "function" - }, - { - "inputs": [ - { - "internalType": "address", - "name": "_creatorAddr", - "type": "address" - }, - { - "internalType": "uint256", - "name": "_duration", - "type": "uint256" - } - ], - "name": "startContract", - "outputs": [], - "stateMutability": "nonpayable", - "type": "function" - } - ], - "bytecode": { - "object": "0x60c060405234801561001057600080fd5b50604051610d97380380610d9783398101604081905261002f91610044565b6001600160a01b031660a0526080525061008a565b60008060006060848603121561005957600080fd5b83516020850151604086015191945092506001600160a01b038116811461007f57600080fd5b809150509250925092565b60805160a051610ce46100b360003960008181610119015261026e015260005050610ce46000f3fe608060405234801561001057600080fd5b50600436106100935760003560e01c8063832880e711610066578063832880e714610117578063bf0ae63d1461013d578063c6c6d29214610150578063f65861c314610163578063facda8131461018657600080fd5b80630ee2cb101461009857806340c6ed97146100c25780634585e33b146100d85780636e04ff0d146100ed575b600080fd5b6005546001600160a01b03165b6040516001600160a01b0390911681526020015b60405180910390f35b6100ca61018e565b6040519081526020016100b9565b6100eb6100e636600461035d565b6101a3565b005b6101096100fb36600461035d565b505060035442101590606090565b6040516100b99291906103cf565b7f00000000000000000000000000000000000000000000000000000000000000006100a5565b6006546100a5906001600160a01b031681565b6100eb61015e366004610445565b6101b8565b61017661017136600461046f565b61026a565b60405190151581526020016100b9565b6100eb6102ba565b60004260035461019e91906104a7565b905090565b60035442106101b4576101b461031d565b5050565b600580546001600160a01b0319166001600160a01b03841617905542600281905560018290556101e99082906104be565b60038190556006546040516001600160a01b0390911691849161020b90610350565b6001600160a01b0393841681529290911660208301526040820152606001604051809103906000f080158015610245573d6000803e3d6000fd5b50600080546001600160a01b0319166001600160a01b03929092169190911790555050565b60007f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0316826001600160a01b0316036102ad57506001919050565b506000919050565b919050565b6102c33361026a565b6103135760405162461bcd60e51b815260206004820152601c60248201527f596f752063616e6e6f7420656e64207468697320636f6e747261637400000000604482015260640160405180910390fd5b61031b61031d565b565b6103263361026a565b1561031b57600260015461033a91906104d6565b60035461034791906104a7565b42101561031b57565b6107b6806104f983390190565b6000806020838503121561037057600080fd5b823567ffffffffffffffff8082111561038857600080fd5b818501915085601f83011261039c57600080fd5b8135818111156103ab57600080fd5b8660208285010111156103bd57600080fd5b60209290920196919550909350505050565b821515815260006020604081840152835180604085015260005b81811015610405578581018301518582016060015282016103e9565b81811115610417576000606083870101525b50601f01601f191692909201606001949350505050565b80356001600160a01b03811681146102b557600080fd5b6000806040838503121561045857600080fd5b6104618361042e565b946020939093013593505050565b60006020828403121561048157600080fd5b61048a8261042e565b9392505050565b634e487b7160e01b600052601160045260246000fd5b6000828210156104b9576104b9610491565b500390565b600082198211156104d1576104d1610491565b500190565b6000826104f357634e487b7160e01b600052601260045260246000fd5b50049056fe60e060405234801561001057600080fd5b506040516107b63803806107b683398101604081905261002f916100d0565b42811161009d5760405162461bcd60e51b815260206004820152603260248201527f546f6b656e54696d656c6f636b3a2072656c656173652074696d65206973206260448201527165666f72652063757272656e742074696d6560701b606482015260840160405180910390fd5b6001600160a01b03928316608052911660a05260c052610113565b6001600160a01b03811681146100cd57600080fd5b50565b6000806000606084860312156100e557600080fd5b83516100f0816100b8565b6020850151909350610101816100b8565b80925050604084015190509250925092565b60805160a05160c05161065c61015a60003960008181609f015260f00152600081816053015261029801526000818160ca015281816101820152610276015261065c6000f3fe608060405234801561001057600080fd5b506004361061004c5760003560e01c806338af3eed1461005157806386d1a69f14610090578063b91d40011461009a578063fc0c546a146100c8575b600080fd5b7f00000000000000000000000000000000000000000000000000000000000000005b6040516001600160a01b0390911681526020015b60405180910390f35b6100986100ee565b005b6040517f00000000000000000000000000000000000000000000000000000000000000008152602001610087565b7f0000000000000000000000000000000000000000000000000000000000000000610073565b7f000000000000000000000000000000000000000000000000000000000000000042101561017e5760405162461bcd60e51b815260206004820152603260248201527f546f6b656e54696d656c6f636b3a2063757272656e742074696d65206973206260448201527165666f72652072656c656173652074696d6560701b60648201526084015b60405180910390fd5b60007f00000000000000000000000000000000000000000000000000000000000000006040516370a0823160e01b81523060048201526001600160a01b0391909116906370a0823190602401602060405180830381865afa1580156101e7573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061020b919061056c565b9050600081116102695760405162461bcd60e51b815260206004820152602360248201527f546f6b656e54696d656c6f636b3a206e6f20746f6b656e7320746f2072656c6560448201526261736560e81b6064820152608401610175565b6102bd6001600160a01b037f0000000000000000000000000000000000000000000000000000000000000000167f0000000000000000000000000000000000000000000000000000000000000000836102c0565b50565b604080516001600160a01b038416602482015260448082018490528251808303909101815260649091019091526020810180516001600160e01b031663a9059cbb60e01b179052610312908490610317565b505050565b600061036c826040518060400160405280602081526020017f5361666545524332303a206c6f772d6c6576656c2063616c6c206661696c6564815250856001600160a01b03166103e99092919063ffffffff16565b805190915015610312578080602001905181019061038a9190610585565b6103125760405162461bcd60e51b815260206004820152602a60248201527f5361666545524332303a204552433230206f7065726174696f6e20646964206e6044820152691bdd081cdd58d8d9595960b21b6064820152608401610175565b60606103f88484600085610402565b90505b9392505050565b6060824710156104635760405162461bcd60e51b815260206004820152602660248201527f416464726573733a20696e73756666696369656e742062616c616e636520666f6044820152651c8818d85b1b60d21b6064820152608401610175565b6001600160a01b0385163b6104ba5760405162461bcd60e51b815260206004820152601d60248201527f416464726573733a2063616c6c20746f206e6f6e2d636f6e74726163740000006044820152606401610175565b600080866001600160a01b031685876040516104d691906105d7565b60006040518083038185875af1925050503d8060008114610513576040519150601f19603f3d011682016040523d82523d6000602084013e610518565b606091505b5091509150610528828286610533565b979650505050505050565b606083156105425750816103fb565b8251156105525782518084602001fd5b8160405162461bcd60e51b815260040161017591906105f3565b60006020828403121561057e57600080fd5b5051919050565b60006020828403121561059757600080fd5b815180151581146103fb57600080fd5b60005b838110156105c25781810151838201526020016105aa565b838111156105d1576000848401525b50505050565b600082516105e98184602087016105a7565b9190910192915050565b60208152600082518060208401526106128160408501602087016105a7565b601f01601f1916919091016040019291505056fea2646970667358221220a6d50bd92be244b5ebe34cda117e246f11612a7913fff13aa82571a2fc392f6364736f6c634300080d0033a2646970667358221220f06fe76877e18f6e91e922f0852be91de5d52b7224443fe1f38c0b1434098efa64736f6c634300080d0033", - "sourceMap": "317:3085:8:-:0;;;837:232;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;-1:-1:-1;;;;;944:19:8;;;973:30;;-1:-1:-1;317:3085:8;;14:412:12;102:6;110;118;171:2;159:9;150:7;146:23;142:32;139:52;;;187:1;184;177:12;139:52;210:16;;266:2;251:18;;245:25;313:2;298:18;;292:25;210:16;;-1:-1:-1;245:25:12;-1:-1:-1;;;;;;346:31:12;;336:42;;326:70;;392:1;389;382:12;326:70;415:5;405:15;;;14:412;;;;;:::o;:::-;317:3085:8;;;;;;;;;;;;;;;;;;;;;;", - "linkReferences": {} - }, - "deployedBytecode": { - "object": "0x608060405234801561001057600080fd5b50600436106100935760003560e01c8063832880e711610066578063832880e714610117578063bf0ae63d1461013d578063c6c6d29214610150578063f65861c314610163578063facda8131461018657600080fd5b80630ee2cb101461009857806340c6ed97146100c25780634585e33b146100d85780636e04ff0d146100ed575b600080fd5b6005546001600160a01b03165b6040516001600160a01b0390911681526020015b60405180910390f35b6100ca61018e565b6040519081526020016100b9565b6100eb6100e636600461035d565b6101a3565b005b6101096100fb36600461035d565b505060035442101590606090565b6040516100b99291906103cf565b7f00000000000000000000000000000000000000000000000000000000000000006100a5565b6006546100a5906001600160a01b031681565b6100eb61015e366004610445565b6101b8565b61017661017136600461046f565b61026a565b60405190151581526020016100b9565b6100eb6102ba565b60004260035461019e91906104a7565b905090565b60035442106101b4576101b461031d565b5050565b600580546001600160a01b0319166001600160a01b03841617905542600281905560018290556101e99082906104be565b60038190556006546040516001600160a01b0390911691849161020b90610350565b6001600160a01b0393841681529290911660208301526040820152606001604051809103906000f080158015610245573d6000803e3d6000fd5b50600080546001600160a01b0319166001600160a01b03929092169190911790555050565b60007f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0316826001600160a01b0316036102ad57506001919050565b506000919050565b919050565b6102c33361026a565b6103135760405162461bcd60e51b815260206004820152601c60248201527f596f752063616e6e6f7420656e64207468697320636f6e747261637400000000604482015260640160405180910390fd5b61031b61031d565b565b6103263361026a565b1561031b57600260015461033a91906104d6565b60035461034791906104a7565b42101561031b57565b6107b6806104f983390190565b6000806020838503121561037057600080fd5b823567ffffffffffffffff8082111561038857600080fd5b818501915085601f83011261039c57600080fd5b8135818111156103ab57600080fd5b8660208285010111156103bd57600080fd5b60209290920196919550909350505050565b821515815260006020604081840152835180604085015260005b81811015610405578581018301518582016060015282016103e9565b81811115610417576000606083870101525b50601f01601f191692909201606001949350505050565b80356001600160a01b03811681146102b557600080fd5b6000806040838503121561045857600080fd5b6104618361042e565b946020939093013593505050565b60006020828403121561048157600080fd5b61048a8261042e565b9392505050565b634e487b7160e01b600052601160045260246000fd5b6000828210156104b9576104b9610491565b500390565b600082198211156104d1576104d1610491565b500190565b6000826104f357634e487b7160e01b600052601260045260246000fd5b50049056fe60e060405234801561001057600080fd5b506040516107b63803806107b683398101604081905261002f916100d0565b42811161009d5760405162461bcd60e51b815260206004820152603260248201527f546f6b656e54696d656c6f636b3a2072656c656173652074696d65206973206260448201527165666f72652063757272656e742074696d6560701b606482015260840160405180910390fd5b6001600160a01b03928316608052911660a05260c052610113565b6001600160a01b03811681146100cd57600080fd5b50565b6000806000606084860312156100e557600080fd5b83516100f0816100b8565b6020850151909350610101816100b8565b80925050604084015190509250925092565b60805160a05160c05161065c61015a60003960008181609f015260f00152600081816053015261029801526000818160ca015281816101820152610276015261065c6000f3fe608060405234801561001057600080fd5b506004361061004c5760003560e01c806338af3eed1461005157806386d1a69f14610090578063b91d40011461009a578063fc0c546a146100c8575b600080fd5b7f00000000000000000000000000000000000000000000000000000000000000005b6040516001600160a01b0390911681526020015b60405180910390f35b6100986100ee565b005b6040517f00000000000000000000000000000000000000000000000000000000000000008152602001610087565b7f0000000000000000000000000000000000000000000000000000000000000000610073565b7f000000000000000000000000000000000000000000000000000000000000000042101561017e5760405162461bcd60e51b815260206004820152603260248201527f546f6b656e54696d656c6f636b3a2063757272656e742074696d65206973206260448201527165666f72652072656c656173652074696d6560701b60648201526084015b60405180910390fd5b60007f00000000000000000000000000000000000000000000000000000000000000006040516370a0823160e01b81523060048201526001600160a01b0391909116906370a0823190602401602060405180830381865afa1580156101e7573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061020b919061056c565b9050600081116102695760405162461bcd60e51b815260206004820152602360248201527f546f6b656e54696d656c6f636b3a206e6f20746f6b656e7320746f2072656c6560448201526261736560e81b6064820152608401610175565b6102bd6001600160a01b037f0000000000000000000000000000000000000000000000000000000000000000167f0000000000000000000000000000000000000000000000000000000000000000836102c0565b50565b604080516001600160a01b038416602482015260448082018490528251808303909101815260649091019091526020810180516001600160e01b031663a9059cbb60e01b179052610312908490610317565b505050565b600061036c826040518060400160405280602081526020017f5361666545524332303a206c6f772d6c6576656c2063616c6c206661696c6564815250856001600160a01b03166103e99092919063ffffffff16565b805190915015610312578080602001905181019061038a9190610585565b6103125760405162461bcd60e51b815260206004820152602a60248201527f5361666545524332303a204552433230206f7065726174696f6e20646964206e6044820152691bdd081cdd58d8d9595960b21b6064820152608401610175565b60606103f88484600085610402565b90505b9392505050565b6060824710156104635760405162461bcd60e51b815260206004820152602660248201527f416464726573733a20696e73756666696369656e742062616c616e636520666f6044820152651c8818d85b1b60d21b6064820152608401610175565b6001600160a01b0385163b6104ba5760405162461bcd60e51b815260206004820152601d60248201527f416464726573733a2063616c6c20746f206e6f6e2d636f6e74726163740000006044820152606401610175565b600080866001600160a01b031685876040516104d691906105d7565b60006040518083038185875af1925050503d8060008114610513576040519150601f19603f3d011682016040523d82523d6000602084013e610518565b606091505b5091509150610528828286610533565b979650505050505050565b606083156105425750816103fb565b8251156105525782518084602001fd5b8160405162461bcd60e51b815260040161017591906105f3565b60006020828403121561057e57600080fd5b5051919050565b60006020828403121561059757600080fd5b815180151581146103fb57600080fd5b60005b838110156105c25781810151838201526020016105aa565b838111156105d1576000848401525b50505050565b600082516105e98184602087016105a7565b9190910192915050565b60208152600082518060208401526106128160408501602087016105a7565b601f01601f1916919091016040019291505056fea2646970667358221220a6d50bd92be244b5ebe34cda117e246f11612a7913fff13aa82571a2fc392f6364736f6c634300080d0033a2646970667358221220f06fe76877e18f6e91e922f0852be91de5d52b7224443fe1f38c0b1434098efa64736f6c634300080d0033", - "sourceMap": "317:3085:8:-:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;1818:89;1888:12;;-1:-1:-1;;;;;1888:12:8;1818:89;;;-1:-1:-1;;;;;178:32:12;;;160:51;;148:2;133:18;1818:89:8;;;;;;;;1913:110;;;:::i;:::-;;;368:25:12;;;356:2;341:18;1913:110:8;222:177:12;2451:141:8;;;;;;:::i;:::-;;:::i;:::-;;2242:175;;;;;;:::i;:::-;-1:-1:-1;;2402:7:8;;2383:15;:26;;;2331:24;;2242:175;;;;;;;;;:::i;1727:85::-;1794:11;1727:85;;806:20;;;;;-1:-1:-1;;;;;806:20:8;;;1118:404;;;;;;:::i;:::-;;:::i;1528:193::-;;;;;;:::i;:::-;;:::i;:::-;;;2697:14:12;;2690:22;2672:41;;2660:2;2645:18;1528:193:8;2532:187:12;2054:140:8;;;:::i;1913:110::-;1965:7;2001:15;1991:7;;:25;;;;:::i;:::-;1984:32;;1913:110;:::o;2451:141::-;2540:7;;2521:15;:26;2518:68;;2562:13;:11;:13::i;:::-;2451:141;;:::o;1118:404::-;1304:12;:27;;-1:-1:-1;;;;;;1304:27:8;-1:-1:-1;;;;;1304:27:8;;;;;1353:15;1341:9;:27;;;-1:-1:-1;1378:20:8;;;1418:21;;1378:20;;1418:21;:::i;:::-;1408:7;:31;;;1484:6;;1465:49;;-1:-1:-1;;;;;1484:6:8;;;;1492:12;;1465:49;;;:::i;:::-;-1:-1:-1;;;;;3392:15:12;;;3374:34;;3444:15;;;;3439:2;3424:18;;3417:43;3491:2;3476:18;;3469:34;3324:2;3309:18;1465:49:8;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;1449:13:8;:65;;-1:-1:-1;;;;;;1449:65:8;-1:-1:-1;;;;;1449:65:8;;;;;;;;;;-1:-1:-1;;1118:404:8:o;1528:193::-;1590:4;1623:11;-1:-1:-1;;;;;1610:24:8;:9;-1:-1:-1;;;;;1610:24:8;;1606:109;;-1:-1:-1;1657:4:8;;1528:193;-1:-1:-1;1528:193:8:o;1606:109::-;-1:-1:-1;1699:5:8;;1528:193;-1:-1:-1;1528:193:8:o;1606:109::-;1528:193;;;:::o;2054:140::-;2108:23;2120:10;2108:11;:23::i;:::-;2099:65;;;;-1:-1:-1;;;2099:65:8;;3716:2:12;2099:65:8;;;3698:21:12;3755:2;3735:18;;;3728:30;3794;3774:18;;;3767:58;3842:18;;2099:65:8;;;;;;;;2174:13;:11;:13::i;:::-;2054:140::o;2598:802::-;2652:23;2664:10;2652:11;:23::i;:::-;2649:745;;;2780:1;2771:8;;:10;;;;:::i;:::-;2760:7;;:22;;;;:::i;:::-;2741:15;:41;2737:502;2649:745;2737:502;2054:140::o;-1:-1:-1:-;;;;;;;;:::o;404:591:12:-;474:6;482;535:2;523:9;514:7;510:23;506:32;503:52;;;551:1;548;541:12;503:52;591:9;578:23;620:18;661:2;653:6;650:14;647:34;;;677:1;674;667:12;647:34;715:6;704:9;700:22;690:32;;760:7;753:4;749:2;745:13;741:27;731:55;;782:1;779;772:12;731:55;822:2;809:16;848:2;840:6;837:14;834:34;;;864:1;861;854:12;834:34;909:7;904:2;895:6;891:2;887:15;883:24;880:37;877:57;;;930:1;927;920:12;877:57;961:2;953:11;;;;;983:6;;-1:-1:-1;404:591:12;;-1:-1:-1;;;;404:591:12:o;1000:676::-;1183:6;1176:14;1169:22;1158:9;1151:41;1132:4;1211:2;1249;1244;1233:9;1229:18;1222:30;1281:6;1275:13;1324:6;1319:2;1308:9;1304:18;1297:34;1349:1;1359:140;1373:6;1370:1;1367:13;1359:140;;;1468:14;;;1464:23;;1458:30;1434:17;;;1453:2;1430:26;1423:66;1388:10;;1359:140;;;1517:6;1514:1;1511:13;1508:91;;;1587:1;1582:2;1573:6;1562:9;1558:22;1554:31;1547:42;1508:91;-1:-1:-1;1660:2:12;1639:15;-1:-1:-1;;1635:29:12;1620:45;;;;1667:2;1616:54;;1000:676;-1:-1:-1;;;;1000:676:12:o;1904:173::-;1972:20;;-1:-1:-1;;;;;2021:31:12;;2011:42;;2001:70;;2067:1;2064;2057:12;2082:254;2150:6;2158;2211:2;2199:9;2190:7;2186:23;2182:32;2179:52;;;2227:1;2224;2217:12;2179:52;2250:29;2269:9;2250:29;:::i;:::-;2240:39;2326:2;2311:18;;;;2298:32;;-1:-1:-1;;;2082:254:12:o;2341:186::-;2400:6;2453:2;2441:9;2432:7;2428:23;2424:32;2421:52;;;2469:1;2466;2459:12;2421:52;2492:29;2511:9;2492:29;:::i;:::-;2482:39;2341:186;-1:-1:-1;;;2341:186:12:o;2724:127::-;2785:10;2780:3;2776:20;2773:1;2766:31;2816:4;2813:1;2806:15;2840:4;2837:1;2830:15;2856:125;2896:4;2924:1;2921;2918:8;2915:34;;;2929:18;;:::i;:::-;-1:-1:-1;2966:9:12;;2856:125::o;2986:128::-;3026:3;3057:1;3053:6;3050:1;3047:13;3044:39;;;3063:18;;:::i;:::-;-1:-1:-1;3099:9:12;;2986:128::o;3871:217::-;3911:1;3937;3927:132;;3981:10;3976:3;3972:20;3969:1;3962:31;4016:4;4013:1;4006:15;4044:4;4041:1;4034:15;3927:132;-1:-1:-1;4073:9:12;;3871:217::o", - "linkReferences": {}, - "immutableReferences": { - "2580": [ - { - "start": 281, - "length": 32 - }, - { - "start": 622, - "length": 32 - } - ] - } - }, - "ast": { - "absolutePath": "/mnt/c/Users/PizzaHi5/Documents/CreatorDAO/CreatorDAO/src/AssetCreation.sol", - "id": 2761, - "exportedSymbols": { - "Address": [ - 2557 - ], - "AssetCreation": [ - 2760 - ], - "IERC20": [ - 1922 - ], - "KeeperBase": [ - 29 - ], - "KeeperCompatible": [ - 38 - ], - "KeeperCompatibleInterface": [ - 57 - ], - "SafeERC20": [ - 2146 - ], - "TokenTimelock": [ - 2262 - ] - }, - "nodeType": "SourceUnit", - "src": "32:3370:8", - "nodes": [ - { - "id": 2559, - "nodeType": "PragmaDirective", - "src": "32:23:8", - "literals": [ - "solidity", - "^", - "0.8", - ".0" - ] - }, - { - "id": 2560, - "nodeType": "ImportDirective", - "src": "57:56:8", - "absolutePath": "/mnt/c/Users/PizzaHi5/Documents/CreatorDAO/CreatorDAO/lib/openzeppelin-contracts/contracts/token/ERC20/IERC20.sol", - "file": "@openzeppelin/contracts/token/ERC20/IERC20.sol", - "nameLocation": "-1:-1:-1", - "scope": 2761, - "sourceUnit": 1923, - "symbolAliases": [], - "unitAlias": "" - }, - { - "id": 2561, - "nodeType": "ImportDirective", - "src": "114:69:8", - "absolutePath": "/mnt/c/Users/PizzaHi5/Documents/CreatorDAO/CreatorDAO/lib/openzeppelin-contracts/contracts/token/ERC20/utils/TokenTimelock.sol", - "file": "@openzeppelin/contracts/token/ERC20/utils/TokenTimelock.sol", - "nameLocation": "-1:-1:-1", - "scope": 2761, - "sourceUnit": 2263, - "symbolAliases": [], - "unitAlias": "" - }, - { - "id": 2562, - "nodeType": "ImportDirective", - "src": "184:60:8", - "absolutePath": "/mnt/c/Users/PizzaHi5/Documents/CreatorDAO/CreatorDAO/lib/chainlink/contracts/src/v0.8/KeeperCompatible.sol", - "file": "@chainlink/contracts/src/v0.8/KeeperCompatible.sol", - "nameLocation": "-1:-1:-1", - "scope": 2761, - "sourceUnit": 39, - "symbolAliases": [], - "unitAlias": "" - }, - { - "id": 2760, - "nodeType": "ContractDefinition", - "src": "317:3085:8", - "nodes": [ - { - "id": 2567, - "nodeType": "VariableDeclaration", - "src": "376:35:8", - "constant": false, - "mutability": "mutable", - "name": "tokenTimeLock", - "nameLocation": "398:13:8", - "scope": 2760, - "stateVariable": true, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_contract$_TokenTimelock_$2262", - "typeString": "contract TokenTimelock" - }, - "typeName": { - "id": 2566, - "nodeType": "UserDefinedTypeName", - "pathNode": { - "id": 2565, - "name": "TokenTimelock", - "nodeType": "IdentifierPath", - "referencedDeclaration": 2262, - "src": "376:13:8" - }, - "referencedDeclaration": 2262, - "src": "376:13:8", - "typeDescriptions": { - "typeIdentifier": "t_contract$_TokenTimelock_$2262", - "typeString": "contract TokenTimelock" - } - }, - "visibility": "private" - }, - { - "id": 2569, - "nodeType": "VariableDeclaration", - "src": "484:24:8", - "constant": false, - "mutability": "mutable", - "name": "duration", - "nameLocation": "500:8:8", - "scope": 2760, - "stateVariable": true, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 2568, - "name": "uint256", - "nodeType": "ElementaryTypeName", - "src": "484:7:8", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "visibility": "private" - }, - { - "id": 2571, - "nodeType": "VariableDeclaration", - "src": "514:25:8", - "constant": false, - "mutability": "mutable", - "name": "startTime", - "nameLocation": "530:9:8", - "scope": 2760, - "stateVariable": true, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 2570, - "name": "uint256", - "nodeType": "ElementaryTypeName", - "src": "514:7:8", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "visibility": "private" - }, - { - "id": 2573, - "nodeType": "VariableDeclaration", - "src": "545:23:8", - "constant": false, - "mutability": "mutable", - "name": "endTime", - "nameLocation": "561:7:8", - "scope": 2760, - "stateVariable": true, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 2572, - "name": "uint256", - "nodeType": "ElementaryTypeName", - "src": "545:7:8", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "visibility": "private" - }, - { - "id": 2576, - "nodeType": "VariableDeclaration", - "src": "574:34:8", - "constant": true, - "mutability": "constant", - "name": "USER_PENALTY", - "nameLocation": "591:12:8", - "scope": 2760, - "stateVariable": true, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 2574, - "name": "uint256", - "nodeType": "ElementaryTypeName", - "src": "574:7:8", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "value": { - "hexValue": "3130", - "id": 2575, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "number", - "lValueRequested": false, - "nodeType": "Literal", - "src": "606:2:8", - "typeDescriptions": { - "typeIdentifier": "t_rational_10_by_1", - "typeString": "int_const 10" - }, - "value": "10" - }, - "visibility": "internal" - }, - { - "id": 2578, - "nodeType": "VariableDeclaration", - "src": "637:40:8", - "constant": false, - "mutability": "immutable", - "name": "i_raisedAmount", - "nameLocation": "663:14:8", - "scope": 2760, - "stateVariable": true, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 2577, - "name": "uint256", - "nodeType": "ElementaryTypeName", - "src": "637:7:8", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "visibility": "private" - }, - { - "id": 2580, - "nodeType": "VariableDeclaration", - "src": "684:37:8", - "constant": false, - "mutability": "immutable", - "name": "i_assetUser", - "nameLocation": "710:11:8", - "scope": 2760, - "stateVariable": true, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "typeName": { - "id": 2579, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "684:7:8", - "stateMutability": "nonpayable", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "visibility": "private" - }, - { - "id": 2582, - "nodeType": "VariableDeclaration", - "src": "727:30:8", - "constant": false, - "mutability": "mutable", - "name": "tokens", - "nameLocation": "751:6:8", - "scope": 2760, - "stateVariable": true, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_address_payable", - "typeString": "address payable" - }, - "typeName": { - "id": 2581, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "727:15:8", - "stateMutability": "payable", - "typeDescriptions": { - "typeIdentifier": "t_address_payable", - "typeString": "address payable" - } - }, - "visibility": "private" - }, - { - "id": 2584, - "nodeType": "VariableDeclaration", - "src": "763:28:8", - "constant": false, - "mutability": "mutable", - "name": "assetCreator", - "nameLocation": "779:12:8", - "scope": 2760, - "stateVariable": true, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "typeName": { - "id": 2583, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "763:7:8", - "stateMutability": "nonpayable", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "visibility": "private" - }, - { - "id": 2587, - "nodeType": "VariableDeclaration", - "src": "806:20:8", - "constant": false, - "functionSelector": "bf0ae63d", - "mutability": "mutable", - "name": "ierc20", - "nameLocation": "820:6:8", - "scope": 2760, - "stateVariable": true, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_contract$_IERC20_$1922", - "typeString": "contract IERC20" - }, - "typeName": { - "id": 2586, - "nodeType": "UserDefinedTypeName", - "pathNode": { - "id": 2585, - "name": "IERC20", - "nodeType": "IdentifierPath", - "referencedDeclaration": 1922, - "src": "806:6:8" - }, - "referencedDeclaration": 1922, - "src": "806:6:8", - "typeDescriptions": { - "typeIdentifier": "t_contract$_IERC20_$1922", - "typeString": "contract IERC20" - } - }, - "visibility": "public" - }, - { - "id": 2605, - "nodeType": "FunctionDefinition", - "src": "837:232:8", - "body": { - "id": 2604, - "nodeType": "Block", - "src": "934:135:8", - "statements": [ - { - "expression": { - "id": 2598, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftHandSide": { - "id": 2596, - "name": "i_assetUser", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2580, - "src": "944:11:8", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "nodeType": "Assignment", - "operator": "=", - "rightHandSide": { - "id": 2597, - "name": "_user", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2593, - "src": "958:5:8", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "src": "944:19:8", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "id": 2599, - "nodeType": "ExpressionStatement", - "src": "944:19:8" - }, - { - "expression": { - "id": 2602, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftHandSide": { - "id": 2600, - "name": "i_raisedAmount", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2578, - "src": "973:14:8", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "Assignment", - "operator": "=", - "rightHandSide": { - "id": 2601, - "name": "_raisedAmount", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2591, - "src": "990:13:8", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "src": "973:30:8", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "id": 2603, - "nodeType": "ExpressionStatement", - "src": "973:30:8" - } - ] - }, - "implemented": true, - "kind": "constructor", - "modifiers": [], - "name": "", - "nameLocation": "-1:-1:-1", - "parameters": { - "id": 2594, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 2589, - "mutability": "mutable", - "name": "amount", - "nameLocation": "867:6:8", - "nodeType": "VariableDeclaration", - "scope": 2605, - "src": "859:14:8", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 2588, - "name": "uint256", - "nodeType": "ElementaryTypeName", - "src": "859:7:8", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 2591, - "mutability": "mutable", - "name": "_raisedAmount", - "nameLocation": "891:13:8", - "nodeType": "VariableDeclaration", - "scope": 2605, - "src": "883:21:8", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 2590, - "name": "uint256", - "nodeType": "ElementaryTypeName", - "src": "883:7:8", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 2593, - "mutability": "mutable", - "name": "_user", - "nameLocation": "922:5:8", - "nodeType": "VariableDeclaration", - "scope": 2605, - "src": "914:13:8", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "typeName": { - "id": 2592, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "914:7:8", - "stateMutability": "nonpayable", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "visibility": "internal" - } - ], - "src": "849:84:8" - }, - "returnParameters": { - "id": 2595, - "nodeType": "ParameterList", - "parameters": [], - "src": "934:0:8" - }, - "scope": 2760, - "stateMutability": "nonpayable", - "virtual": false, - "visibility": "public" - }, - { - "id": 2642, - "nodeType": "FunctionDefinition", - "src": "1118:404:8", - "body": { - "id": 2641, - "nodeType": "Block", - "src": "1190:332:8", - "statements": [ - { - "expression": { - "id": 2614, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftHandSide": { - "id": 2612, - "name": "assetCreator", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2584, - "src": "1304:12:8", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "nodeType": "Assignment", - "operator": "=", - "rightHandSide": { - "id": 2613, - "name": "_creatorAddr", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2607, - "src": "1319:12:8", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "src": "1304:27:8", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "id": 2615, - "nodeType": "ExpressionStatement", - "src": "1304:27:8" - }, - { - "expression": { - "id": 2619, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftHandSide": { - "id": 2616, - "name": "startTime", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2571, - "src": "1341:9:8", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "Assignment", - "operator": "=", - "rightHandSide": { - "expression": { - "id": 2617, - "name": "block", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": -4, - "src": "1353:5:8", - "typeDescriptions": { - "typeIdentifier": "t_magic_block", - "typeString": "block" - } - }, - "id": 2618, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberName": "timestamp", - "nodeType": "MemberAccess", - "src": "1353:15:8", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "src": "1341:27:8", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "id": 2620, - "nodeType": "ExpressionStatement", - "src": "1341:27:8" - }, - { - "expression": { - "id": 2623, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftHandSide": { - "id": 2621, - "name": "duration", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2569, - "src": "1378:8:8", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "Assignment", - "operator": "=", - "rightHandSide": { - "id": 2622, - "name": "_duration", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2609, - "src": "1389:9:8", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "src": "1378:20:8", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "id": 2624, - "nodeType": "ExpressionStatement", - "src": "1378:20:8" - }, - { - "expression": { - "id": 2629, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftHandSide": { - "id": 2625, - "name": "endTime", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2573, - "src": "1408:7:8", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "Assignment", - "operator": "=", - "rightHandSide": { - "commonType": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "id": 2628, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "id": 2626, - "name": "startTime", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2571, - "src": "1418:9:8", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "BinaryOperation", - "operator": "+", - "rightExpression": { - "id": 2627, - "name": "_duration", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2609, - "src": "1430:9:8", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "src": "1418:21:8", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "src": "1408:31:8", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "id": 2630, - "nodeType": "ExpressionStatement", - "src": "1408:31:8" - }, - { - "expression": { - "id": 2639, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftHandSide": { - "id": 2631, - "name": "tokenTimeLock", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2567, - "src": "1449:13:8", - "typeDescriptions": { - "typeIdentifier": "t_contract$_TokenTimelock_$2262", - "typeString": "contract TokenTimelock" - } - }, - "nodeType": "Assignment", - "operator": "=", - "rightHandSide": { - "arguments": [ - { - "id": 2635, - "name": "ierc20", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2587, - "src": "1484:6:8", - "typeDescriptions": { - "typeIdentifier": "t_contract$_IERC20_$1922", - "typeString": "contract IERC20" - } - }, - { - "id": 2636, - "name": "_creatorAddr", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2607, - "src": "1492:12:8", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - { - "id": 2637, - "name": "endTime", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2573, - "src": "1506:7:8", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_contract$_IERC20_$1922", - "typeString": "contract IERC20" - }, - { - "typeIdentifier": "t_address", - "typeString": "address" - }, - { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - ], - "id": 2634, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "nodeType": "NewExpression", - "src": "1465:17:8", - "typeDescriptions": { - "typeIdentifier": "t_function_creation_nonpayable$_t_contract$_IERC20_$1922_$_t_address_$_t_uint256_$returns$_t_contract$_TokenTimelock_$2262_$", - "typeString": "function (contract IERC20,address,uint256) returns (contract TokenTimelock)" - }, - "typeName": { - "id": 2633, - "nodeType": "UserDefinedTypeName", - "pathNode": { - "id": 2632, - "name": "TokenTimelock", - "nodeType": "IdentifierPath", - "referencedDeclaration": 2262, - "src": "1469:13:8" - }, - "referencedDeclaration": 2262, - "src": "1469:13:8", - "typeDescriptions": { - "typeIdentifier": "t_contract$_TokenTimelock_$2262", - "typeString": "contract TokenTimelock" - } - } - }, - "id": 2638, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "1465:49:8", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_contract$_TokenTimelock_$2262", - "typeString": "contract TokenTimelock" - } - }, - "src": "1449:65:8", - "typeDescriptions": { - "typeIdentifier": "t_contract$_TokenTimelock_$2262", - "typeString": "contract TokenTimelock" - } - }, - "id": 2640, - "nodeType": "ExpressionStatement", - "src": "1449:65:8" - } - ] - }, - "functionSelector": "c6c6d292", - "implemented": true, - "kind": "function", - "modifiers": [], - "name": "startContract", - "nameLocation": "1127:13:8", - "parameters": { - "id": 2610, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 2607, - "mutability": "mutable", - "name": "_creatorAddr", - "nameLocation": "1150:12:8", - "nodeType": "VariableDeclaration", - "scope": 2642, - "src": "1142:20:8", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "typeName": { - "id": 2606, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "1142:7:8", - "stateMutability": "nonpayable", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 2609, - "mutability": "mutable", - "name": "_duration", - "nameLocation": "1172:9:8", - "nodeType": "VariableDeclaration", - "scope": 2642, - "src": "1164:17:8", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 2608, - "name": "uint256", - "nodeType": "ElementaryTypeName", - "src": "1164:7:8", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "visibility": "internal" - } - ], - "src": "1141:41:8" - }, - "returnParameters": { - "id": 2611, - "nodeType": "ParameterList", - "parameters": [], - "src": "1190:0:8" - }, - "scope": 2760, - "stateMutability": "nonpayable", - "virtual": false, - "visibility": "public" - }, - { - "id": 2660, - "nodeType": "FunctionDefinition", - "src": "1528:193:8", - "body": { - "id": 2659, - "nodeType": "Block", - "src": "1596:125:8", - "statements": [ - { - "condition": { - "commonType": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "id": 2651, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "id": 2649, - "name": "_userAddr", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2644, - "src": "1610:9:8", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "nodeType": "BinaryOperation", - "operator": "==", - "rightExpression": { - "id": 2650, - "name": "i_assetUser", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2580, - "src": "1623:11:8", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "src": "1610:24:8", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "falseBody": { - "id": 2657, - "nodeType": "Block", - "src": "1678:37:8", - "statements": [ - { - "expression": { - "hexValue": "66616c7365", - "id": 2655, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "bool", - "lValueRequested": false, - "nodeType": "Literal", - "src": "1699:5:8", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - "value": "false" - }, - "functionReturnParameters": 2648, - "id": 2656, - "nodeType": "Return", - "src": "1692:12:8" - } - ] - }, - "id": 2658, - "nodeType": "IfStatement", - "src": "1606:109:8", - "trueBody": { - "id": 2654, - "nodeType": "Block", - "src": "1636:36:8", - "statements": [ - { - "expression": { - "hexValue": "74727565", - "id": 2652, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "bool", - "lValueRequested": false, - "nodeType": "Literal", - "src": "1657:4:8", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - "value": "true" - }, - "functionReturnParameters": 2648, - "id": 2653, - "nodeType": "Return", - "src": "1650:11:8" - } - ] - } - } - ] - }, - "functionSelector": "f65861c3", - "implemented": true, - "kind": "function", - "modifiers": [], - "name": "checkIfUser", - "nameLocation": "1537:11:8", - "parameters": { - "id": 2645, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 2644, - "mutability": "mutable", - "name": "_userAddr", - "nameLocation": "1558:9:8", - "nodeType": "VariableDeclaration", - "scope": 2660, - "src": "1550:17:8", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "typeName": { - "id": 2643, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "1550:7:8", - "stateMutability": "nonpayable", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "visibility": "internal" - } - ], - "src": "1549:19:8" - }, - "returnParameters": { - "id": 2648, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 2647, - "mutability": "mutable", - "name": "", - "nameLocation": "-1:-1:-1", - "nodeType": "VariableDeclaration", - "scope": 2660, - "src": "1590:4:8", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - "typeName": { - "id": 2646, - "name": "bool", - "nodeType": "ElementaryTypeName", - "src": "1590:4:8", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "visibility": "internal" - } - ], - "src": "1589:6:8" - }, - "scope": 2760, - "stateMutability": "view", - "virtual": false, - "visibility": "public" - }, - { - "id": 2668, - "nodeType": "FunctionDefinition", - "src": "1727:85:8", - "body": { - "id": 2667, - "nodeType": "Block", - "src": "1777:35:8", - "statements": [ - { - "expression": { - "id": 2665, - "name": "i_assetUser", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2580, - "src": "1794:11:8", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "functionReturnParameters": 2664, - "id": 2666, - "nodeType": "Return", - "src": "1787:18:8" - } - ] - }, - "functionSelector": "832880e7", - "implemented": true, - "kind": "function", - "modifiers": [], - "name": "getUser", - "nameLocation": "1736:7:8", - "parameters": { - "id": 2661, - "nodeType": "ParameterList", - "parameters": [], - "src": "1744:2:8" - }, - "returnParameters": { - "id": 2664, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 2663, - "mutability": "mutable", - "name": "", - "nameLocation": "-1:-1:-1", - "nodeType": "VariableDeclaration", - "scope": 2668, - "src": "1768:7:8", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "typeName": { - "id": 2662, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "1768:7:8", - "stateMutability": "nonpayable", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "visibility": "internal" - } - ], - "src": "1767:9:8" - }, - "scope": 2760, - "stateMutability": "view", - "virtual": false, - "visibility": "public" - }, - { - "id": 2676, - "nodeType": "FunctionDefinition", - "src": "1818:89:8", - "body": { - "id": 2675, - "nodeType": "Block", - "src": "1871:36:8", - "statements": [ - { - "expression": { - "id": 2673, - "name": "assetCreator", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2584, - "src": "1888:12:8", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "functionReturnParameters": 2672, - "id": 2674, - "nodeType": "Return", - "src": "1881:19:8" - } - ] - }, - "functionSelector": "0ee2cb10", - "implemented": true, - "kind": "function", - "modifiers": [], - "name": "getCreator", - "nameLocation": "1827:10:8", - "parameters": { - "id": 2669, - "nodeType": "ParameterList", - "parameters": [], - "src": "1838:2:8" - }, - "returnParameters": { - "id": 2672, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 2671, - "mutability": "mutable", - "name": "", - "nameLocation": "-1:-1:-1", - "nodeType": "VariableDeclaration", - "scope": 2676, - "src": "1862:7:8", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "typeName": { - "id": 2670, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "1862:7:8", - "stateMutability": "nonpayable", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "visibility": "internal" - } - ], - "src": "1861:9:8" - }, - "scope": 2760, - "stateMutability": "view", - "virtual": false, - "visibility": "public" - }, - { - "id": 2687, - "nodeType": "FunctionDefinition", - "src": "1913:110:8", - "body": { - "id": 2686, - "nodeType": "Block", - "src": "1974:49:8", - "statements": [ - { - "expression": { - "commonType": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "id": 2684, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "id": 2681, - "name": "endTime", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2573, - "src": "1991:7:8", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "BinaryOperation", - "operator": "-", - "rightExpression": { - "expression": { - "id": 2682, - "name": "block", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": -4, - "src": "2001:5:8", - "typeDescriptions": { - "typeIdentifier": "t_magic_block", - "typeString": "block" - } - }, - "id": 2683, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberName": "timestamp", - "nodeType": "MemberAccess", - "src": "2001:15:8", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "src": "1991:25:8", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "functionReturnParameters": 2680, - "id": 2685, - "nodeType": "Return", - "src": "1984:32:8" - } - ] - }, - "functionSelector": "40c6ed97", - "implemented": true, - "kind": "function", - "modifiers": [], - "name": "checkTimeRemaining", - "nameLocation": "1922:18:8", - "parameters": { - "id": 2677, - "nodeType": "ParameterList", - "parameters": [], - "src": "1941:2:8" - }, - "returnParameters": { - "id": 2680, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 2679, - "mutability": "mutable", - "name": "", - "nameLocation": "-1:-1:-1", - "nodeType": "VariableDeclaration", - "scope": 2687, - "src": "1965:7:8", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 2678, - "name": "uint256", - "nodeType": "ElementaryTypeName", - "src": "1965:7:8", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "visibility": "internal" - } - ], - "src": "1964:9:8" - }, - "scope": 2760, - "stateMutability": "view", - "virtual": false, - "visibility": "public" - }, - { - "id": 2702, - "nodeType": "FunctionDefinition", - "src": "2054:140:8", - "body": { - "id": 2701, - "nodeType": "Block", - "src": "2089:105:8", - "statements": [ - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "expression": { - "id": 2692, - "name": "msg", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": -15, - "src": "2120:3:8", - "typeDescriptions": { - "typeIdentifier": "t_magic_message", - "typeString": "msg" - } - }, - "id": 2693, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberName": "sender", - "nodeType": "MemberAccess", - "src": "2120:10:8", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_address", - "typeString": "address" - } - ], - "id": 2691, - "name": "checkIfUser", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2660, - "src": "2108:11:8", - "typeDescriptions": { - "typeIdentifier": "t_function_internal_view$_t_address_$returns$_t_bool_$", - "typeString": "function (address) view returns (bool)" - } - }, - "id": 2694, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "2108:23:8", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - { - "hexValue": "596f752063616e6e6f7420656e64207468697320636f6e7472616374", - "id": 2695, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "string", - "lValueRequested": false, - "nodeType": "Literal", - "src": "2133:30:8", - "typeDescriptions": { - "typeIdentifier": "t_stringliteral_b05e687dced7a3196251141bf0691f21754b9ac08907237cdc0d34727c48043a", - "typeString": "literal_string \"You cannot end this contract\"" - }, - "value": "You cannot end this contract" - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - { - "typeIdentifier": "t_stringliteral_b05e687dced7a3196251141bf0691f21754b9ac08907237cdc0d34727c48043a", - "typeString": "literal_string \"You cannot end this contract\"" - } - ], - "id": 2690, - "name": "require", - "nodeType": "Identifier", - "overloadedDeclarations": [ - -18, - -18 - ], - "referencedDeclaration": -18, - "src": "2099:7:8", - "typeDescriptions": { - "typeIdentifier": "t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$", - "typeString": "function (bool,string memory) pure" - } - }, - "id": 2696, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "2099:65:8", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 2697, - "nodeType": "ExpressionStatement", - "src": "2099:65:8" - }, - { - "expression": { - "arguments": [], - "expression": { - "argumentTypes": [], - "id": 2698, - "name": "endContract", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2759, - "src": "2174:11:8", - "typeDescriptions": { - "typeIdentifier": "t_function_internal_nonpayable$__$returns$__$", - "typeString": "function ()" - } - }, - "id": 2699, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "2174:13:8", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 2700, - "nodeType": "ExpressionStatement", - "src": "2174:13:8" - } - ] - }, - "functionSelector": "facda813", - "implemented": true, - "kind": "function", - "modifiers": [], - "name": "callEndContract", - "nameLocation": "2063:15:8", - "parameters": { - "id": 2688, - "nodeType": "ParameterList", - "parameters": [], - "src": "2079:2:8" - }, - "returnParameters": { - "id": 2689, - "nodeType": "ParameterList", - "parameters": [], - "src": "2089:0:8" - }, - "scope": 2760, - "stateMutability": "nonpayable", - "virtual": false, - "visibility": "public" - }, - { - "id": 2720, - "nodeType": "FunctionDefinition", - "src": "2242:175:8", - "baseFunctions": [ - 50 - ], - "body": { - "id": 2719, - "nodeType": "Block", - "src": "2357:60:8", - "statements": [ - { - "expression": { - "id": 2717, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftHandSide": { - "id": 2711, - "name": "upkeepNeeded", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2707, - "src": "2367:12:8", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "nodeType": "Assignment", - "operator": "=", - "rightHandSide": { - "components": [ - { - "commonType": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "id": 2715, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "expression": { - "id": 2712, - "name": "block", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": -4, - "src": "2383:5:8", - "typeDescriptions": { - "typeIdentifier": "t_magic_block", - "typeString": "block" - } - }, - "id": 2713, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberName": "timestamp", - "nodeType": "MemberAccess", - "src": "2383:15:8", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "BinaryOperation", - "operator": ">=", - "rightExpression": { - "id": 2714, - "name": "endTime", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2573, - "src": "2402:7:8", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "src": "2383:26:8", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - } - ], - "id": 2716, - "isConstant": false, - "isInlineArray": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "nodeType": "TupleExpression", - "src": "2382:28:8", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "src": "2367:43:8", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "id": 2718, - "nodeType": "ExpressionStatement", - "src": "2367:43:8" - } - ] - }, - "functionSelector": "6e04ff0d", - "implemented": true, - "kind": "function", - "modifiers": [], - "name": "checkUpkeep", - "nameLocation": "2251:11:8", - "parameters": { - "id": 2705, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 2704, - "mutability": "mutable", - "name": "", - "nameLocation": "-1:-1:-1", - "nodeType": "VariableDeclaration", - "scope": 2720, - "src": "2264:14:8", - "stateVariable": false, - "storageLocation": "calldata", - "typeDescriptions": { - "typeIdentifier": "t_bytes_calldata_ptr", - "typeString": "bytes" - }, - "typeName": { - "id": 2703, - "name": "bytes", - "nodeType": "ElementaryTypeName", - "src": "2264:5:8", - "typeDescriptions": { - "typeIdentifier": "t_bytes_storage_ptr", - "typeString": "bytes" - } - }, - "visibility": "internal" - } - ], - "src": "2263:16:8" - }, - "returnParameters": { - "id": 2710, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 2707, - "mutability": "mutable", - "name": "upkeepNeeded", - "nameLocation": "2317:12:8", - "nodeType": "VariableDeclaration", - "scope": 2720, - "src": "2312:17:8", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - "typeName": { - "id": 2706, - "name": "bool", - "nodeType": "ElementaryTypeName", - "src": "2312:4:8", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 2709, - "mutability": "mutable", - "name": "performData", - "nameLocation": "2344:11:8", - "nodeType": "VariableDeclaration", - "scope": 2720, - "src": "2331:24:8", - "stateVariable": false, - "storageLocation": "memory", - "typeDescriptions": { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes" - }, - "typeName": { - "id": 2708, - "name": "bytes", - "nodeType": "ElementaryTypeName", - "src": "2331:5:8", - "typeDescriptions": { - "typeIdentifier": "t_bytes_storage_ptr", - "typeString": "bytes" - } - }, - "visibility": "internal" - } - ], - "src": "2302:54:8" - }, - "scope": 2760, - "stateMutability": "view", - "virtual": false, - "visibility": "external" - }, - { - "id": 2736, - "nodeType": "FunctionDefinition", - "src": "2451:141:8", - "baseFunctions": [ - 56 - ], - "body": { - "id": 2735, - "nodeType": "Block", - "src": "2508:84:8", - "statements": [ - { - "condition": { - "commonType": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "id": 2729, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "expression": { - "id": 2726, - "name": "block", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": -4, - "src": "2521:5:8", - "typeDescriptions": { - "typeIdentifier": "t_magic_block", - "typeString": "block" - } - }, - "id": 2727, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberName": "timestamp", - "nodeType": "MemberAccess", - "src": "2521:15:8", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "BinaryOperation", - "operator": ">=", - "rightExpression": { - "id": 2728, - "name": "endTime", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2573, - "src": "2540:7:8", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "src": "2521:26:8", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "id": 2734, - "nodeType": "IfStatement", - "src": "2518:68:8", - "trueBody": { - "id": 2733, - "nodeType": "Block", - "src": "2548:38:8", - "statements": [ - { - "expression": { - "arguments": [], - "expression": { - "argumentTypes": [], - "id": 2730, - "name": "endContract", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2759, - "src": "2562:11:8", - "typeDescriptions": { - "typeIdentifier": "t_function_internal_nonpayable$__$returns$__$", - "typeString": "function ()" - } - }, - "id": 2731, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "2562:13:8", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 2732, - "nodeType": "ExpressionStatement", - "src": "2562:13:8" - } - ] - } - } - ] - }, - "functionSelector": "4585e33b", - "implemented": true, - "kind": "function", - "modifiers": [], - "name": "performUpkeep", - "nameLocation": "2460:13:8", - "overrides": { - "id": 2724, - "nodeType": "OverrideSpecifier", - "overrides": [], - "src": "2499:8:8" - }, - "parameters": { - "id": 2723, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 2722, - "mutability": "mutable", - "name": "", - "nameLocation": "-1:-1:-1", - "nodeType": "VariableDeclaration", - "scope": 2736, - "src": "2474:14:8", - "stateVariable": false, - "storageLocation": "calldata", - "typeDescriptions": { - "typeIdentifier": "t_bytes_calldata_ptr", - "typeString": "bytes" - }, - "typeName": { - "id": 2721, - "name": "bytes", - "nodeType": "ElementaryTypeName", - "src": "2474:5:8", - "typeDescriptions": { - "typeIdentifier": "t_bytes_storage_ptr", - "typeString": "bytes" - } - }, - "visibility": "internal" - } - ], - "src": "2473:16:8" - }, - "returnParameters": { - "id": 2725, - "nodeType": "ParameterList", - "parameters": [], - "src": "2508:0:8" - }, - "scope": 2760, - "stateMutability": "nonpayable", - "virtual": false, - "visibility": "external" - }, - { - "id": 2759, - "nodeType": "FunctionDefinition", - "src": "2598:802:8", - "body": { - "id": 2758, - "nodeType": "Block", - "src": "2638:762:8", - "statements": [ - { - "condition": { - "arguments": [ - { - "expression": { - "id": 2740, - "name": "msg", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": -15, - "src": "2664:3:8", - "typeDescriptions": { - "typeIdentifier": "t_magic_message", - "typeString": "msg" - } - }, - "id": 2741, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberName": "sender", - "nodeType": "MemberAccess", - "src": "2664:10:8", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_address", - "typeString": "address" - } - ], - "id": 2739, - "name": "checkIfUser", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2660, - "src": "2652:11:8", - "typeDescriptions": { - "typeIdentifier": "t_function_internal_view$_t_address_$returns$_t_bool_$", - "typeString": "function (address) view returns (bool)" - } - }, - "id": 2742, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "2652:23:8", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "falseBody": { - "id": 2756, - "nodeType": "Block", - "src": "3255:139:8", - "statements": [] - }, - "id": 2757, - "nodeType": "IfStatement", - "src": "2649:745:8", - "trueBody": { - "id": 2755, - "nodeType": "Block", - "src": "2677:572:8", - "statements": [ - { - "condition": { - "commonType": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "id": 2751, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "expression": { - "id": 2743, - "name": "block", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": -4, - "src": "2741:5:8", - "typeDescriptions": { - "typeIdentifier": "t_magic_block", - "typeString": "block" - } - }, - "id": 2744, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberName": "timestamp", - "nodeType": "MemberAccess", - "src": "2741:15:8", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "BinaryOperation", - "operator": ">=", - "rightExpression": { - "commonType": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "id": 2750, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "id": 2745, - "name": "endTime", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2573, - "src": "2760:7:8", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "BinaryOperation", - "operator": "-", - "rightExpression": { - "components": [ - { - "commonType": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "id": 2748, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "id": 2746, - "name": "duration", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2569, - "src": "2771:8:8", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "BinaryOperation", - "operator": "/", - "rightExpression": { - "hexValue": "32", - "id": 2747, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "number", - "lValueRequested": false, - "nodeType": "Literal", - "src": "2780:1:8", - "typeDescriptions": { - "typeIdentifier": "t_rational_2_by_1", - "typeString": "int_const 2" - }, - "value": "2" - }, - "src": "2771:10:8", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - } - ], - "id": 2749, - "isConstant": false, - "isInlineArray": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "nodeType": "TupleExpression", - "src": "2770:12:8", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "src": "2760:22:8", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "src": "2741:41:8", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "falseBody": { - "id": 2753, - "nodeType": "Block", - "src": "3023:216:8", - "statements": [] - }, - "id": 2754, - "nodeType": "IfStatement", - "src": "2737:502:8", - "trueBody": { - "id": 2752, - "nodeType": "Block", - "src": "2784:233:8", - "statements": [] - } - } - ] - } - } - ] - }, - "implemented": true, - "kind": "function", - "modifiers": [], - "name": "endContract", - "nameLocation": "2607:11:8", - "parameters": { - "id": 2737, - "nodeType": "ParameterList", - "parameters": [], - "src": "2618:2:8" - }, - "returnParameters": { - "id": 2738, - "nodeType": "ParameterList", - "parameters": [], - "src": "2638:0:8" - }, - "scope": 2760, - "stateMutability": "nonpayable", - "virtual": true, - "visibility": "internal" - } - ], - "abstract": false, - "baseContracts": [ - { - "baseName": { - "id": 2563, - "name": "KeeperCompatibleInterface", - "nodeType": "IdentifierPath", - "referencedDeclaration": 57, - "src": "343:25:8" - }, - "id": 2564, - "nodeType": "InheritanceSpecifier", - "src": "343:25:8" - } - ], - "canonicalName": "AssetCreation", - "contractDependencies": [ - 2262 - ], - "contractKind": "contract", - "fullyImplemented": true, - "linearizedBaseContracts": [ - 2760, - 57 - ], - "name": "AssetCreation", - "nameLocation": "326:13:8", - "scope": 2761, - "usedErrors": [] - } - ] - } -} \ No newline at end of file diff --git a/out/AssetCreation.t.sol/AssetCreationTest.json b/out/AssetCreation.t.sol/AssetCreationTest.json deleted file mode 100644 index 166122d..0000000 --- a/out/AssetCreation.t.sol/AssetCreationTest.json +++ /dev/null @@ -1,3043 +0,0 @@ -{ - "abi": [ - { - "anonymous": false, - "inputs": [ - { - "indexed": false, - "internalType": "string", - "name": "", - "type": "string" - } - ], - "name": "log", - "type": "event" - }, - { - "anonymous": false, - "inputs": [ - { - "indexed": false, - "internalType": "address", - "name": "", - "type": "address" - } - ], - "name": "log_address", - "type": "event" - }, - { - "anonymous": false, - "inputs": [ - { - "indexed": false, - "internalType": "bytes", - "name": "", - "type": "bytes" - } - ], - "name": "log_bytes", - "type": "event" - }, - { - "anonymous": false, - "inputs": [ - { - "indexed": false, - "internalType": "bytes32", - "name": "", - "type": "bytes32" - } - ], - "name": "log_bytes32", - "type": "event" - }, - { - "anonymous": false, - "inputs": [ - { - "indexed": false, - "internalType": "int256", - "name": "", - "type": "int256" - } - ], - "name": "log_int", - "type": "event" - }, - { - "anonymous": false, - "inputs": [ - { - "indexed": false, - "internalType": "string", - "name": "key", - "type": "string" - }, - { - "indexed": false, - "internalType": "address", - "name": "val", - "type": "address" - } - ], - "name": "log_named_address", - "type": "event" - }, - { - "anonymous": false, - "inputs": [ - { - "indexed": false, - "internalType": "string", - "name": "key", - "type": "string" - }, - { - "indexed": false, - "internalType": "bytes", - "name": "val", - "type": "bytes" - } - ], - "name": "log_named_bytes", - "type": "event" - }, - { - "anonymous": false, - "inputs": [ - { - "indexed": false, - "internalType": "string", - "name": "key", - "type": "string" - }, - { - "indexed": false, - "internalType": "bytes32", - "name": "val", - "type": "bytes32" - } - ], - "name": "log_named_bytes32", - "type": "event" - }, - { - "anonymous": false, - "inputs": [ - { - "indexed": false, - "internalType": "string", - "name": "key", - "type": "string" - }, - { - "indexed": false, - "internalType": "int256", - "name": "val", - "type": "int256" - }, - { - "indexed": false, - "internalType": "uint256", - "name": "decimals", - "type": "uint256" - } - ], - "name": "log_named_decimal_int", - "type": "event" - }, - { - "anonymous": false, - "inputs": [ - { - "indexed": false, - "internalType": "string", - "name": "key", - "type": "string" - }, - { - "indexed": false, - "internalType": "uint256", - "name": "val", - "type": "uint256" - }, - { - "indexed": false, - "internalType": "uint256", - "name": "decimals", - "type": "uint256" - } - ], - "name": "log_named_decimal_uint", - "type": "event" - }, - { - "anonymous": false, - "inputs": [ - { - "indexed": false, - "internalType": "string", - "name": "key", - "type": "string" - }, - { - "indexed": false, - "internalType": "int256", - "name": "val", - "type": "int256" - } - ], - "name": "log_named_int", - "type": "event" - }, - { - "anonymous": false, - "inputs": [ - { - "indexed": false, - "internalType": "string", - "name": "key", - "type": "string" - }, - { - "indexed": false, - "internalType": "string", - "name": "val", - "type": "string" - } - ], - "name": "log_named_string", - "type": "event" - }, - { - "anonymous": false, - "inputs": [ - { - "indexed": false, - "internalType": "string", - "name": "key", - "type": "string" - }, - { - "indexed": false, - "internalType": "uint256", - "name": "val", - "type": "uint256" - } - ], - "name": "log_named_uint", - "type": "event" - }, - { - "anonymous": false, - "inputs": [ - { - "indexed": false, - "internalType": "string", - "name": "", - "type": "string" - } - ], - "name": "log_string", - "type": "event" - }, - { - "anonymous": false, - "inputs": [ - { - "indexed": false, - "internalType": "uint256", - "name": "", - "type": "uint256" - } - ], - "name": "log_uint", - "type": "event" - }, - { - "anonymous": false, - "inputs": [ - { - "indexed": false, - "internalType": "bytes", - "name": "", - "type": "bytes" - } - ], - "name": "logs", - "type": "event" - }, - { - "inputs": [], - "name": "IS_TEST", - "outputs": [ - { - "internalType": "bool", - "name": "", - "type": "bool" - } - ], - "stateMutability": "view", - "type": "function" - }, - { - "inputs": [], - "name": "failed", - "outputs": [ - { - "internalType": "bool", - "name": "", - "type": "bool" - } - ], - "stateMutability": "nonpayable", - "type": "function" - }, - { - "inputs": [], - "name": "setUp", - "outputs": [], - "stateMutability": "nonpayable", - "type": "function" - }, - { - "inputs": [], - "name": "testCallEndContract", - "outputs": [], - "stateMutability": "nonpayable", - "type": "function" - }, - { - "inputs": [], - "name": "testCheckIfUser", - "outputs": [], - "stateMutability": "nonpayable", - "type": "function" - }, - { - "inputs": [], - "name": "testCheckUpkeep", - "outputs": [], - "stateMutability": "nonpayable", - "type": "function" - }, - { - "inputs": [], - "name": "testPerformUpkeep", - "outputs": [], - "stateMutability": "nonpayable", - "type": "function" - }, - { - "inputs": [], - "name": "testStartContract", - "outputs": [], - "stateMutability": "nonpayable", - "type": "function" - }, - { - "inputs": [], - "name": "testTimeRemaining", - "outputs": [], - "stateMutability": "view", - "type": "function" - }, - { - "inputs": [], - "name": "user", - "outputs": [ - { - "internalType": "address", - "name": "", - "type": "address" - } - ], - "stateMutability": "view", - "type": "function" - } - ], - "bytecode": { - "object": "0x60806040526000805460ff1916600190811790915580546001600160a01b03191673ecf6d20544d0e84ca3ab683f0394158e6c75eaae17905534801561004457600080fd5b50611c60806100546000396000f3fe608060405234801561001057600080fd5b506004361061009d5760003560e01c806360932b3d1161006657806360932b3d146100f457806368465062146100fc57806388f7f13514610104578063ba414fa61461010c578063fa7626d41461012457600080fd5b8062c14119146100a2578063088f0a48146100ac5780630a9254e4146100b45780632e9b6509146100bc5780634f8632ba146100c4575b600080fd5b6100aa610131565b005b6100aa6101ab565b6100aa61022e565b6100aa61033c565b6001546100d7906001600160a01b031681565b6040516001600160a01b0390911681526020015b60405180910390f35b6100aa610393565b6100aa61052b565b6100aa610711565b610114610807565b60405190151581526020016100eb565b6000546101149060ff1681565b600060029054906101000a90046001600160a01b03166001600160a01b03166340c6ed976040518163ffffffff1660e01b8152600401602060405180830381865afa158015610184573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906101a89190610c07565b50565b6001546000546040805163832880e760e01b8152905161022c936001600160a01b0390811693620100009004169163832880e79160048083019260209291908290030181865afa158015610203573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906102279190610c20565b610932565b565b60015460405160009161012c916001600160a01b039091169061025090610bfa565b92835260208301919091526001600160a01b03166040820152606001604051809103906000f080158015610288573d6000803e3d6000fd5b506000805462010000600160b01b031916620100006001600160a01b0393841681029190911791829055600280547312345678901234567890123456789012345678906001600160a01b03199091168117909155604051636363694960e11b8152600481019190915261012c602482015291049091169063c6c6d29290604401600060405180830381600087803b15801561032257600080fd5b505af1158015610336573d6000803e3d6000fd5b50505050565b6002546000546040805162ee2cb160e41b8152905161022c936001600160a01b03908116936201000090041691630ee2cb109160048083019260209291908290030181865afa158015610203573d6000803e3d6000fd5b60408051602081018252600080825280549251636e04ff0d60e01b815291929091620100009091046001600160a01b031690636e04ff0d906103d9908590600401610c7c565b600060405180830381865afa1580156103f6573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f1916820160405261041e9190810190610cd5565b50905061042b8115610a7e565b737109709ecfa91a80626ff3989d68f67f5b1dd12d63e5d6bf0261045161012c42610d95565b6040518263ffffffff1660e01b815260040161046f91815260200190565b600060405180830381600087803b15801561048957600080fd5b505af115801561049d573d6000803e3d6000fd5b5050600054604051636e04ff0d60e01b8152620100009091046001600160a01b03169250636e04ff0d91506104d6908590600401610c7c565b600060405180830381865afa1580156104f3573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f1916820160405261051b9190810190610cd5565b50905061052781610a7e565b5050565b737109709ecfa91a80626ff3989d68f67f5b1dd12d63e5d6bf02610552600361012c610dbb565b61055c9042610d95565b6040518263ffffffff1660e01b815260040161057a91815260200190565b600060405180830381600087803b15801561059457600080fd5b505af11580156105a8573d6000803e3d6000fd5b50505050600060029054906101000a90046001600160a01b03166001600160a01b031663facda8136040518163ffffffff1660e01b8152600401600060405180830381600087803b1580156105fc57600080fd5b505af1158015610610573d6000803e3d6000fd5b5050505061061e6001610a7e565b737109709ecfa91a80626ff3989d68f67f5b1dd12d63e5d6bf02610645600261012c610dbb565b61064f9042610d95565b6040518263ffffffff1660e01b815260040161066d91815260200190565b600060405180830381600087803b15801561068757600080fd5b505af115801561069b573d6000803e3d6000fd5b50505050600060029054906101000a90046001600160a01b03166001600160a01b031663facda8136040518163ffffffff1660e01b8152600401600060405180830381600087803b1580156106ef57600080fd5b505af1158015610703573d6000803e3d6000fd5b5050505061022c6001610a7e565b604080516020810190915260008152737109709ecfa91a80626ff3989d68f67f5b1dd12d63e5d6bf0261074661012c42610d95565b6040518263ffffffff1660e01b815260040161076491815260200190565b600060405180830381600087803b15801561077e57600080fd5b505af1158015610792573d6000803e3d6000fd5b5050600054604051634585e33b60e01b8152620100009091046001600160a01b03169250634585e33b91506107cb908490600401610c7c565b600060405180830381600087803b1580156107e557600080fd5b505af11580156107f9573d6000803e3d6000fd5b505050506101a86001610a7e565b60008054610100900460ff16156108275750600054610100900460ff1690565b6000737109709ecfa91a80626ff3989d68f67f5b1dd12d3b1561092d5760408051737109709ecfa91a80626ff3989d68f67f5b1dd12d602082018190526519985a5b195960d21b828401528251808303840181526060830190935260009290916108b5917f667f9d70ca411d70ead50d8d5c22070dafc36ad75f3dcf5e7237b22ade9aecc491608001610ddd565b60408051601f19818403018152908290526108cf91610e0e565b6000604051808303816000865af19150503d806000811461090c576040519150601f19603f3d011682016040523d82523d6000602084013e610911565b606091505b50915050808060200190518101906109299190610e2a565b9150505b919050565b806001600160a01b0316826001600160a01b031614610527577f41304facd9323d75b11bcdd609cb38effffdb05710f7caf0e9b16c6d9d709f506040516109b89060208082526025908201527f4572726f723a2061203d3d2062206e6f7420736174697366696564205b616464604082015264726573735d60d81b606082015260800190565b60405180910390a160408051818152600a81830152690808115e1c1958dd195960b21b60608201526001600160a01b038316602082015290517f9c4e8541ca8f0dc1c413f9108f66d82d3cecb1bddbce437a61caa3175c4cc96f9181900360800190a160408051818152600a8183015269080808081058dd1d585b60b21b60608201526001600160a01b038416602082015290517f9c4e8541ca8f0dc1c413f9108f66d82d3cecb1bddbce437a61caa3175c4cc96f9181900360800190a1610527610aee565b806101a8577f41304facd9323d75b11bcdd609cb38effffdb05710f7caf0e9b16c6d9d709f50604051610ae29060208082526017908201527f4572726f723a20417373657274696f6e204661696c6564000000000000000000604082015260600190565b60405180910390a16101a85b737109709ecfa91a80626ff3989d68f67f5b1dd12d3b15610be95760408051737109709ecfa91a80626ff3989d68f67f5b1dd12d602082018190526519985a5b195960d21b9282019290925260016060820152600091907f70ca10bbd0dbfd9020a9f4b13402c16cb120705e0d1c0aeab10fa353ae586fc49060800160408051601f1981840301815290829052610b889291602001610ddd565b60408051601f1981840301815290829052610ba291610e0e565b6000604051808303816000865af19150503d8060008114610bdf576040519150601f19603f3d011682016040523d82523d6000602084013e610be4565b606091505b505050505b6000805461ff001916610100179055565b610de580610e4683390190565b600060208284031215610c1957600080fd5b5051919050565b600060208284031215610c3257600080fd5b81516001600160a01b0381168114610c4957600080fd5b9392505050565b60005b83811015610c6b578181015183820152602001610c53565b838111156103365750506000910152565b6020815260008251806020840152610c9b816040850160208701610c50565b601f01601f19169190910160400192915050565b8051801515811461092d57600080fd5b634e487b7160e01b600052604160045260246000fd5b60008060408385031215610ce857600080fd5b610cf183610caf565b9150602083015167ffffffffffffffff80821115610d0e57600080fd5b818501915085601f830112610d2257600080fd5b815181811115610d3457610d34610cbf565b604051601f8201601f19908116603f01168101908382118183101715610d5c57610d5c610cbf565b81604052828152886020848701011115610d7557600080fd5b610d86836020830160208801610c50565b80955050505050509250929050565b60008219821115610db657634e487b7160e01b600052601160045260246000fd5b500190565b600082610dd857634e487b7160e01b600052601260045260246000fd5b500490565b6001600160e01b0319831681528151600090610e00816004850160208701610c50565b919091016004019392505050565b60008251610e20818460208701610c50565b9190910192915050565b600060208284031215610e3c57600080fd5b610c4982610caf56fe60c060405234801561001057600080fd5b50604051610de5380380610de583398101604081905261002f91610044565b6001600160a01b031660a0526080525061008a565b60008060006060848603121561005957600080fd5b83516020850151604086015191945092506001600160a01b038116811461007f57600080fd5b809150509250925092565b60805160a051610d246100c160003960008181610119015281816101bf0152818161029a01526102eb015260005050610d246000f3fe608060405234801561001057600080fd5b50600436106100935760003560e01c8063832880e711610066578063832880e714610117578063bf0ae63d1461013d578063c6c6d29214610150578063f65861c314610163578063facda8131461018657600080fd5b80630ee2cb101461009857806340c6ed97146100c25780634585e33b146100d85780636e04ff0d146100ed575b600080fd5b6005546001600160a01b03165b6040516001600160a01b0390911681526020015b60405180910390f35b6100ca61018e565b6040519081526020016100b9565b6100eb6100e636600461039d565b6101a3565b005b6101096100fb36600461039d565b505060035442101590606090565b6040516100b992919061040f565b7f00000000000000000000000000000000000000000000000000000000000000006100a5565b6006546100a5906001600160a01b031681565b6100eb61015e366004610485565b6101ba565b6101766101713660046104af565b610296565b60405190151581526020016100b9565b6100eb6102e6565b60004260035461019e91906104e7565b905090565b60035442106101b6576101b6600061036b565b5050565b6101e37f0000000000000000000000000000000000000000000000000000000000000000610296565b50600580546001600160a01b0319166001600160a01b03841617905542600281905560018290556102159082906104fe565b60038190556006546040516001600160a01b0390911691849161023790610390565b6001600160a01b0393841681529290911660208301526040820152606001604051809103906000f080158015610271573d6000803e3d6000fd5b50600080546001600160a01b0319166001600160a01b03929092169190911790555050565b60007f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0316826001600160a01b0316036102d957506001919050565b506000919050565b919050565b61030f7f0000000000000000000000000000000000000000000000000000000000000000610296565b61035f5760405162461bcd60e51b815260206004820152601c60248201527f596f752063616e6e6f7420656e64207468697320636f6e747261637400000000604482015260640160405180910390fd5b610369600161036b565b565b801561038d5760026001546103809190610516565b6003546101b691906104e7565b50565b6107b68061053983390190565b600080602083850312156103b057600080fd5b823567ffffffffffffffff808211156103c857600080fd5b818501915085601f8301126103dc57600080fd5b8135818111156103eb57600080fd5b8660208285010111156103fd57600080fd5b60209290920196919550909350505050565b821515815260006020604081840152835180604085015260005b8181101561044557858101830151858201606001528201610429565b81811115610457576000606083870101525b50601f01601f191692909201606001949350505050565b80356001600160a01b03811681146102e157600080fd5b6000806040838503121561049857600080fd5b6104a18361046e565b946020939093013593505050565b6000602082840312156104c157600080fd5b6104ca8261046e565b9392505050565b634e487b7160e01b600052601160045260246000fd5b6000828210156104f9576104f96104d1565b500390565b60008219821115610511576105116104d1565b500190565b60008261053357634e487b7160e01b600052601260045260246000fd5b50049056fe60e060405234801561001057600080fd5b506040516107b63803806107b683398101604081905261002f916100d0565b42811161009d5760405162461bcd60e51b815260206004820152603260248201527f546f6b656e54696d656c6f636b3a2072656c656173652074696d65206973206260448201527165666f72652063757272656e742074696d6560701b606482015260840160405180910390fd5b6001600160a01b03928316608052911660a05260c052610113565b6001600160a01b03811681146100cd57600080fd5b50565b6000806000606084860312156100e557600080fd5b83516100f0816100b8565b6020850151909350610101816100b8565b80925050604084015190509250925092565b60805160a05160c05161065c61015a60003960008181609f015260f00152600081816053015261029801526000818160ca015281816101820152610276015261065c6000f3fe608060405234801561001057600080fd5b506004361061004c5760003560e01c806338af3eed1461005157806386d1a69f14610090578063b91d40011461009a578063fc0c546a146100c8575b600080fd5b7f00000000000000000000000000000000000000000000000000000000000000005b6040516001600160a01b0390911681526020015b60405180910390f35b6100986100ee565b005b6040517f00000000000000000000000000000000000000000000000000000000000000008152602001610087565b7f0000000000000000000000000000000000000000000000000000000000000000610073565b7f000000000000000000000000000000000000000000000000000000000000000042101561017e5760405162461bcd60e51b815260206004820152603260248201527f546f6b656e54696d656c6f636b3a2063757272656e742074696d65206973206260448201527165666f72652072656c656173652074696d6560701b60648201526084015b60405180910390fd5b60007f00000000000000000000000000000000000000000000000000000000000000006040516370a0823160e01b81523060048201526001600160a01b0391909116906370a0823190602401602060405180830381865afa1580156101e7573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061020b919061056c565b9050600081116102695760405162461bcd60e51b815260206004820152602360248201527f546f6b656e54696d656c6f636b3a206e6f20746f6b656e7320746f2072656c6560448201526261736560e81b6064820152608401610175565b6102bd6001600160a01b037f0000000000000000000000000000000000000000000000000000000000000000167f0000000000000000000000000000000000000000000000000000000000000000836102c0565b50565b604080516001600160a01b038416602482015260448082018490528251808303909101815260649091019091526020810180516001600160e01b031663a9059cbb60e01b179052610312908490610317565b505050565b600061036c826040518060400160405280602081526020017f5361666545524332303a206c6f772d6c6576656c2063616c6c206661696c6564815250856001600160a01b03166103e99092919063ffffffff16565b805190915015610312578080602001905181019061038a9190610585565b6103125760405162461bcd60e51b815260206004820152602a60248201527f5361666545524332303a204552433230206f7065726174696f6e20646964206e6044820152691bdd081cdd58d8d9595960b21b6064820152608401610175565b60606103f88484600085610402565b90505b9392505050565b6060824710156104635760405162461bcd60e51b815260206004820152602660248201527f416464726573733a20696e73756666696369656e742062616c616e636520666f6044820152651c8818d85b1b60d21b6064820152608401610175565b6001600160a01b0385163b6104ba5760405162461bcd60e51b815260206004820152601d60248201527f416464726573733a2063616c6c20746f206e6f6e2d636f6e74726163740000006044820152606401610175565b600080866001600160a01b031685876040516104d691906105d7565b60006040518083038185875af1925050503d8060008114610513576040519150601f19603f3d011682016040523d82523d6000602084013e610518565b606091505b5091509150610528828286610533565b979650505050505050565b606083156105425750816103fb565b8251156105525782518084602001fd5b8160405162461bcd60e51b815260040161017591906105f3565b60006020828403121561057e57600080fd5b5051919050565b60006020828403121561059757600080fd5b815180151581146103fb57600080fd5b60005b838110156105c25781810151838201526020016105aa565b838111156105d1576000848401525b50505050565b600082516105e98184602087016105a7565b9190910192915050565b60208152600082518060208401526106128160408501602087016105a7565b601f01601f1916919091016040019291505056fea2646970667358221220a6d50bd92be244b5ebe34cda117e246f11612a7913fff13aa82571a2fc392f6364736f6c634300080d0033a2646970667358221220ea4c9b5d9a8479b4d110ee5e598c01a1c52404216988bba7f8dc52da0032851864736f6c634300080d0033a264697066735822122041892d97719f296f1b26a1a06a908619fcb9b33ed88c571d13f55d80765695a064736f6c634300080d0033", - "sourceMap": "197:1621:9:-:0;;;1572:26:3;;;-1:-1:-1;;1572:26:3;1594:4;1572:26;;;;;;442:64:9;;-1:-1:-1;;;;;;442:64:9;464:42;442:64;;;197:1621;;;;;;;;;;;;;;;;", - "linkReferences": {} - }, - "deployedBytecode": { - "object": "0x608060405234801561001057600080fd5b506004361061009d5760003560e01c806360932b3d1161006657806360932b3d146100f457806368465062146100fc57806388f7f13514610104578063ba414fa61461010c578063fa7626d41461012457600080fd5b8062c14119146100a2578063088f0a48146100ac5780630a9254e4146100b45780632e9b6509146100bc5780634f8632ba146100c4575b600080fd5b6100aa610131565b005b6100aa6101ab565b6100aa61022e565b6100aa61033c565b6001546100d7906001600160a01b031681565b6040516001600160a01b0390911681526020015b60405180910390f35b6100aa610393565b6100aa61052b565b6100aa610711565b610114610807565b60405190151581526020016100eb565b6000546101149060ff1681565b600060029054906101000a90046001600160a01b03166001600160a01b03166340c6ed976040518163ffffffff1660e01b8152600401602060405180830381865afa158015610184573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906101a89190610c07565b50565b6001546000546040805163832880e760e01b8152905161022c936001600160a01b0390811693620100009004169163832880e79160048083019260209291908290030181865afa158015610203573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906102279190610c20565b610932565b565b60015460405160009161012c916001600160a01b039091169061025090610bfa565b92835260208301919091526001600160a01b03166040820152606001604051809103906000f080158015610288573d6000803e3d6000fd5b506000805462010000600160b01b031916620100006001600160a01b0393841681029190911791829055600280547312345678901234567890123456789012345678906001600160a01b03199091168117909155604051636363694960e11b8152600481019190915261012c602482015291049091169063c6c6d29290604401600060405180830381600087803b15801561032257600080fd5b505af1158015610336573d6000803e3d6000fd5b50505050565b6002546000546040805162ee2cb160e41b8152905161022c936001600160a01b03908116936201000090041691630ee2cb109160048083019260209291908290030181865afa158015610203573d6000803e3d6000fd5b60408051602081018252600080825280549251636e04ff0d60e01b815291929091620100009091046001600160a01b031690636e04ff0d906103d9908590600401610c7c565b600060405180830381865afa1580156103f6573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f1916820160405261041e9190810190610cd5565b50905061042b8115610a7e565b737109709ecfa91a80626ff3989d68f67f5b1dd12d63e5d6bf0261045161012c42610d95565b6040518263ffffffff1660e01b815260040161046f91815260200190565b600060405180830381600087803b15801561048957600080fd5b505af115801561049d573d6000803e3d6000fd5b5050600054604051636e04ff0d60e01b8152620100009091046001600160a01b03169250636e04ff0d91506104d6908590600401610c7c565b600060405180830381865afa1580156104f3573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f1916820160405261051b9190810190610cd5565b50905061052781610a7e565b5050565b737109709ecfa91a80626ff3989d68f67f5b1dd12d63e5d6bf02610552600361012c610dbb565b61055c9042610d95565b6040518263ffffffff1660e01b815260040161057a91815260200190565b600060405180830381600087803b15801561059457600080fd5b505af11580156105a8573d6000803e3d6000fd5b50505050600060029054906101000a90046001600160a01b03166001600160a01b031663facda8136040518163ffffffff1660e01b8152600401600060405180830381600087803b1580156105fc57600080fd5b505af1158015610610573d6000803e3d6000fd5b5050505061061e6001610a7e565b737109709ecfa91a80626ff3989d68f67f5b1dd12d63e5d6bf02610645600261012c610dbb565b61064f9042610d95565b6040518263ffffffff1660e01b815260040161066d91815260200190565b600060405180830381600087803b15801561068757600080fd5b505af115801561069b573d6000803e3d6000fd5b50505050600060029054906101000a90046001600160a01b03166001600160a01b031663facda8136040518163ffffffff1660e01b8152600401600060405180830381600087803b1580156106ef57600080fd5b505af1158015610703573d6000803e3d6000fd5b5050505061022c6001610a7e565b604080516020810190915260008152737109709ecfa91a80626ff3989d68f67f5b1dd12d63e5d6bf0261074661012c42610d95565b6040518263ffffffff1660e01b815260040161076491815260200190565b600060405180830381600087803b15801561077e57600080fd5b505af1158015610792573d6000803e3d6000fd5b5050600054604051634585e33b60e01b8152620100009091046001600160a01b03169250634585e33b91506107cb908490600401610c7c565b600060405180830381600087803b1580156107e557600080fd5b505af11580156107f9573d6000803e3d6000fd5b505050506101a86001610a7e565b60008054610100900460ff16156108275750600054610100900460ff1690565b6000737109709ecfa91a80626ff3989d68f67f5b1dd12d3b1561092d5760408051737109709ecfa91a80626ff3989d68f67f5b1dd12d602082018190526519985a5b195960d21b828401528251808303840181526060830190935260009290916108b5917f667f9d70ca411d70ead50d8d5c22070dafc36ad75f3dcf5e7237b22ade9aecc491608001610ddd565b60408051601f19818403018152908290526108cf91610e0e565b6000604051808303816000865af19150503d806000811461090c576040519150601f19603f3d011682016040523d82523d6000602084013e610911565b606091505b50915050808060200190518101906109299190610e2a565b9150505b919050565b806001600160a01b0316826001600160a01b031614610527577f41304facd9323d75b11bcdd609cb38effffdb05710f7caf0e9b16c6d9d709f506040516109b89060208082526025908201527f4572726f723a2061203d3d2062206e6f7420736174697366696564205b616464604082015264726573735d60d81b606082015260800190565b60405180910390a160408051818152600a81830152690808115e1c1958dd195960b21b60608201526001600160a01b038316602082015290517f9c4e8541ca8f0dc1c413f9108f66d82d3cecb1bddbce437a61caa3175c4cc96f9181900360800190a160408051818152600a8183015269080808081058dd1d585b60b21b60608201526001600160a01b038416602082015290517f9c4e8541ca8f0dc1c413f9108f66d82d3cecb1bddbce437a61caa3175c4cc96f9181900360800190a1610527610aee565b806101a8577f41304facd9323d75b11bcdd609cb38effffdb05710f7caf0e9b16c6d9d709f50604051610ae29060208082526017908201527f4572726f723a20417373657274696f6e204661696c6564000000000000000000604082015260600190565b60405180910390a16101a85b737109709ecfa91a80626ff3989d68f67f5b1dd12d3b15610be95760408051737109709ecfa91a80626ff3989d68f67f5b1dd12d602082018190526519985a5b195960d21b9282019290925260016060820152600091907f70ca10bbd0dbfd9020a9f4b13402c16cb120705e0d1c0aeab10fa353ae586fc49060800160408051601f1981840301815290829052610b889291602001610ddd565b60408051601f1981840301815290829052610ba291610e0e565b6000604051808303816000865af19150503d8060008114610bdf576040519150601f19603f3d011682016040523d82523d6000602084013e610be4565b606091505b505050505b6000805461ff001916610100179055565b610de580610e4683390190565b600060208284031215610c1957600080fd5b5051919050565b600060208284031215610c3257600080fd5b81516001600160a01b0381168114610c4957600080fd5b9392505050565b60005b83811015610c6b578181015183820152602001610c53565b838111156103365750506000910152565b6020815260008251806020840152610c9b816040850160208701610c50565b601f01601f19169190910160400192915050565b8051801515811461092d57600080fd5b634e487b7160e01b600052604160045260246000fd5b60008060408385031215610ce857600080fd5b610cf183610caf565b9150602083015167ffffffffffffffff80821115610d0e57600080fd5b818501915085601f830112610d2257600080fd5b815181811115610d3457610d34610cbf565b604051601f8201601f19908116603f01168101908382118183101715610d5c57610d5c610cbf565b81604052828152886020848701011115610d7557600080fd5b610d86836020830160208801610c50565b80955050505050509250929050565b60008219821115610db657634e487b7160e01b600052601160045260246000fd5b500190565b600082610dd857634e487b7160e01b600052601260045260246000fd5b500490565b6001600160e01b0319831681528151600090610e00816004850160208701610c50565b919091016004019392505050565b60008251610e20818460208701610c50565b9190910192915050565b600060208284031215610e3c57600080fd5b610c4982610caf56fe60c060405234801561001057600080fd5b50604051610de5380380610de583398101604081905261002f91610044565b6001600160a01b031660a0526080525061008a565b60008060006060848603121561005957600080fd5b83516020850151604086015191945092506001600160a01b038116811461007f57600080fd5b809150509250925092565b60805160a051610d246100c160003960008181610119015281816101bf0152818161029a01526102eb015260005050610d246000f3fe608060405234801561001057600080fd5b50600436106100935760003560e01c8063832880e711610066578063832880e714610117578063bf0ae63d1461013d578063c6c6d29214610150578063f65861c314610163578063facda8131461018657600080fd5b80630ee2cb101461009857806340c6ed97146100c25780634585e33b146100d85780636e04ff0d146100ed575b600080fd5b6005546001600160a01b03165b6040516001600160a01b0390911681526020015b60405180910390f35b6100ca61018e565b6040519081526020016100b9565b6100eb6100e636600461039d565b6101a3565b005b6101096100fb36600461039d565b505060035442101590606090565b6040516100b992919061040f565b7f00000000000000000000000000000000000000000000000000000000000000006100a5565b6006546100a5906001600160a01b031681565b6100eb61015e366004610485565b6101ba565b6101766101713660046104af565b610296565b60405190151581526020016100b9565b6100eb6102e6565b60004260035461019e91906104e7565b905090565b60035442106101b6576101b6600061036b565b5050565b6101e37f0000000000000000000000000000000000000000000000000000000000000000610296565b50600580546001600160a01b0319166001600160a01b03841617905542600281905560018290556102159082906104fe565b60038190556006546040516001600160a01b0390911691849161023790610390565b6001600160a01b0393841681529290911660208301526040820152606001604051809103906000f080158015610271573d6000803e3d6000fd5b50600080546001600160a01b0319166001600160a01b03929092169190911790555050565b60007f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0316826001600160a01b0316036102d957506001919050565b506000919050565b919050565b61030f7f0000000000000000000000000000000000000000000000000000000000000000610296565b61035f5760405162461bcd60e51b815260206004820152601c60248201527f596f752063616e6e6f7420656e64207468697320636f6e747261637400000000604482015260640160405180910390fd5b610369600161036b565b565b801561038d5760026001546103809190610516565b6003546101b691906104e7565b50565b6107b68061053983390190565b600080602083850312156103b057600080fd5b823567ffffffffffffffff808211156103c857600080fd5b818501915085601f8301126103dc57600080fd5b8135818111156103eb57600080fd5b8660208285010111156103fd57600080fd5b60209290920196919550909350505050565b821515815260006020604081840152835180604085015260005b8181101561044557858101830151858201606001528201610429565b81811115610457576000606083870101525b50601f01601f191692909201606001949350505050565b80356001600160a01b03811681146102e157600080fd5b6000806040838503121561049857600080fd5b6104a18361046e565b946020939093013593505050565b6000602082840312156104c157600080fd5b6104ca8261046e565b9392505050565b634e487b7160e01b600052601160045260246000fd5b6000828210156104f9576104f96104d1565b500390565b60008219821115610511576105116104d1565b500190565b60008261053357634e487b7160e01b600052601260045260246000fd5b50049056fe60e060405234801561001057600080fd5b506040516107b63803806107b683398101604081905261002f916100d0565b42811161009d5760405162461bcd60e51b815260206004820152603260248201527f546f6b656e54696d656c6f636b3a2072656c656173652074696d65206973206260448201527165666f72652063757272656e742074696d6560701b606482015260840160405180910390fd5b6001600160a01b03928316608052911660a05260c052610113565b6001600160a01b03811681146100cd57600080fd5b50565b6000806000606084860312156100e557600080fd5b83516100f0816100b8565b6020850151909350610101816100b8565b80925050604084015190509250925092565b60805160a05160c05161065c61015a60003960008181609f015260f00152600081816053015261029801526000818160ca015281816101820152610276015261065c6000f3fe608060405234801561001057600080fd5b506004361061004c5760003560e01c806338af3eed1461005157806386d1a69f14610090578063b91d40011461009a578063fc0c546a146100c8575b600080fd5b7f00000000000000000000000000000000000000000000000000000000000000005b6040516001600160a01b0390911681526020015b60405180910390f35b6100986100ee565b005b6040517f00000000000000000000000000000000000000000000000000000000000000008152602001610087565b7f0000000000000000000000000000000000000000000000000000000000000000610073565b7f000000000000000000000000000000000000000000000000000000000000000042101561017e5760405162461bcd60e51b815260206004820152603260248201527f546f6b656e54696d656c6f636b3a2063757272656e742074696d65206973206260448201527165666f72652072656c656173652074696d6560701b60648201526084015b60405180910390fd5b60007f00000000000000000000000000000000000000000000000000000000000000006040516370a0823160e01b81523060048201526001600160a01b0391909116906370a0823190602401602060405180830381865afa1580156101e7573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061020b919061056c565b9050600081116102695760405162461bcd60e51b815260206004820152602360248201527f546f6b656e54696d656c6f636b3a206e6f20746f6b656e7320746f2072656c6560448201526261736560e81b6064820152608401610175565b6102bd6001600160a01b037f0000000000000000000000000000000000000000000000000000000000000000167f0000000000000000000000000000000000000000000000000000000000000000836102c0565b50565b604080516001600160a01b038416602482015260448082018490528251808303909101815260649091019091526020810180516001600160e01b031663a9059cbb60e01b179052610312908490610317565b505050565b600061036c826040518060400160405280602081526020017f5361666545524332303a206c6f772d6c6576656c2063616c6c206661696c6564815250856001600160a01b03166103e99092919063ffffffff16565b805190915015610312578080602001905181019061038a9190610585565b6103125760405162461bcd60e51b815260206004820152602a60248201527f5361666545524332303a204552433230206f7065726174696f6e20646964206e6044820152691bdd081cdd58d8d9595960b21b6064820152608401610175565b60606103f88484600085610402565b90505b9392505050565b6060824710156104635760405162461bcd60e51b815260206004820152602660248201527f416464726573733a20696e73756666696369656e742062616c616e636520666f6044820152651c8818d85b1b60d21b6064820152608401610175565b6001600160a01b0385163b6104ba5760405162461bcd60e51b815260206004820152601d60248201527f416464726573733a2063616c6c20746f206e6f6e2d636f6e74726163740000006044820152606401610175565b600080866001600160a01b031685876040516104d691906105d7565b60006040518083038185875af1925050503d8060008114610513576040519150601f19603f3d011682016040523d82523d6000602084013e610518565b606091505b5091509150610528828286610533565b979650505050505050565b606083156105425750816103fb565b8251156105525782518084602001fd5b8160405162461bcd60e51b815260040161017591906105f3565b60006020828403121561057e57600080fd5b5051919050565b60006020828403121561059757600080fd5b815180151581146103fb57600080fd5b60005b838110156105c25781810151838201526020016105aa565b838111156105d1576000848401525b50505050565b600082516105e98184602087016105a7565b9190910192915050565b60208152600082518060208401526106128160408501602087016105a7565b601f01601f1916919091016040019291505056fea2646970667358221220a6d50bd92be244b5ebe34cda117e246f11612a7913fff13aa82571a2fc392f6364736f6c634300080d0033a2646970667358221220ea4c9b5d9a8479b4d110ee5e598c01a1c52404216988bba7f8dc52da0032851864736f6c634300080d0033a264697066735822122041892d97719f296f1b26a1a06a908619fcb9b33ed88c571d13f55d80765695a064736f6c634300080d0033", - "sourceMap": "197:1621:9:-:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;944:81;;;:::i;:::-;;859:79;;;:::i;562:198::-;;;:::i;766:87::-;;;:::i;442:64::-;;;;;-1:-1:-1;;;;;442:64:9;;;;;;-1:-1:-1;;;;;178:32:10;;;160:51;;148:2;133:18;442:64:9;;;;;;;;1296:332;;;:::i;1031:259::-;;;:::i;1634:182::-;;;:::i;1819:584:3:-;;;:::i;:::-;;;387:14:10;;380:22;362:41;;350:2;335:18;1819:584:3;222:187:10;1572:26:3;;;;;;;;;944:81:9;995:2;;;;;;;;;-1:-1:-1;;;;;995:2:9;-1:-1:-1;;;;;995:21:9;;:23;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;944:81::o;859:79::-;912:4;;;918:2;:12;;;-1:-1:-1;;;918:12:9;;;;903:28;;-1:-1:-1;;;;;912:4:9;;;;918:2;;;;;:10;;:12;;;;;;;;;;;;;;:2;:12;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;903:8;:28::i;:::-;859:79::o;562:198::-;641:4;;601:45;;357:1;;396:3;;-1:-1:-1;;;;;641:4:9;;;;601:45;;;:::i;:::-;1100:25:10;;;1156:2;1141:18;;1134:34;;;;-1:-1:-1;;;;;1204:32:10;1199:2;1184:18;;1177:60;1088:2;1073:18;601:45:9;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;596:2:9;:50;;-1:-1:-1;;;;;;596:50:9;;-1:-1:-1;;;;;596:50:9;;;;;;;;;;;;;:2;656:52;;666:42;-1:-1:-1;;;;;;656:52:9;;;;;;;;718:35;;-1:-1:-1;;;718:35:9;;;;;1422:51:10;;;;433:3:9;1489:18:10;;;1482:34;718:2:9;;;;;;:16;;1395:18:10;;718:35:9;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;562:198::o;766:87::-;821:7;;;830:2;:15;;;-1:-1:-1;;;830:15:9;;;;812:34;;-1:-1:-1;;;;;821:7:9;;;;830:2;;;;;:13;;:15;;;;;;;;;;;;;;:2;:15;;;;;;;;;;;;;;1296:332;1340:22;;;;;;;;-1:-1:-1;1340:22:9;;;1426:2;;:20;;-1:-1:-1;;;1426:20:9;;1340:22;;-1:-1:-1;;1426:2:9;;;;-1:-1:-1;;;;;1426:2:9;;:14;;:20;;1340:22;;1426:20;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;1426:20:9;;;;;;;;;;;;:::i;:::-;-1:-1:-1;1407:39:9;-1:-1:-1;1456:33:9;1467:21;;1456:10;:33::i;:::-;1671:64:3;1499:11:9;1511:26;433:3;1511:15;:26;:::i;:::-;1499:39;;;;;;;;;;;;;3820:25:10;;3808:2;3793:18;;3674:177;1499:39:9;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;1567:2:9;;:20;;-1:-1:-1;;;1567:20:9;;:2;;;;-1:-1:-1;;;;;1567:2:9;;-1:-1:-1;1567:14:9;;-1:-1:-1;1567:20:9;;1582:4;;1567:20;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;1567:20:9;;;;;;;;;;;;:::i;:::-;-1:-1:-1;1548:39:9;-1:-1:-1;1597:24:9;1548:39;1597:10;:24::i;:::-;1330:298;;1296:332::o;1031:259::-;1671:64:3;1079:11:9;1109:10;1118:1;433:3;1109:10;:::i;:::-;1091:28;;:15;:28;:::i;:::-;1079:41;;;;;;;;;;;;;3820:25:10;;3808:2;3793:18;;3674:177;1079:41:9;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;1130:2;;;;;;;;;-1:-1:-1;;;;;1130:2:9;-1:-1:-1;;;;;1130:18:9;;:20;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;1160:16;1171:4;1160:10;:16::i;:::-;1671:64:3;1186:11:9;1216:10;1225:1;433:3;1216:10;:::i;:::-;1198:28;;:15;:28;:::i;:::-;1186:41;;;;;;;;;;;;;3820:25:10;;3808:2;3793:18;;3674:177;1186:41:9;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;1237:2;;;;;;;;;-1:-1:-1;;;;;1237:2:9;-1:-1:-1;;;;;1237:18:9;;:20;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;1267:16;1278:4;1267:10;:16::i;1634:182::-;1680:22;;;;;;;;;:17;:22;;1671:64:3;1712:11:9;1724:26;433:3;1724:15;:26;:::i;:::-;1712:39;;;;;;;;;;;;;3820:25:10;;3808:2;3793:18;;3674:177;1712:39:9;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;1761:2:9;;:22;;-1:-1:-1;;;1761:22:9;;:2;;;;-1:-1:-1;;;;;1761:2:9;;-1:-1:-1;1761:16:9;;-1:-1:-1;1761:22:9;;1778:4;;1761:22;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;1793:16;1804:4;1793:10;:16::i;1819:584:3:-;1853:4;1873:7;;;;;;;1869:528;;;-1:-1:-1;1903:7:3;;;;;;;;1819:584::o;1869:528::-;1941:17;2990:42;2978:55;3059:16;1980:374;;2196:43;;;1671:64;2196:43;;;1422:51:10;;;-1:-1:-1;;;1489:18:10;;;1482:34;2196:43:3;;;;;;;;;1395:18:10;;;2196:43:3;;;-1:-1:-1;;1671:64:3;;2086:175;;2135:34;;2086:175;;;:::i;:::-;;;;-1:-1:-1;;2086:175:3;;;;;;;;;;2047:232;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;2020:259;;;2323:7;2312:27;;;;;;;;;;;;:::i;:::-;2297:42;;2002:352;1980:374;2374:12;1819:584;-1:-1:-1;1819:584:3:o;3615:277::-;3683:1;-1:-1:-1;;;;;3678:6:3;:1;-1:-1:-1;;;;;3678:6:3;;3674:212;;3705:44;;;;;5421:2:10;5403:21;;;5460:2;5440:18;;;5433:30;5499:34;5494:2;5479:18;;5472:62;-1:-1:-1;;;5565:2:10;5550:18;;5543:35;5610:3;5595:19;;5219:401;3705:44:3;;;;;;;;3768:34;;;5837:21:10;;;5894:2;5874:18;;;5867:30;-1:-1:-1;;;5928:2:10;5913:18;;5906:40;-1:-1:-1;;;;;6020:32:10;;6013:4;5998:20;;5991:62;3768:34:3;;;;;;;5978:3:10;3768:34:3;;;3821;;;6276:21:10;;;6333:2;6313:18;;;6306:30;-1:-1:-1;;;6367:2:10;6352:18;;6345:40;-1:-1:-1;;;;;6459:32:10;;6452:4;6437:20;;6430:62;3821:34:3;;;;;;;6417:3:10;3821:34:3;;;3869:6;:4;:6::i;3255:157::-;3315:9;3310:96;;3345:30;;;;;6705:2:10;6687:21;;;6744:2;6724:18;;;6717:30;6783:25;6778:2;6763:18;;6756:53;6841:2;6826:18;;6503:347;3345:30:3;;;;;;;;3389:6;2410:424;2990:42;2978:55;3059:16;2445:359;;2645:67;;;1671:64;2645:67;;;7057:51:10;;;-1:-1:-1;;;7124:18:10;;;7117:34;;;;2705:4:3;7167:18:10;;;7160:34;2482:11:3;;1671:64;2579:43;;7030:18:10;;2645:67:3;;;-1:-1:-1;;2645:67:3;;;;;;;;;;2534:196;;;2645:67;2534:196;;:::i;:::-;;;;-1:-1:-1;;2534:196:3;;;;;;;;;;2499:245;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;;2445:359:3;2813:7;:14;;-1:-1:-1;;2813:14:3;;;;;2410:424::o;-1:-1:-1:-;;;;;;;;:::o;414:184:10:-;484:6;537:2;525:9;516:7;512:23;508:32;505:52;;;553:1;550;543:12;505:52;-1:-1:-1;576:16:10;;414:184;-1:-1:-1;414:184:10:o;603:290::-;673:6;726:2;714:9;705:7;701:23;697:32;694:52;;;742:1;739;732:12;694:52;768:16;;-1:-1:-1;;;;;813:31:10;;803:42;;793:70;;859:1;856;849:12;793:70;882:5;603:290;-1:-1:-1;;;603:290:10:o;1527:258::-;1599:1;1609:113;1623:6;1620:1;1617:13;1609:113;;;1699:11;;;1693:18;1680:11;;;1673:39;1645:2;1638:10;1609:113;;;1740:6;1737:1;1734:13;1731:48;;;-1:-1:-1;;1775:1:10;1757:16;;1750:27;1527:258::o;1790:381::-;1937:2;1926:9;1919:21;1900:4;1969:6;1963:13;2012:6;2007:2;1996:9;1992:18;1985:34;2028:66;2087:6;2082:2;2071:9;2067:18;2062:2;2054:6;2050:15;2028:66;:::i;:::-;2155:2;2134:15;-1:-1:-1;;2130:29:10;2115:45;;;;2162:2;2111:54;;1790:381;-1:-1:-1;;1790:381:10:o;2176:164::-;2252:13;;2301;;2294:21;2284:32;;2274:60;;2330:1;2327;2320:12;2345:127;2406:10;2401:3;2397:20;2394:1;2387:31;2437:4;2434:1;2427:15;2461:4;2458:1;2451:15;2477:962;2562:6;2570;2623:2;2611:9;2602:7;2598:23;2594:32;2591:52;;;2639:1;2636;2629:12;2591:52;2662:37;2689:9;2662:37;:::i;:::-;2652:47;;2743:2;2732:9;2728:18;2722:25;2766:18;2807:2;2799:6;2796:14;2793:34;;;2823:1;2820;2813:12;2793:34;2861:6;2850:9;2846:22;2836:32;;2906:7;2899:4;2895:2;2891:13;2887:27;2877:55;;2928:1;2925;2918:12;2877:55;2957:2;2951:9;2979:2;2975;2972:10;2969:36;;;2985:18;;:::i;:::-;3060:2;3054:9;3028:2;3114:13;;-1:-1:-1;;3110:22:10;;;3134:2;3106:31;3102:40;3090:53;;;3158:18;;;3178:22;;;3155:46;3152:72;;;3204:18;;:::i;:::-;3244:10;3240:2;3233:22;3279:2;3271:6;3264:18;3319:7;3314:2;3309;3305;3301:11;3297:20;3294:33;3291:53;;;3340:1;3337;3330:12;3291:53;3353:55;3405:2;3400;3392:6;3388:15;3383:2;3379;3375:11;3353:55;:::i;:::-;3427:6;3417:16;;;;;;;2477:962;;;;;:::o;3444:225::-;3484:3;3515:1;3511:6;3508:1;3505:13;3502:136;;;3560:10;3555:3;3551:20;3548:1;3541:31;3595:4;3592:1;3585:15;3623:4;3620:1;3613:15;3502:136;-1:-1:-1;3654:9:10;;3444:225::o;3856:217::-;3896:1;3922;3912:132;;3966:10;3961:3;3957:20;3954:1;3947:31;4001:4;3998:1;3991:15;4029:4;4026:1;4019:15;3912:132;-1:-1:-1;4058:9:10;;3856:217::o;4357:371::-;-1:-1:-1;;;;;;4542:33:10;;4530:46;;4599:13;;4512:3;;4621:61;4599:13;4671:1;4662:11;;4655:4;4643:17;;4621:61;:::i;:::-;4702:16;;;;4720:1;4698:24;;4357:371;-1:-1:-1;;;4357:371:10:o;4733:274::-;4862:3;4900:6;4894:13;4916:53;4962:6;4957:3;4950:4;4942:6;4938:17;4916:53;:::i;:::-;4985:16;;;;;4733:274;-1:-1:-1;;4733:274:10:o;5012:202::-;5079:6;5132:2;5120:9;5111:7;5107:23;5103:32;5100:52;;;5148:1;5145;5138:12;5100:52;5171:37;5198:9;5171:37;:::i", - "linkReferences": {} - }, - "ast": { - "absolutePath": "/mnt/c/Users/PizzaHi5/Documents/CreatorDAO/CreatorDAO/test/AssetCreation.t.sol", - "id": 2979, - "exportedSymbols": { - "Address": [ - 2557 - ], - "AssetCreation": [ - 2768 - ], - "AssetCreationTest": [ - 2978 - ], - "CheatCodes": [ - 2778 - ], - "DSTest": [ - 1844 - ], - "IERC20": [ - 1922 - ], - "KeeperBase": [ - 29 - ], - "KeeperCompatible": [ - 38 - ], - "KeeperCompatibleInterface": [ - 57 - ], - "SafeERC20": [ - 2146 - ], - "TokenTimelock": [ - 2262 - ] - }, - "nodeType": "SourceUnit", - "src": "39:1780:9", - "nodes": [ - { - "id": 2770, - "nodeType": "PragmaDirective", - "src": "39:24:9", - "literals": [ - "solidity", - "^", - "0.8", - ".13" - ] - }, - { - "id": 2771, - "nodeType": "ImportDirective", - "src": "65:30:9", - "absolutePath": "/mnt/c/Users/PizzaHi5/Documents/CreatorDAO/CreatorDAO/lib/forge-std/lib/ds-test/src/test.sol", - "file": "ds-test/src/test.sol", - "nameLocation": "-1:-1:-1", - "scope": 2979, - "sourceUnit": 1845, - "symbolAliases": [], - "unitAlias": "" - }, - { - "id": 2772, - "nodeType": "ImportDirective", - "src": "96:36:9", - "absolutePath": "/mnt/c/Users/PizzaHi5/Documents/CreatorDAO/CreatorDAO/src/AssetCreationr1.sol", - "file": "../src/AssetCreationr1.sol", - "nameLocation": "-1:-1:-1", - "scope": 2979, - "sourceUnit": 2769, - "symbolAliases": [], - "unitAlias": "" - }, - { - "id": 2778, - "nodeType": "ContractDefinition", - "src": "134:61:9", - "nodes": [ - { - "id": 2777, - "nodeType": "FunctionDefinition", - "src": "161:32:9", - "functionSelector": "e5d6bf02", - "implemented": false, - "kind": "function", - "modifiers": [], - "name": "warp", - "nameLocation": "170:4:9", - "parameters": { - "id": 2775, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 2774, - "mutability": "mutable", - "name": "", - "nameLocation": "-1:-1:-1", - "nodeType": "VariableDeclaration", - "scope": 2777, - "src": "175:7:9", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 2773, - "name": "uint256", - "nodeType": "ElementaryTypeName", - "src": "175:7:9", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "visibility": "internal" - } - ], - "src": "174:9:9" - }, - "returnParameters": { - "id": 2776, - "nodeType": "ParameterList", - "parameters": [], - "src": "192:0:9" - }, - "scope": 2778, - "stateMutability": "nonpayable", - "virtual": false, - "visibility": "external" - } - ], - "abstract": false, - "baseContracts": [], - "canonicalName": "CheatCodes", - "contractDependencies": [], - "contractKind": "interface", - "fullyImplemented": false, - "linearizedBaseContracts": [ - 2778 - ], - "name": "CheatCodes", - "nameLocation": "144:10:9", - "scope": 2979, - "usedErrors": [] - }, - { - "id": 2978, - "nodeType": "ContractDefinition", - "src": "197:1621:9", - "nodes": [ - { - "id": 2786, - "nodeType": "VariableDeclaration", - "src": "240:53:9", - "constant": true, - "mutability": "constant", - "name": "cheats", - "nameLocation": "260:6:9", - "scope": 2978, - "stateVariable": true, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_contract$_CheatCodes_$2778", - "typeString": "contract CheatCodes" - }, - "typeName": { - "id": 2782, - "nodeType": "UserDefinedTypeName", - "pathNode": { - "id": 2781, - "name": "CheatCodes", - "nodeType": "IdentifierPath", - "referencedDeclaration": 2778, - "src": "240:10:9" - }, - "referencedDeclaration": 2778, - "src": "240:10:9", - "typeDescriptions": { - "typeIdentifier": "t_contract$_CheatCodes_$2778", - "typeString": "contract CheatCodes" - } - }, - "value": { - "arguments": [ - { - "id": 2784, - "name": "HEVM_ADDRESS", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 165, - "src": "280:12:9", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_address", - "typeString": "address" - } - ], - "id": 2783, - "name": "CheatCodes", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2778, - "src": "269:10:9", - "typeDescriptions": { - "typeIdentifier": "t_type$_t_contract$_CheatCodes_$2778_$", - "typeString": "type(contract CheatCodes)" - } - }, - "id": 2785, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "typeConversion", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "269:24:9", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_contract$_CheatCodes_$2778", - "typeString": "contract CheatCodes" - } - }, - "visibility": "internal" - }, - { - "id": 2789, - "nodeType": "VariableDeclaration", - "src": "300:24:9", - "constant": false, - "mutability": "mutable", - "name": "eg", - "nameLocation": "322:2:9", - "scope": 2978, - "stateVariable": true, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_contract$_AssetCreation_$2768", - "typeString": "contract AssetCreation" - }, - "typeName": { - "id": 2788, - "nodeType": "UserDefinedTypeName", - "pathNode": { - "id": 2787, - "name": "AssetCreation", - "nodeType": "IdentifierPath", - "referencedDeclaration": 2768, - "src": "300:13:9" - }, - "referencedDeclaration": 2768, - "src": "300:13:9", - "typeDescriptions": { - "typeIdentifier": "t_contract$_AssetCreation_$2768", - "typeString": "contract AssetCreation" - } - }, - "visibility": "private" - }, - { - "id": 2792, - "nodeType": "VariableDeclaration", - "src": "331:27:9", - "constant": true, - "mutability": "constant", - "name": "amount", - "nameLocation": "348:6:9", - "scope": 2978, - "stateVariable": true, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 2790, - "name": "uint256", - "nodeType": "ElementaryTypeName", - "src": "331:7:9", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "value": { - "hexValue": "30", - "id": 2791, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "number", - "lValueRequested": false, - "nodeType": "Literal", - "src": "357:1:9", - "typeDescriptions": { - "typeIdentifier": "t_rational_0_by_1", - "typeString": "int_const 0" - }, - "value": "0" - }, - "visibility": "internal" - }, - { - "id": 2795, - "nodeType": "VariableDeclaration", - "src": "364:35:9", - "constant": true, - "mutability": "constant", - "name": "raisedAmount", - "nameLocation": "381:12:9", - "scope": 2978, - "stateVariable": true, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 2793, - "name": "uint256", - "nodeType": "ElementaryTypeName", - "src": "364:7:9", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "value": { - "hexValue": "333030", - "id": 2794, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "number", - "lValueRequested": false, - "nodeType": "Literal", - "src": "396:3:9", - "typeDescriptions": { - "typeIdentifier": "t_rational_300_by_1", - "typeString": "int_const 300" - }, - "value": "300" - }, - "visibility": "internal" - }, - { - "id": 2798, - "nodeType": "VariableDeclaration", - "src": "405:31:9", - "constant": true, - "mutability": "constant", - "name": "duration", - "nameLocation": "422:8:9", - "scope": 2978, - "stateVariable": true, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 2796, - "name": "uint256", - "nodeType": "ElementaryTypeName", - "src": "405:7:9", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "value": { - "hexValue": "333030", - "id": 2797, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "number", - "lValueRequested": false, - "nodeType": "Literal", - "src": "433:3:9", - "typeDescriptions": { - "typeIdentifier": "t_rational_300_by_1", - "typeString": "int_const 300" - }, - "value": "300" - }, - "visibility": "internal" - }, - { - "id": 2801, - "nodeType": "VariableDeclaration", - "src": "442:64:9", - "constant": false, - "functionSelector": "4f8632ba", - "mutability": "mutable", - "name": "user", - "nameLocation": "457:4:9", - "scope": 2978, - "stateVariable": true, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "typeName": { - "id": 2799, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "442:7:9", - "stateMutability": "nonpayable", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "value": { - "hexValue": "307865436636643230353434443065383463613341623638334630333934313538453663373565416145", - "id": 2800, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "number", - "lValueRequested": false, - "nodeType": "Literal", - "src": "464:42:9", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "value": "0xeCf6d20544D0e84ca3Ab683F0394158E6c75eAaE" - }, - "visibility": "public" - }, - { - "id": 2803, - "nodeType": "VariableDeclaration", - "src": "532:23:9", - "constant": false, - "mutability": "mutable", - "name": "creator", - "nameLocation": "548:7:9", - "scope": 2978, - "stateVariable": true, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "typeName": { - "id": 2802, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "532:7:9", - "stateMutability": "nonpayable", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "visibility": "private" - }, - { - "id": 2828, - "nodeType": "FunctionDefinition", - "src": "562:198:9", - "body": { - "id": 2827, - "nodeType": "Block", - "src": "586:174:9", - "statements": [ - { - "expression": { - "id": 2814, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftHandSide": { - "id": 2806, - "name": "eg", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2789, - "src": "596:2:9", - "typeDescriptions": { - "typeIdentifier": "t_contract$_AssetCreation_$2768", - "typeString": "contract AssetCreation" - } - }, - "nodeType": "Assignment", - "operator": "=", - "rightHandSide": { - "arguments": [ - { - "id": 2810, - "name": "amount", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2792, - "src": "619:6:9", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - { - "id": 2811, - "name": "raisedAmount", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2795, - "src": "627:12:9", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - { - "id": 2812, - "name": "user", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2801, - "src": "641:4:9", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - { - "typeIdentifier": "t_address", - "typeString": "address" - } - ], - "id": 2809, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "nodeType": "NewExpression", - "src": "601:17:9", - "typeDescriptions": { - "typeIdentifier": "t_function_creation_nonpayable$_t_uint256_$_t_uint256_$_t_address_$returns$_t_contract$_AssetCreation_$2768_$", - "typeString": "function (uint256,uint256,address) returns (contract AssetCreation)" - }, - "typeName": { - "id": 2808, - "nodeType": "UserDefinedTypeName", - "pathNode": { - "id": 2807, - "name": "AssetCreation", - "nodeType": "IdentifierPath", - "referencedDeclaration": 2768, - "src": "605:13:9" - }, - "referencedDeclaration": 2768, - "src": "605:13:9", - "typeDescriptions": { - "typeIdentifier": "t_contract$_AssetCreation_$2768", - "typeString": "contract AssetCreation" - } - } - }, - "id": 2813, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "601:45:9", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_contract$_AssetCreation_$2768", - "typeString": "contract AssetCreation" - } - }, - "src": "596:50:9", - "typeDescriptions": { - "typeIdentifier": "t_contract$_AssetCreation_$2768", - "typeString": "contract AssetCreation" - } - }, - "id": 2815, - "nodeType": "ExpressionStatement", - "src": "596:50:9" - }, - { - "expression": { - "id": 2818, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftHandSide": { - "id": 2816, - "name": "creator", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2803, - "src": "656:7:9", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "nodeType": "Assignment", - "operator": "=", - "rightHandSide": { - "hexValue": "307831323334353637383930313233343536373839303132333435363738393031323334353637383930", - "id": 2817, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "number", - "lValueRequested": false, - "nodeType": "Literal", - "src": "666:42:9", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "value": "0x1234567890123456789012345678901234567890" - }, - "src": "656:52:9", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "id": 2819, - "nodeType": "ExpressionStatement", - "src": "656:52:9" - }, - { - "expression": { - "arguments": [ - { - "id": 2823, - "name": "creator", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2803, - "src": "735:7:9", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - { - "id": 2824, - "name": "duration", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2798, - "src": "744:8:9", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_address", - "typeString": "address" - }, - { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - ], - "expression": { - "id": 2820, - "name": "eg", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2789, - "src": "718:2:9", - "typeDescriptions": { - "typeIdentifier": "t_contract$_AssetCreation_$2768", - "typeString": "contract AssetCreation" - } - }, - "id": 2822, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberName": "startContract", - "nodeType": "MemberAccess", - "referencedDeclaration": 2650, - "src": "718:16:9", - "typeDescriptions": { - "typeIdentifier": "t_function_external_nonpayable$_t_address_$_t_uint256_$returns$__$", - "typeString": "function (address,uint256) external" - } - }, - "id": 2825, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "718:35:9", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 2826, - "nodeType": "ExpressionStatement", - "src": "718:35:9" - } - ] - }, - "functionSelector": "0a9254e4", - "implemented": true, - "kind": "function", - "modifiers": [], - "name": "setUp", - "nameLocation": "571:5:9", - "parameters": { - "id": 2804, - "nodeType": "ParameterList", - "parameters": [], - "src": "576:2:9" - }, - "returnParameters": { - "id": 2805, - "nodeType": "ParameterList", - "parameters": [], - "src": "586:0:9" - }, - "scope": 2978, - "stateMutability": "nonpayable", - "virtual": false, - "visibility": "public" - }, - { - "id": 2839, - "nodeType": "FunctionDefinition", - "src": "766:87:9", - "body": { - "id": 2838, - "nodeType": "Block", - "src": "802:51:9", - "statements": [ - { - "expression": { - "arguments": [ - { - "id": 2832, - "name": "creator", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2803, - "src": "821:7:9", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - { - "arguments": [], - "expression": { - "argumentTypes": [], - "expression": { - "id": 2833, - "name": "eg", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2789, - "src": "830:2:9", - "typeDescriptions": { - "typeIdentifier": "t_contract$_AssetCreation_$2768", - "typeString": "contract AssetCreation" - } - }, - "id": 2834, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberName": "getCreator", - "nodeType": "MemberAccess", - "referencedDeclaration": 2684, - "src": "830:13:9", - "typeDescriptions": { - "typeIdentifier": "t_function_external_view$__$returns$_t_address_$", - "typeString": "function () view external returns (address)" - } - }, - "id": 2835, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "830:15:9", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_address", - "typeString": "address" - }, - { - "typeIdentifier": "t_address", - "typeString": "address" - } - ], - "id": 2831, - "name": "assertEq", - "nodeType": "Identifier", - "overloadedDeclarations": [ - 378, - 403, - 433, - 458, - 517, - 542, - 572, - 597, - 1697, - 1732 - ], - "referencedDeclaration": 378, - "src": "812:8:9", - "typeDescriptions": { - "typeIdentifier": "t_function_internal_nonpayable$_t_address_$_t_address_$returns$__$", - "typeString": "function (address,address)" - } - }, - "id": 2836, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "812:34:9", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 2837, - "nodeType": "ExpressionStatement", - "src": "812:34:9" - } - ] - }, - "functionSelector": "2e9b6509", - "implemented": true, - "kind": "function", - "modifiers": [], - "name": "testStartContract", - "nameLocation": "775:17:9", - "parameters": { - "id": 2829, - "nodeType": "ParameterList", - "parameters": [], - "src": "792:2:9" - }, - "returnParameters": { - "id": 2830, - "nodeType": "ParameterList", - "parameters": [], - "src": "802:0:9" - }, - "scope": 2978, - "stateMutability": "nonpayable", - "virtual": false, - "visibility": "public" - }, - { - "id": 2850, - "nodeType": "FunctionDefinition", - "src": "859:79:9", - "body": { - "id": 2849, - "nodeType": "Block", - "src": "893:45:9", - "statements": [ - { - "expression": { - "arguments": [ - { - "id": 2843, - "name": "user", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2801, - "src": "912:4:9", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - { - "arguments": [], - "expression": { - "argumentTypes": [], - "expression": { - "id": 2844, - "name": "eg", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2789, - "src": "918:2:9", - "typeDescriptions": { - "typeIdentifier": "t_contract$_AssetCreation_$2768", - "typeString": "contract AssetCreation" - } - }, - "id": 2845, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberName": "getUser", - "nodeType": "MemberAccess", - "referencedDeclaration": 2676, - "src": "918:10:9", - "typeDescriptions": { - "typeIdentifier": "t_function_external_view$__$returns$_t_address_$", - "typeString": "function () view external returns (address)" - } - }, - "id": 2846, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "918:12:9", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_address", - "typeString": "address" - }, - { - "typeIdentifier": "t_address", - "typeString": "address" - } - ], - "id": 2842, - "name": "assertEq", - "nodeType": "Identifier", - "overloadedDeclarations": [ - 378, - 403, - 433, - 458, - 517, - 542, - 572, - 597, - 1697, - 1732 - ], - "referencedDeclaration": 378, - "src": "903:8:9", - "typeDescriptions": { - "typeIdentifier": "t_function_internal_nonpayable$_t_address_$_t_address_$returns$__$", - "typeString": "function (address,address)" - } - }, - "id": 2847, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "903:28:9", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 2848, - "nodeType": "ExpressionStatement", - "src": "903:28:9" - } - ] - }, - "functionSelector": "088f0a48", - "implemented": true, - "kind": "function", - "modifiers": [], - "name": "testCheckIfUser", - "nameLocation": "868:15:9", - "parameters": { - "id": 2840, - "nodeType": "ParameterList", - "parameters": [], - "src": "883:2:9" - }, - "returnParameters": { - "id": 2841, - "nodeType": "ParameterList", - "parameters": [], - "src": "893:0:9" - }, - "scope": 2978, - "stateMutability": "nonpayable", - "virtual": false, - "visibility": "public" - }, - { - "id": 2859, - "nodeType": "FunctionDefinition", - "src": "944:81:9", - "body": { - "id": 2858, - "nodeType": "Block", - "src": "985:40:9", - "statements": [ - { - "expression": { - "arguments": [], - "expression": { - "argumentTypes": [], - "expression": { - "id": 2853, - "name": "eg", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2789, - "src": "995:2:9", - "typeDescriptions": { - "typeIdentifier": "t_contract$_AssetCreation_$2768", - "typeString": "contract AssetCreation" - } - }, - "id": 2855, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberName": "checkTimeRemaining", - "nodeType": "MemberAccess", - "referencedDeclaration": 2695, - "src": "995:21:9", - "typeDescriptions": { - "typeIdentifier": "t_function_external_view$__$returns$_t_uint256_$", - "typeString": "function () view external returns (uint256)" - } - }, - "id": 2856, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "995:23:9", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "id": 2857, - "nodeType": "ExpressionStatement", - "src": "995:23:9" - } - ] - }, - "functionSelector": "00c14119", - "implemented": true, - "kind": "function", - "modifiers": [], - "name": "testTimeRemaining", - "nameLocation": "953:17:9", - "parameters": { - "id": 2851, - "nodeType": "ParameterList", - "parameters": [], - "src": "970:2:9" - }, - "returnParameters": { - "id": 2852, - "nodeType": "ParameterList", - "parameters": [], - "src": "985:0:9" - }, - "scope": 2978, - "stateMutability": "view", - "virtual": false, - "visibility": "public" - }, - { - "id": 2903, - "nodeType": "FunctionDefinition", - "src": "1031:259:9", - "body": { - "id": 2902, - "nodeType": "Block", - "src": "1069:221:9", - "statements": [ - { - "expression": { - "arguments": [ - { - "commonType": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "id": 2870, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "expression": { - "id": 2865, - "name": "block", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": -4, - "src": "1091:5:9", - "typeDescriptions": { - "typeIdentifier": "t_magic_block", - "typeString": "block" - } - }, - "id": 2866, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberName": "timestamp", - "nodeType": "MemberAccess", - "src": "1091:15:9", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "BinaryOperation", - "operator": "+", - "rightExpression": { - "commonType": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "id": 2869, - "isConstant": false, - "isLValue": false, - "isPure": true, - "lValueRequested": false, - "leftExpression": { - "id": 2867, - "name": "duration", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2798, - "src": "1109:8:9", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "BinaryOperation", - "operator": "/", - "rightExpression": { - "hexValue": "33", - "id": 2868, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "number", - "lValueRequested": false, - "nodeType": "Literal", - "src": "1118:1:9", - "typeDescriptions": { - "typeIdentifier": "t_rational_3_by_1", - "typeString": "int_const 3" - }, - "value": "3" - }, - "src": "1109:10:9", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "src": "1091:28:9", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - ], - "expression": { - "id": 2862, - "name": "cheats", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2786, - "src": "1079:6:9", - "typeDescriptions": { - "typeIdentifier": "t_contract$_CheatCodes_$2778", - "typeString": "contract CheatCodes" - } - }, - "id": 2864, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberName": "warp", - "nodeType": "MemberAccess", - "referencedDeclaration": 2777, - "src": "1079:11:9", - "typeDescriptions": { - "typeIdentifier": "t_function_external_nonpayable$_t_uint256_$returns$__$", - "typeString": "function (uint256) external" - } - }, - "id": 2871, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "1079:41:9", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 2872, - "nodeType": "ExpressionStatement", - "src": "1079:41:9" - }, - { - "expression": { - "arguments": [], - "expression": { - "argumentTypes": [], - "expression": { - "id": 2873, - "name": "eg", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2789, - "src": "1130:2:9", - "typeDescriptions": { - "typeIdentifier": "t_contract$_AssetCreation_$2768", - "typeString": "contract AssetCreation" - } - }, - "id": 2875, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberName": "callEndContract", - "nodeType": "MemberAccess", - "referencedDeclaration": 2710, - "src": "1130:18:9", - "typeDescriptions": { - "typeIdentifier": "t_function_external_nonpayable$__$returns$__$", - "typeString": "function () external" - } - }, - "id": 2876, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "1130:20:9", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 2877, - "nodeType": "ExpressionStatement", - "src": "1130:20:9" - }, - { - "expression": { - "arguments": [ - { - "hexValue": "74727565", - "id": 2879, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "bool", - "lValueRequested": false, - "nodeType": "Literal", - "src": "1171:4:9", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - "value": "true" - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - ], - "id": 2878, - "name": "assertTrue", - "nodeType": "Identifier", - "overloadedDeclarations": [ - 327, - 348 - ], - "referencedDeclaration": 327, - "src": "1160:10:9", - "typeDescriptions": { - "typeIdentifier": "t_function_internal_nonpayable$_t_bool_$returns$__$", - "typeString": "function (bool)" - } - }, - "id": 2880, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "1160:16:9", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 2881, - "nodeType": "ExpressionStatement", - "src": "1160:16:9" - }, - { - "expression": { - "arguments": [ - { - "commonType": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "id": 2890, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "expression": { - "id": 2885, - "name": "block", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": -4, - "src": "1198:5:9", - "typeDescriptions": { - "typeIdentifier": "t_magic_block", - "typeString": "block" - } - }, - "id": 2886, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberName": "timestamp", - "nodeType": "MemberAccess", - "src": "1198:15:9", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "BinaryOperation", - "operator": "+", - "rightExpression": { - "commonType": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "id": 2889, - "isConstant": false, - "isLValue": false, - "isPure": true, - "lValueRequested": false, - "leftExpression": { - "id": 2887, - "name": "duration", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2798, - "src": "1216:8:9", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "BinaryOperation", - "operator": "/", - "rightExpression": { - "hexValue": "32", - "id": 2888, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "number", - "lValueRequested": false, - "nodeType": "Literal", - "src": "1225:1:9", - "typeDescriptions": { - "typeIdentifier": "t_rational_2_by_1", - "typeString": "int_const 2" - }, - "value": "2" - }, - "src": "1216:10:9", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "src": "1198:28:9", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - ], - "expression": { - "id": 2882, - "name": "cheats", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2786, - "src": "1186:6:9", - "typeDescriptions": { - "typeIdentifier": "t_contract$_CheatCodes_$2778", - "typeString": "contract CheatCodes" - } - }, - "id": 2884, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberName": "warp", - "nodeType": "MemberAccess", - "referencedDeclaration": 2777, - "src": "1186:11:9", - "typeDescriptions": { - "typeIdentifier": "t_function_external_nonpayable$_t_uint256_$returns$__$", - "typeString": "function (uint256) external" - } - }, - "id": 2891, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "1186:41:9", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 2892, - "nodeType": "ExpressionStatement", - "src": "1186:41:9" - }, - { - "expression": { - "arguments": [], - "expression": { - "argumentTypes": [], - "expression": { - "id": 2893, - "name": "eg", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2789, - "src": "1237:2:9", - "typeDescriptions": { - "typeIdentifier": "t_contract$_AssetCreation_$2768", - "typeString": "contract AssetCreation" - } - }, - "id": 2895, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberName": "callEndContract", - "nodeType": "MemberAccess", - "referencedDeclaration": 2710, - "src": "1237:18:9", - "typeDescriptions": { - "typeIdentifier": "t_function_external_nonpayable$__$returns$__$", - "typeString": "function () external" - } - }, - "id": 2896, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "1237:20:9", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 2897, - "nodeType": "ExpressionStatement", - "src": "1237:20:9" - }, - { - "expression": { - "arguments": [ - { - "hexValue": "74727565", - "id": 2899, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "bool", - "lValueRequested": false, - "nodeType": "Literal", - "src": "1278:4:9", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - "value": "true" - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - ], - "id": 2898, - "name": "assertTrue", - "nodeType": "Identifier", - "overloadedDeclarations": [ - 327, - 348 - ], - "referencedDeclaration": 327, - "src": "1267:10:9", - "typeDescriptions": { - "typeIdentifier": "t_function_internal_nonpayable$_t_bool_$returns$__$", - "typeString": "function (bool)" - } - }, - "id": 2900, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "1267:16:9", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 2901, - "nodeType": "ExpressionStatement", - "src": "1267:16:9" - } - ] - }, - "functionSelector": "68465062", - "implemented": true, - "kind": "function", - "modifiers": [], - "name": "testCallEndContract", - "nameLocation": "1040:19:9", - "parameters": { - "id": 2860, - "nodeType": "ParameterList", - "parameters": [], - "src": "1059:2:9" - }, - "returnParameters": { - "id": 2861, - "nodeType": "ParameterList", - "parameters": [], - "src": "1069:0:9" - }, - "scope": 2978, - "stateMutability": "nonpayable", - "virtual": false, - "visibility": "public" - }, - { - "id": 2950, - "nodeType": "FunctionDefinition", - "src": "1296:332:9", - "body": { - "id": 2949, - "nodeType": "Block", - "src": "1330:298:9", - "statements": [ - { - "assignments": [ - 2907 - ], - "declarations": [ - { - "constant": false, - "id": 2907, - "mutability": "mutable", - "name": "data", - "nameLocation": "1353:4:9", - "nodeType": "VariableDeclaration", - "scope": 2949, - "src": "1340:17:9", - "stateVariable": false, - "storageLocation": "memory", - "typeDescriptions": { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes" - }, - "typeName": { - "id": 2906, - "name": "bytes", - "nodeType": "ElementaryTypeName", - "src": "1340:5:9", - "typeDescriptions": { - "typeIdentifier": "t_bytes_storage_ptr", - "typeString": "bytes" - } - }, - "visibility": "internal" - } - ], - "id": 2909, - "initialValue": { - "hexValue": "", - "id": 2908, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "string", - "lValueRequested": false, - "nodeType": "Literal", - "src": "1360:2:9", - "typeDescriptions": { - "typeIdentifier": "t_stringliteral_c5d2460186f7233c927e7db2dcc703c0e500b653ca82273b7bfad8045d85a470", - "typeString": "literal_string \"\"" - }, - "value": "" - }, - "nodeType": "VariableDeclarationStatement", - "src": "1340:22:9" - }, - { - "assignments": [ - 2911 - ], - "declarations": [ - { - "constant": false, - "id": 2911, - "mutability": "mutable", - "name": "upkeepNeeded", - "nameLocation": "1377:12:9", - "nodeType": "VariableDeclaration", - "scope": 2949, - "src": "1372:17:9", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - "typeName": { - "id": 2910, - "name": "bool", - "nodeType": "ElementaryTypeName", - "src": "1372:4:9", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "visibility": "internal" - } - ], - "id": 2913, - "initialValue": { - "hexValue": "66616c7365", - "id": 2912, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "bool", - "lValueRequested": false, - "nodeType": "Literal", - "src": "1392:5:9", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - "value": "false" - }, - "nodeType": "VariableDeclarationStatement", - "src": "1372:25:9" - }, - { - "expression": { - "id": 2920, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftHandSide": { - "components": [ - { - "id": 2914, - "name": "upkeepNeeded", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2911, - "src": "1408:12:9", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - null - ], - "id": 2915, - "isConstant": false, - "isInlineArray": false, - "isLValue": true, - "isPure": false, - "lValueRequested": true, - "nodeType": "TupleExpression", - "src": "1407:16:9", - "typeDescriptions": { - "typeIdentifier": "t_tuple$_t_bool_$__$", - "typeString": "tuple(bool,)" - } - }, - "nodeType": "Assignment", - "operator": "=", - "rightHandSide": { - "arguments": [ - { - "id": 2918, - "name": "data", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2907, - "src": "1441:4:9", - "typeDescriptions": { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes memory" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes memory" - } - ], - "expression": { - "id": 2916, - "name": "eg", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2789, - "src": "1426:2:9", - "typeDescriptions": { - "typeIdentifier": "t_contract$_AssetCreation_$2768", - "typeString": "contract AssetCreation" - } - }, - "id": 2917, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberName": "checkUpkeep", - "nodeType": "MemberAccess", - "referencedDeclaration": 2728, - "src": "1426:14:9", - "typeDescriptions": { - "typeIdentifier": "t_function_external_view$_t_bytes_memory_ptr_$returns$_t_bool_$_t_bytes_memory_ptr_$", - "typeString": "function (bytes memory) view external returns (bool,bytes memory)" - } - }, - "id": 2919, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "1426:20:9", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_tuple$_t_bool_$_t_bytes_memory_ptr_$", - "typeString": "tuple(bool,bytes memory)" - } - }, - "src": "1407:39:9", - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 2921, - "nodeType": "ExpressionStatement", - "src": "1407:39:9" - }, - { - "expression": { - "arguments": [ - { - "commonType": { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - "id": 2925, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "id": 2923, - "name": "upkeepNeeded", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2911, - "src": "1467:12:9", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "nodeType": "BinaryOperation", - "operator": "==", - "rightExpression": { - "hexValue": "66616c7365", - "id": 2924, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "bool", - "lValueRequested": false, - "nodeType": "Literal", - "src": "1483:5:9", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - "value": "false" - }, - "src": "1467:21:9", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - ], - "id": 2922, - "name": "assertTrue", - "nodeType": "Identifier", - "overloadedDeclarations": [ - 327, - 348 - ], - "referencedDeclaration": 327, - "src": "1456:10:9", - "typeDescriptions": { - "typeIdentifier": "t_function_internal_nonpayable$_t_bool_$returns$__$", - "typeString": "function (bool)" - } - }, - "id": 2926, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "1456:33:9", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 2927, - "nodeType": "ExpressionStatement", - "src": "1456:33:9" - }, - { - "expression": { - "arguments": [ - { - "commonType": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "id": 2934, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "expression": { - "id": 2931, - "name": "block", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": -4, - "src": "1511:5:9", - "typeDescriptions": { - "typeIdentifier": "t_magic_block", - "typeString": "block" - } - }, - "id": 2932, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberName": "timestamp", - "nodeType": "MemberAccess", - "src": "1511:15:9", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "BinaryOperation", - "operator": "+", - "rightExpression": { - "id": 2933, - "name": "duration", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2798, - "src": "1529:8:9", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "src": "1511:26:9", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - ], - "expression": { - "id": 2928, - "name": "cheats", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2786, - "src": "1499:6:9", - "typeDescriptions": { - "typeIdentifier": "t_contract$_CheatCodes_$2778", - "typeString": "contract CheatCodes" - } - }, - "id": 2930, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberName": "warp", - "nodeType": "MemberAccess", - "referencedDeclaration": 2777, - "src": "1499:11:9", - "typeDescriptions": { - "typeIdentifier": "t_function_external_nonpayable$_t_uint256_$returns$__$", - "typeString": "function (uint256) external" - } - }, - "id": 2935, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "1499:39:9", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 2936, - "nodeType": "ExpressionStatement", - "src": "1499:39:9" - }, - { - "expression": { - "id": 2943, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftHandSide": { - "components": [ - { - "id": 2937, - "name": "upkeepNeeded", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2911, - "src": "1549:12:9", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - null - ], - "id": 2938, - "isConstant": false, - "isInlineArray": false, - "isLValue": true, - "isPure": false, - "lValueRequested": true, - "nodeType": "TupleExpression", - "src": "1548:16:9", - "typeDescriptions": { - "typeIdentifier": "t_tuple$_t_bool_$__$", - "typeString": "tuple(bool,)" - } - }, - "nodeType": "Assignment", - "operator": "=", - "rightHandSide": { - "arguments": [ - { - "id": 2941, - "name": "data", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2907, - "src": "1582:4:9", - "typeDescriptions": { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes memory" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes memory" - } - ], - "expression": { - "id": 2939, - "name": "eg", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2789, - "src": "1567:2:9", - "typeDescriptions": { - "typeIdentifier": "t_contract$_AssetCreation_$2768", - "typeString": "contract AssetCreation" - } - }, - "id": 2940, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberName": "checkUpkeep", - "nodeType": "MemberAccess", - "referencedDeclaration": 2728, - "src": "1567:14:9", - "typeDescriptions": { - "typeIdentifier": "t_function_external_view$_t_bytes_memory_ptr_$returns$_t_bool_$_t_bytes_memory_ptr_$", - "typeString": "function (bytes memory) view external returns (bool,bytes memory)" - } - }, - "id": 2942, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "1567:20:9", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_tuple$_t_bool_$_t_bytes_memory_ptr_$", - "typeString": "tuple(bool,bytes memory)" - } - }, - "src": "1548:39:9", - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 2944, - "nodeType": "ExpressionStatement", - "src": "1548:39:9" - }, - { - "expression": { - "arguments": [ - { - "id": 2946, - "name": "upkeepNeeded", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2911, - "src": "1608:12:9", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - ], - "id": 2945, - "name": "assertTrue", - "nodeType": "Identifier", - "overloadedDeclarations": [ - 327, - 348 - ], - "referencedDeclaration": 327, - "src": "1597:10:9", - "typeDescriptions": { - "typeIdentifier": "t_function_internal_nonpayable$_t_bool_$returns$__$", - "typeString": "function (bool)" - } - }, - "id": 2947, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "1597:24:9", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 2948, - "nodeType": "ExpressionStatement", - "src": "1597:24:9" - } - ] - }, - "functionSelector": "60932b3d", - "implemented": true, - "kind": "function", - "modifiers": [], - "name": "testCheckUpkeep", - "nameLocation": "1305:15:9", - "parameters": { - "id": 2904, - "nodeType": "ParameterList", - "parameters": [], - "src": "1320:2:9" - }, - "returnParameters": { - "id": 2905, - "nodeType": "ParameterList", - "parameters": [], - "src": "1330:0:9" - }, - "scope": 2978, - "stateMutability": "nonpayable", - "virtual": false, - "visibility": "public" - }, - { - "id": 2977, - "nodeType": "FunctionDefinition", - "src": "1634:182:9", - "body": { - "id": 2976, - "nodeType": "Block", - "src": "1670:146:9", - "statements": [ - { - "assignments": [ - 2954 - ], - "declarations": [ - { - "constant": false, - "id": 2954, - "mutability": "mutable", - "name": "data", - "nameLocation": "1693:4:9", - "nodeType": "VariableDeclaration", - "scope": 2976, - "src": "1680:17:9", - "stateVariable": false, - "storageLocation": "memory", - "typeDescriptions": { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes" - }, - "typeName": { - "id": 2953, - "name": "bytes", - "nodeType": "ElementaryTypeName", - "src": "1680:5:9", - "typeDescriptions": { - "typeIdentifier": "t_bytes_storage_ptr", - "typeString": "bytes" - } - }, - "visibility": "internal" - } - ], - "id": 2956, - "initialValue": { - "hexValue": "", - "id": 2955, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "string", - "lValueRequested": false, - "nodeType": "Literal", - "src": "1700:2:9", - "typeDescriptions": { - "typeIdentifier": "t_stringliteral_c5d2460186f7233c927e7db2dcc703c0e500b653ca82273b7bfad8045d85a470", - "typeString": "literal_string \"\"" - }, - "value": "" - }, - "nodeType": "VariableDeclarationStatement", - "src": "1680:22:9" - }, - { - "expression": { - "arguments": [ - { - "commonType": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "id": 2963, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "expression": { - "id": 2960, - "name": "block", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": -4, - "src": "1724:5:9", - "typeDescriptions": { - "typeIdentifier": "t_magic_block", - "typeString": "block" - } - }, - "id": 2961, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberName": "timestamp", - "nodeType": "MemberAccess", - "src": "1724:15:9", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "BinaryOperation", - "operator": "+", - "rightExpression": { - "id": 2962, - "name": "duration", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2798, - "src": "1742:8:9", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "src": "1724:26:9", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - ], - "expression": { - "id": 2957, - "name": "cheats", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2786, - "src": "1712:6:9", - "typeDescriptions": { - "typeIdentifier": "t_contract$_CheatCodes_$2778", - "typeString": "contract CheatCodes" - } - }, - "id": 2959, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberName": "warp", - "nodeType": "MemberAccess", - "referencedDeclaration": 2777, - "src": "1712:11:9", - "typeDescriptions": { - "typeIdentifier": "t_function_external_nonpayable$_t_uint256_$returns$__$", - "typeString": "function (uint256) external" - } - }, - "id": 2964, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "1712:39:9", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 2965, - "nodeType": "ExpressionStatement", - "src": "1712:39:9" - }, - { - "expression": { - "arguments": [ - { - "id": 2969, - "name": "data", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2954, - "src": "1778:4:9", - "typeDescriptions": { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes memory" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes memory" - } - ], - "expression": { - "id": 2966, - "name": "eg", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2789, - "src": "1761:2:9", - "typeDescriptions": { - "typeIdentifier": "t_contract$_AssetCreation_$2768", - "typeString": "contract AssetCreation" - } - }, - "id": 2968, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberName": "performUpkeep", - "nodeType": "MemberAccess", - "referencedDeclaration": 2745, - "src": "1761:16:9", - "typeDescriptions": { - "typeIdentifier": "t_function_external_nonpayable$_t_bytes_memory_ptr_$returns$__$", - "typeString": "function (bytes memory) external" - } - }, - "id": 2970, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "1761:22:9", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 2971, - "nodeType": "ExpressionStatement", - "src": "1761:22:9" - }, - { - "expression": { - "arguments": [ - { - "hexValue": "74727565", - "id": 2973, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "bool", - "lValueRequested": false, - "nodeType": "Literal", - "src": "1804:4:9", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - "value": "true" - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - ], - "id": 2972, - "name": "assertTrue", - "nodeType": "Identifier", - "overloadedDeclarations": [ - 327, - 348 - ], - "referencedDeclaration": 327, - "src": "1793:10:9", - "typeDescriptions": { - "typeIdentifier": "t_function_internal_nonpayable$_t_bool_$returns$__$", - "typeString": "function (bool)" - } - }, - "id": 2974, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "1793:16:9", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 2975, - "nodeType": "ExpressionStatement", - "src": "1793:16:9" - } - ] - }, - "functionSelector": "88f7f135", - "implemented": true, - "kind": "function", - "modifiers": [], - "name": "testPerformUpkeep", - "nameLocation": "1643:17:9", - "parameters": { - "id": 2951, - "nodeType": "ParameterList", - "parameters": [], - "src": "1660:2:9" - }, - "returnParameters": { - "id": 2952, - "nodeType": "ParameterList", - "parameters": [], - "src": "1670:0:9" - }, - "scope": 2978, - "stateMutability": "nonpayable", - "virtual": false, - "visibility": "public" - } - ], - "abstract": false, - "baseContracts": [ - { - "baseName": { - "id": 2779, - "name": "DSTest", - "nodeType": "IdentifierPath", - "referencedDeclaration": 1844, - "src": "227:6:9" - }, - "id": 2780, - "nodeType": "InheritanceSpecifier", - "src": "227:6:9" - } - ], - "canonicalName": "AssetCreationTest", - "contractDependencies": [ - 2768 - ], - "contractKind": "contract", - "fullyImplemented": true, - "linearizedBaseContracts": [ - 2978, - 1844 - ], - "name": "AssetCreationTest", - "nameLocation": "206:17:9", - "scope": 2979, - "usedErrors": [] - } - ], - "license": "UNLICENSED" - } -} \ No newline at end of file diff --git a/out/AssetCreation.t.sol/CheatCodes.json b/out/AssetCreation.t.sol/CheatCodes.json deleted file mode 100644 index ff82f70..0000000 --- a/out/AssetCreation.t.sol/CheatCodes.json +++ /dev/null @@ -1,2700 +0,0 @@ -{ - "abi": [ - { - "inputs": [ - { - "internalType": "uint256", - "name": "", - "type": "uint256" - } - ], - "name": "warp", - "outputs": [], - "stateMutability": "nonpayable", - "type": "function" - } - ], - "bytecode": { - "object": "0x", - "sourceMap": "", - "linkReferences": {} - }, - "deployedBytecode": { - "object": "0x", - "sourceMap": "", - "linkReferences": {} - }, - "ast": { - "absolutePath": "/mnt/c/Users/PizzaHi5/Documents/CreatorDAO/CreatorDAO/test/AssetCreation.t.sol", - "id": 2979, - "exportedSymbols": { - "Address": [ - 2557 - ], - "AssetCreation": [ - 2768 - ], - "AssetCreationTest": [ - 2978 - ], - "CheatCodes": [ - 2778 - ], - "DSTest": [ - 1844 - ], - "IERC20": [ - 1922 - ], - "KeeperBase": [ - 29 - ], - "KeeperCompatible": [ - 38 - ], - "KeeperCompatibleInterface": [ - 57 - ], - "SafeERC20": [ - 2146 - ], - "TokenTimelock": [ - 2262 - ] - }, - "nodeType": "SourceUnit", - "src": "39:1780:9", - "nodes": [ - { - "id": 2770, - "nodeType": "PragmaDirective", - "src": "39:24:9", - "literals": [ - "solidity", - "^", - "0.8", - ".13" - ] - }, - { - "id": 2771, - "nodeType": "ImportDirective", - "src": "65:30:9", - "absolutePath": "/mnt/c/Users/PizzaHi5/Documents/CreatorDAO/CreatorDAO/lib/forge-std/lib/ds-test/src/test.sol", - "file": "ds-test/src/test.sol", - "nameLocation": "-1:-1:-1", - "scope": 2979, - "sourceUnit": 1845, - "symbolAliases": [], - "unitAlias": "" - }, - { - "id": 2772, - "nodeType": "ImportDirective", - "src": "96:36:9", - "absolutePath": "/mnt/c/Users/PizzaHi5/Documents/CreatorDAO/CreatorDAO/src/AssetCreationr1.sol", - "file": "../src/AssetCreationr1.sol", - "nameLocation": "-1:-1:-1", - "scope": 2979, - "sourceUnit": 2769, - "symbolAliases": [], - "unitAlias": "" - }, - { - "id": 2778, - "nodeType": "ContractDefinition", - "src": "134:61:9", - "nodes": [ - { - "id": 2777, - "nodeType": "FunctionDefinition", - "src": "161:32:9", - "functionSelector": "e5d6bf02", - "implemented": false, - "kind": "function", - "modifiers": [], - "name": "warp", - "nameLocation": "170:4:9", - "parameters": { - "id": 2775, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 2774, - "mutability": "mutable", - "name": "", - "nameLocation": "-1:-1:-1", - "nodeType": "VariableDeclaration", - "scope": 2777, - "src": "175:7:9", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 2773, - "name": "uint256", - "nodeType": "ElementaryTypeName", - "src": "175:7:9", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "visibility": "internal" - } - ], - "src": "174:9:9" - }, - "returnParameters": { - "id": 2776, - "nodeType": "ParameterList", - "parameters": [], - "src": "192:0:9" - }, - "scope": 2778, - "stateMutability": "nonpayable", - "virtual": false, - "visibility": "external" - } - ], - "abstract": false, - "baseContracts": [], - "canonicalName": "CheatCodes", - "contractDependencies": [], - "contractKind": "interface", - "fullyImplemented": false, - "linearizedBaseContracts": [ - 2778 - ], - "name": "CheatCodes", - "nameLocation": "144:10:9", - "scope": 2979, - "usedErrors": [] - }, - { - "id": 2978, - "nodeType": "ContractDefinition", - "src": "197:1621:9", - "nodes": [ - { - "id": 2786, - "nodeType": "VariableDeclaration", - "src": "240:53:9", - "constant": true, - "mutability": "constant", - "name": "cheats", - "nameLocation": "260:6:9", - "scope": 2978, - "stateVariable": true, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_contract$_CheatCodes_$2778", - "typeString": "contract CheatCodes" - }, - "typeName": { - "id": 2782, - "nodeType": "UserDefinedTypeName", - "pathNode": { - "id": 2781, - "name": "CheatCodes", - "nodeType": "IdentifierPath", - "referencedDeclaration": 2778, - "src": "240:10:9" - }, - "referencedDeclaration": 2778, - "src": "240:10:9", - "typeDescriptions": { - "typeIdentifier": "t_contract$_CheatCodes_$2778", - "typeString": "contract CheatCodes" - } - }, - "value": { - "arguments": [ - { - "id": 2784, - "name": "HEVM_ADDRESS", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 165, - "src": "280:12:9", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_address", - "typeString": "address" - } - ], - "id": 2783, - "name": "CheatCodes", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2778, - "src": "269:10:9", - "typeDescriptions": { - "typeIdentifier": "t_type$_t_contract$_CheatCodes_$2778_$", - "typeString": "type(contract CheatCodes)" - } - }, - "id": 2785, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "typeConversion", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "269:24:9", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_contract$_CheatCodes_$2778", - "typeString": "contract CheatCodes" - } - }, - "visibility": "internal" - }, - { - "id": 2789, - "nodeType": "VariableDeclaration", - "src": "300:24:9", - "constant": false, - "mutability": "mutable", - "name": "eg", - "nameLocation": "322:2:9", - "scope": 2978, - "stateVariable": true, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_contract$_AssetCreation_$2768", - "typeString": "contract AssetCreation" - }, - "typeName": { - "id": 2788, - "nodeType": "UserDefinedTypeName", - "pathNode": { - "id": 2787, - "name": "AssetCreation", - "nodeType": "IdentifierPath", - "referencedDeclaration": 2768, - "src": "300:13:9" - }, - "referencedDeclaration": 2768, - "src": "300:13:9", - "typeDescriptions": { - "typeIdentifier": "t_contract$_AssetCreation_$2768", - "typeString": "contract AssetCreation" - } - }, - "visibility": "private" - }, - { - "id": 2792, - "nodeType": "VariableDeclaration", - "src": "331:27:9", - "constant": true, - "mutability": "constant", - "name": "amount", - "nameLocation": "348:6:9", - "scope": 2978, - "stateVariable": true, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 2790, - "name": "uint256", - "nodeType": "ElementaryTypeName", - "src": "331:7:9", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "value": { - "hexValue": "30", - "id": 2791, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "number", - "lValueRequested": false, - "nodeType": "Literal", - "src": "357:1:9", - "typeDescriptions": { - "typeIdentifier": "t_rational_0_by_1", - "typeString": "int_const 0" - }, - "value": "0" - }, - "visibility": "internal" - }, - { - "id": 2795, - "nodeType": "VariableDeclaration", - "src": "364:35:9", - "constant": true, - "mutability": "constant", - "name": "raisedAmount", - "nameLocation": "381:12:9", - "scope": 2978, - "stateVariable": true, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 2793, - "name": "uint256", - "nodeType": "ElementaryTypeName", - "src": "364:7:9", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "value": { - "hexValue": "333030", - "id": 2794, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "number", - "lValueRequested": false, - "nodeType": "Literal", - "src": "396:3:9", - "typeDescriptions": { - "typeIdentifier": "t_rational_300_by_1", - "typeString": "int_const 300" - }, - "value": "300" - }, - "visibility": "internal" - }, - { - "id": 2798, - "nodeType": "VariableDeclaration", - "src": "405:31:9", - "constant": true, - "mutability": "constant", - "name": "duration", - "nameLocation": "422:8:9", - "scope": 2978, - "stateVariable": true, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 2796, - "name": "uint256", - "nodeType": "ElementaryTypeName", - "src": "405:7:9", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "value": { - "hexValue": "333030", - "id": 2797, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "number", - "lValueRequested": false, - "nodeType": "Literal", - "src": "433:3:9", - "typeDescriptions": { - "typeIdentifier": "t_rational_300_by_1", - "typeString": "int_const 300" - }, - "value": "300" - }, - "visibility": "internal" - }, - { - "id": 2801, - "nodeType": "VariableDeclaration", - "src": "442:64:9", - "constant": false, - "functionSelector": "4f8632ba", - "mutability": "mutable", - "name": "user", - "nameLocation": "457:4:9", - "scope": 2978, - "stateVariable": true, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "typeName": { - "id": 2799, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "442:7:9", - "stateMutability": "nonpayable", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "value": { - "hexValue": "307865436636643230353434443065383463613341623638334630333934313538453663373565416145", - "id": 2800, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "number", - "lValueRequested": false, - "nodeType": "Literal", - "src": "464:42:9", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "value": "0xeCf6d20544D0e84ca3Ab683F0394158E6c75eAaE" - }, - "visibility": "public" - }, - { - "id": 2803, - "nodeType": "VariableDeclaration", - "src": "532:23:9", - "constant": false, - "mutability": "mutable", - "name": "creator", - "nameLocation": "548:7:9", - "scope": 2978, - "stateVariable": true, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "typeName": { - "id": 2802, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "532:7:9", - "stateMutability": "nonpayable", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "visibility": "private" - }, - { - "id": 2828, - "nodeType": "FunctionDefinition", - "src": "562:198:9", - "body": { - "id": 2827, - "nodeType": "Block", - "src": "586:174:9", - "statements": [ - { - "expression": { - "id": 2814, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftHandSide": { - "id": 2806, - "name": "eg", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2789, - "src": "596:2:9", - "typeDescriptions": { - "typeIdentifier": "t_contract$_AssetCreation_$2768", - "typeString": "contract AssetCreation" - } - }, - "nodeType": "Assignment", - "operator": "=", - "rightHandSide": { - "arguments": [ - { - "id": 2810, - "name": "amount", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2792, - "src": "619:6:9", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - { - "id": 2811, - "name": "raisedAmount", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2795, - "src": "627:12:9", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - { - "id": 2812, - "name": "user", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2801, - "src": "641:4:9", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - { - "typeIdentifier": "t_address", - "typeString": "address" - } - ], - "id": 2809, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "nodeType": "NewExpression", - "src": "601:17:9", - "typeDescriptions": { - "typeIdentifier": "t_function_creation_nonpayable$_t_uint256_$_t_uint256_$_t_address_$returns$_t_contract$_AssetCreation_$2768_$", - "typeString": "function (uint256,uint256,address) returns (contract AssetCreation)" - }, - "typeName": { - "id": 2808, - "nodeType": "UserDefinedTypeName", - "pathNode": { - "id": 2807, - "name": "AssetCreation", - "nodeType": "IdentifierPath", - "referencedDeclaration": 2768, - "src": "605:13:9" - }, - "referencedDeclaration": 2768, - "src": "605:13:9", - "typeDescriptions": { - "typeIdentifier": "t_contract$_AssetCreation_$2768", - "typeString": "contract AssetCreation" - } - } - }, - "id": 2813, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "601:45:9", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_contract$_AssetCreation_$2768", - "typeString": "contract AssetCreation" - } - }, - "src": "596:50:9", - "typeDescriptions": { - "typeIdentifier": "t_contract$_AssetCreation_$2768", - "typeString": "contract AssetCreation" - } - }, - "id": 2815, - "nodeType": "ExpressionStatement", - "src": "596:50:9" - }, - { - "expression": { - "id": 2818, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftHandSide": { - "id": 2816, - "name": "creator", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2803, - "src": "656:7:9", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "nodeType": "Assignment", - "operator": "=", - "rightHandSide": { - "hexValue": "307831323334353637383930313233343536373839303132333435363738393031323334353637383930", - "id": 2817, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "number", - "lValueRequested": false, - "nodeType": "Literal", - "src": "666:42:9", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "value": "0x1234567890123456789012345678901234567890" - }, - "src": "656:52:9", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "id": 2819, - "nodeType": "ExpressionStatement", - "src": "656:52:9" - }, - { - "expression": { - "arguments": [ - { - "id": 2823, - "name": "creator", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2803, - "src": "735:7:9", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - { - "id": 2824, - "name": "duration", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2798, - "src": "744:8:9", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_address", - "typeString": "address" - }, - { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - ], - "expression": { - "id": 2820, - "name": "eg", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2789, - "src": "718:2:9", - "typeDescriptions": { - "typeIdentifier": "t_contract$_AssetCreation_$2768", - "typeString": "contract AssetCreation" - } - }, - "id": 2822, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberName": "startContract", - "nodeType": "MemberAccess", - "referencedDeclaration": 2650, - "src": "718:16:9", - "typeDescriptions": { - "typeIdentifier": "t_function_external_nonpayable$_t_address_$_t_uint256_$returns$__$", - "typeString": "function (address,uint256) external" - } - }, - "id": 2825, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "718:35:9", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 2826, - "nodeType": "ExpressionStatement", - "src": "718:35:9" - } - ] - }, - "functionSelector": "0a9254e4", - "implemented": true, - "kind": "function", - "modifiers": [], - "name": "setUp", - "nameLocation": "571:5:9", - "parameters": { - "id": 2804, - "nodeType": "ParameterList", - "parameters": [], - "src": "576:2:9" - }, - "returnParameters": { - "id": 2805, - "nodeType": "ParameterList", - "parameters": [], - "src": "586:0:9" - }, - "scope": 2978, - "stateMutability": "nonpayable", - "virtual": false, - "visibility": "public" - }, - { - "id": 2839, - "nodeType": "FunctionDefinition", - "src": "766:87:9", - "body": { - "id": 2838, - "nodeType": "Block", - "src": "802:51:9", - "statements": [ - { - "expression": { - "arguments": [ - { - "id": 2832, - "name": "creator", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2803, - "src": "821:7:9", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - { - "arguments": [], - "expression": { - "argumentTypes": [], - "expression": { - "id": 2833, - "name": "eg", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2789, - "src": "830:2:9", - "typeDescriptions": { - "typeIdentifier": "t_contract$_AssetCreation_$2768", - "typeString": "contract AssetCreation" - } - }, - "id": 2834, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberName": "getCreator", - "nodeType": "MemberAccess", - "referencedDeclaration": 2684, - "src": "830:13:9", - "typeDescriptions": { - "typeIdentifier": "t_function_external_view$__$returns$_t_address_$", - "typeString": "function () view external returns (address)" - } - }, - "id": 2835, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "830:15:9", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_address", - "typeString": "address" - }, - { - "typeIdentifier": "t_address", - "typeString": "address" - } - ], - "id": 2831, - "name": "assertEq", - "nodeType": "Identifier", - "overloadedDeclarations": [ - 378, - 403, - 433, - 458, - 517, - 542, - 572, - 597, - 1697, - 1732 - ], - "referencedDeclaration": 378, - "src": "812:8:9", - "typeDescriptions": { - "typeIdentifier": "t_function_internal_nonpayable$_t_address_$_t_address_$returns$__$", - "typeString": "function (address,address)" - } - }, - "id": 2836, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "812:34:9", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 2837, - "nodeType": "ExpressionStatement", - "src": "812:34:9" - } - ] - }, - "functionSelector": "2e9b6509", - "implemented": true, - "kind": "function", - "modifiers": [], - "name": "testStartContract", - "nameLocation": "775:17:9", - "parameters": { - "id": 2829, - "nodeType": "ParameterList", - "parameters": [], - "src": "792:2:9" - }, - "returnParameters": { - "id": 2830, - "nodeType": "ParameterList", - "parameters": [], - "src": "802:0:9" - }, - "scope": 2978, - "stateMutability": "nonpayable", - "virtual": false, - "visibility": "public" - }, - { - "id": 2850, - "nodeType": "FunctionDefinition", - "src": "859:79:9", - "body": { - "id": 2849, - "nodeType": "Block", - "src": "893:45:9", - "statements": [ - { - "expression": { - "arguments": [ - { - "id": 2843, - "name": "user", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2801, - "src": "912:4:9", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - { - "arguments": [], - "expression": { - "argumentTypes": [], - "expression": { - "id": 2844, - "name": "eg", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2789, - "src": "918:2:9", - "typeDescriptions": { - "typeIdentifier": "t_contract$_AssetCreation_$2768", - "typeString": "contract AssetCreation" - } - }, - "id": 2845, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberName": "getUser", - "nodeType": "MemberAccess", - "referencedDeclaration": 2676, - "src": "918:10:9", - "typeDescriptions": { - "typeIdentifier": "t_function_external_view$__$returns$_t_address_$", - "typeString": "function () view external returns (address)" - } - }, - "id": 2846, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "918:12:9", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_address", - "typeString": "address" - }, - { - "typeIdentifier": "t_address", - "typeString": "address" - } - ], - "id": 2842, - "name": "assertEq", - "nodeType": "Identifier", - "overloadedDeclarations": [ - 378, - 403, - 433, - 458, - 517, - 542, - 572, - 597, - 1697, - 1732 - ], - "referencedDeclaration": 378, - "src": "903:8:9", - "typeDescriptions": { - "typeIdentifier": "t_function_internal_nonpayable$_t_address_$_t_address_$returns$__$", - "typeString": "function (address,address)" - } - }, - "id": 2847, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "903:28:9", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 2848, - "nodeType": "ExpressionStatement", - "src": "903:28:9" - } - ] - }, - "functionSelector": "088f0a48", - "implemented": true, - "kind": "function", - "modifiers": [], - "name": "testCheckIfUser", - "nameLocation": "868:15:9", - "parameters": { - "id": 2840, - "nodeType": "ParameterList", - "parameters": [], - "src": "883:2:9" - }, - "returnParameters": { - "id": 2841, - "nodeType": "ParameterList", - "parameters": [], - "src": "893:0:9" - }, - "scope": 2978, - "stateMutability": "nonpayable", - "virtual": false, - "visibility": "public" - }, - { - "id": 2859, - "nodeType": "FunctionDefinition", - "src": "944:81:9", - "body": { - "id": 2858, - "nodeType": "Block", - "src": "985:40:9", - "statements": [ - { - "expression": { - "arguments": [], - "expression": { - "argumentTypes": [], - "expression": { - "id": 2853, - "name": "eg", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2789, - "src": "995:2:9", - "typeDescriptions": { - "typeIdentifier": "t_contract$_AssetCreation_$2768", - "typeString": "contract AssetCreation" - } - }, - "id": 2855, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberName": "checkTimeRemaining", - "nodeType": "MemberAccess", - "referencedDeclaration": 2695, - "src": "995:21:9", - "typeDescriptions": { - "typeIdentifier": "t_function_external_view$__$returns$_t_uint256_$", - "typeString": "function () view external returns (uint256)" - } - }, - "id": 2856, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "995:23:9", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "id": 2857, - "nodeType": "ExpressionStatement", - "src": "995:23:9" - } - ] - }, - "functionSelector": "00c14119", - "implemented": true, - "kind": "function", - "modifiers": [], - "name": "testTimeRemaining", - "nameLocation": "953:17:9", - "parameters": { - "id": 2851, - "nodeType": "ParameterList", - "parameters": [], - "src": "970:2:9" - }, - "returnParameters": { - "id": 2852, - "nodeType": "ParameterList", - "parameters": [], - "src": "985:0:9" - }, - "scope": 2978, - "stateMutability": "view", - "virtual": false, - "visibility": "public" - }, - { - "id": 2903, - "nodeType": "FunctionDefinition", - "src": "1031:259:9", - "body": { - "id": 2902, - "nodeType": "Block", - "src": "1069:221:9", - "statements": [ - { - "expression": { - "arguments": [ - { - "commonType": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "id": 2870, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "expression": { - "id": 2865, - "name": "block", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": -4, - "src": "1091:5:9", - "typeDescriptions": { - "typeIdentifier": "t_magic_block", - "typeString": "block" - } - }, - "id": 2866, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberName": "timestamp", - "nodeType": "MemberAccess", - "src": "1091:15:9", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "BinaryOperation", - "operator": "+", - "rightExpression": { - "commonType": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "id": 2869, - "isConstant": false, - "isLValue": false, - "isPure": true, - "lValueRequested": false, - "leftExpression": { - "id": 2867, - "name": "duration", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2798, - "src": "1109:8:9", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "BinaryOperation", - "operator": "/", - "rightExpression": { - "hexValue": "33", - "id": 2868, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "number", - "lValueRequested": false, - "nodeType": "Literal", - "src": "1118:1:9", - "typeDescriptions": { - "typeIdentifier": "t_rational_3_by_1", - "typeString": "int_const 3" - }, - "value": "3" - }, - "src": "1109:10:9", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "src": "1091:28:9", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - ], - "expression": { - "id": 2862, - "name": "cheats", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2786, - "src": "1079:6:9", - "typeDescriptions": { - "typeIdentifier": "t_contract$_CheatCodes_$2778", - "typeString": "contract CheatCodes" - } - }, - "id": 2864, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberName": "warp", - "nodeType": "MemberAccess", - "referencedDeclaration": 2777, - "src": "1079:11:9", - "typeDescriptions": { - "typeIdentifier": "t_function_external_nonpayable$_t_uint256_$returns$__$", - "typeString": "function (uint256) external" - } - }, - "id": 2871, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "1079:41:9", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 2872, - "nodeType": "ExpressionStatement", - "src": "1079:41:9" - }, - { - "expression": { - "arguments": [], - "expression": { - "argumentTypes": [], - "expression": { - "id": 2873, - "name": "eg", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2789, - "src": "1130:2:9", - "typeDescriptions": { - "typeIdentifier": "t_contract$_AssetCreation_$2768", - "typeString": "contract AssetCreation" - } - }, - "id": 2875, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberName": "callEndContract", - "nodeType": "MemberAccess", - "referencedDeclaration": 2710, - "src": "1130:18:9", - "typeDescriptions": { - "typeIdentifier": "t_function_external_nonpayable$__$returns$__$", - "typeString": "function () external" - } - }, - "id": 2876, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "1130:20:9", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 2877, - "nodeType": "ExpressionStatement", - "src": "1130:20:9" - }, - { - "expression": { - "arguments": [ - { - "hexValue": "74727565", - "id": 2879, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "bool", - "lValueRequested": false, - "nodeType": "Literal", - "src": "1171:4:9", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - "value": "true" - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - ], - "id": 2878, - "name": "assertTrue", - "nodeType": "Identifier", - "overloadedDeclarations": [ - 327, - 348 - ], - "referencedDeclaration": 327, - "src": "1160:10:9", - "typeDescriptions": { - "typeIdentifier": "t_function_internal_nonpayable$_t_bool_$returns$__$", - "typeString": "function (bool)" - } - }, - "id": 2880, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "1160:16:9", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 2881, - "nodeType": "ExpressionStatement", - "src": "1160:16:9" - }, - { - "expression": { - "arguments": [ - { - "commonType": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "id": 2890, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "expression": { - "id": 2885, - "name": "block", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": -4, - "src": "1198:5:9", - "typeDescriptions": { - "typeIdentifier": "t_magic_block", - "typeString": "block" - } - }, - "id": 2886, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberName": "timestamp", - "nodeType": "MemberAccess", - "src": "1198:15:9", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "BinaryOperation", - "operator": "+", - "rightExpression": { - "commonType": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "id": 2889, - "isConstant": false, - "isLValue": false, - "isPure": true, - "lValueRequested": false, - "leftExpression": { - "id": 2887, - "name": "duration", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2798, - "src": "1216:8:9", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "BinaryOperation", - "operator": "/", - "rightExpression": { - "hexValue": "32", - "id": 2888, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "number", - "lValueRequested": false, - "nodeType": "Literal", - "src": "1225:1:9", - "typeDescriptions": { - "typeIdentifier": "t_rational_2_by_1", - "typeString": "int_const 2" - }, - "value": "2" - }, - "src": "1216:10:9", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "src": "1198:28:9", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - ], - "expression": { - "id": 2882, - "name": "cheats", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2786, - "src": "1186:6:9", - "typeDescriptions": { - "typeIdentifier": "t_contract$_CheatCodes_$2778", - "typeString": "contract CheatCodes" - } - }, - "id": 2884, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberName": "warp", - "nodeType": "MemberAccess", - "referencedDeclaration": 2777, - "src": "1186:11:9", - "typeDescriptions": { - "typeIdentifier": "t_function_external_nonpayable$_t_uint256_$returns$__$", - "typeString": "function (uint256) external" - } - }, - "id": 2891, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "1186:41:9", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 2892, - "nodeType": "ExpressionStatement", - "src": "1186:41:9" - }, - { - "expression": { - "arguments": [], - "expression": { - "argumentTypes": [], - "expression": { - "id": 2893, - "name": "eg", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2789, - "src": "1237:2:9", - "typeDescriptions": { - "typeIdentifier": "t_contract$_AssetCreation_$2768", - "typeString": "contract AssetCreation" - } - }, - "id": 2895, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberName": "callEndContract", - "nodeType": "MemberAccess", - "referencedDeclaration": 2710, - "src": "1237:18:9", - "typeDescriptions": { - "typeIdentifier": "t_function_external_nonpayable$__$returns$__$", - "typeString": "function () external" - } - }, - "id": 2896, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "1237:20:9", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 2897, - "nodeType": "ExpressionStatement", - "src": "1237:20:9" - }, - { - "expression": { - "arguments": [ - { - "hexValue": "74727565", - "id": 2899, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "bool", - "lValueRequested": false, - "nodeType": "Literal", - "src": "1278:4:9", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - "value": "true" - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - ], - "id": 2898, - "name": "assertTrue", - "nodeType": "Identifier", - "overloadedDeclarations": [ - 327, - 348 - ], - "referencedDeclaration": 327, - "src": "1267:10:9", - "typeDescriptions": { - "typeIdentifier": "t_function_internal_nonpayable$_t_bool_$returns$__$", - "typeString": "function (bool)" - } - }, - "id": 2900, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "1267:16:9", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 2901, - "nodeType": "ExpressionStatement", - "src": "1267:16:9" - } - ] - }, - "functionSelector": "68465062", - "implemented": true, - "kind": "function", - "modifiers": [], - "name": "testCallEndContract", - "nameLocation": "1040:19:9", - "parameters": { - "id": 2860, - "nodeType": "ParameterList", - "parameters": [], - "src": "1059:2:9" - }, - "returnParameters": { - "id": 2861, - "nodeType": "ParameterList", - "parameters": [], - "src": "1069:0:9" - }, - "scope": 2978, - "stateMutability": "nonpayable", - "virtual": false, - "visibility": "public" - }, - { - "id": 2950, - "nodeType": "FunctionDefinition", - "src": "1296:332:9", - "body": { - "id": 2949, - "nodeType": "Block", - "src": "1330:298:9", - "statements": [ - { - "assignments": [ - 2907 - ], - "declarations": [ - { - "constant": false, - "id": 2907, - "mutability": "mutable", - "name": "data", - "nameLocation": "1353:4:9", - "nodeType": "VariableDeclaration", - "scope": 2949, - "src": "1340:17:9", - "stateVariable": false, - "storageLocation": "memory", - "typeDescriptions": { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes" - }, - "typeName": { - "id": 2906, - "name": "bytes", - "nodeType": "ElementaryTypeName", - "src": "1340:5:9", - "typeDescriptions": { - "typeIdentifier": "t_bytes_storage_ptr", - "typeString": "bytes" - } - }, - "visibility": "internal" - } - ], - "id": 2909, - "initialValue": { - "hexValue": "", - "id": 2908, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "string", - "lValueRequested": false, - "nodeType": "Literal", - "src": "1360:2:9", - "typeDescriptions": { - "typeIdentifier": "t_stringliteral_c5d2460186f7233c927e7db2dcc703c0e500b653ca82273b7bfad8045d85a470", - "typeString": "literal_string \"\"" - }, - "value": "" - }, - "nodeType": "VariableDeclarationStatement", - "src": "1340:22:9" - }, - { - "assignments": [ - 2911 - ], - "declarations": [ - { - "constant": false, - "id": 2911, - "mutability": "mutable", - "name": "upkeepNeeded", - "nameLocation": "1377:12:9", - "nodeType": "VariableDeclaration", - "scope": 2949, - "src": "1372:17:9", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - "typeName": { - "id": 2910, - "name": "bool", - "nodeType": "ElementaryTypeName", - "src": "1372:4:9", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "visibility": "internal" - } - ], - "id": 2913, - "initialValue": { - "hexValue": "66616c7365", - "id": 2912, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "bool", - "lValueRequested": false, - "nodeType": "Literal", - "src": "1392:5:9", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - "value": "false" - }, - "nodeType": "VariableDeclarationStatement", - "src": "1372:25:9" - }, - { - "expression": { - "id": 2920, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftHandSide": { - "components": [ - { - "id": 2914, - "name": "upkeepNeeded", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2911, - "src": "1408:12:9", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - null - ], - "id": 2915, - "isConstant": false, - "isInlineArray": false, - "isLValue": true, - "isPure": false, - "lValueRequested": true, - "nodeType": "TupleExpression", - "src": "1407:16:9", - "typeDescriptions": { - "typeIdentifier": "t_tuple$_t_bool_$__$", - "typeString": "tuple(bool,)" - } - }, - "nodeType": "Assignment", - "operator": "=", - "rightHandSide": { - "arguments": [ - { - "id": 2918, - "name": "data", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2907, - "src": "1441:4:9", - "typeDescriptions": { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes memory" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes memory" - } - ], - "expression": { - "id": 2916, - "name": "eg", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2789, - "src": "1426:2:9", - "typeDescriptions": { - "typeIdentifier": "t_contract$_AssetCreation_$2768", - "typeString": "contract AssetCreation" - } - }, - "id": 2917, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberName": "checkUpkeep", - "nodeType": "MemberAccess", - "referencedDeclaration": 2728, - "src": "1426:14:9", - "typeDescriptions": { - "typeIdentifier": "t_function_external_view$_t_bytes_memory_ptr_$returns$_t_bool_$_t_bytes_memory_ptr_$", - "typeString": "function (bytes memory) view external returns (bool,bytes memory)" - } - }, - "id": 2919, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "1426:20:9", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_tuple$_t_bool_$_t_bytes_memory_ptr_$", - "typeString": "tuple(bool,bytes memory)" - } - }, - "src": "1407:39:9", - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 2921, - "nodeType": "ExpressionStatement", - "src": "1407:39:9" - }, - { - "expression": { - "arguments": [ - { - "commonType": { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - "id": 2925, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "id": 2923, - "name": "upkeepNeeded", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2911, - "src": "1467:12:9", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "nodeType": "BinaryOperation", - "operator": "==", - "rightExpression": { - "hexValue": "66616c7365", - "id": 2924, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "bool", - "lValueRequested": false, - "nodeType": "Literal", - "src": "1483:5:9", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - "value": "false" - }, - "src": "1467:21:9", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - ], - "id": 2922, - "name": "assertTrue", - "nodeType": "Identifier", - "overloadedDeclarations": [ - 327, - 348 - ], - "referencedDeclaration": 327, - "src": "1456:10:9", - "typeDescriptions": { - "typeIdentifier": "t_function_internal_nonpayable$_t_bool_$returns$__$", - "typeString": "function (bool)" - } - }, - "id": 2926, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "1456:33:9", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 2927, - "nodeType": "ExpressionStatement", - "src": "1456:33:9" - }, - { - "expression": { - "arguments": [ - { - "commonType": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "id": 2934, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "expression": { - "id": 2931, - "name": "block", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": -4, - "src": "1511:5:9", - "typeDescriptions": { - "typeIdentifier": "t_magic_block", - "typeString": "block" - } - }, - "id": 2932, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberName": "timestamp", - "nodeType": "MemberAccess", - "src": "1511:15:9", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "BinaryOperation", - "operator": "+", - "rightExpression": { - "id": 2933, - "name": "duration", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2798, - "src": "1529:8:9", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "src": "1511:26:9", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - ], - "expression": { - "id": 2928, - "name": "cheats", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2786, - "src": "1499:6:9", - "typeDescriptions": { - "typeIdentifier": "t_contract$_CheatCodes_$2778", - "typeString": "contract CheatCodes" - } - }, - "id": 2930, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberName": "warp", - "nodeType": "MemberAccess", - "referencedDeclaration": 2777, - "src": "1499:11:9", - "typeDescriptions": { - "typeIdentifier": "t_function_external_nonpayable$_t_uint256_$returns$__$", - "typeString": "function (uint256) external" - } - }, - "id": 2935, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "1499:39:9", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 2936, - "nodeType": "ExpressionStatement", - "src": "1499:39:9" - }, - { - "expression": { - "id": 2943, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftHandSide": { - "components": [ - { - "id": 2937, - "name": "upkeepNeeded", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2911, - "src": "1549:12:9", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - null - ], - "id": 2938, - "isConstant": false, - "isInlineArray": false, - "isLValue": true, - "isPure": false, - "lValueRequested": true, - "nodeType": "TupleExpression", - "src": "1548:16:9", - "typeDescriptions": { - "typeIdentifier": "t_tuple$_t_bool_$__$", - "typeString": "tuple(bool,)" - } - }, - "nodeType": "Assignment", - "operator": "=", - "rightHandSide": { - "arguments": [ - { - "id": 2941, - "name": "data", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2907, - "src": "1582:4:9", - "typeDescriptions": { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes memory" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes memory" - } - ], - "expression": { - "id": 2939, - "name": "eg", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2789, - "src": "1567:2:9", - "typeDescriptions": { - "typeIdentifier": "t_contract$_AssetCreation_$2768", - "typeString": "contract AssetCreation" - } - }, - "id": 2940, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberName": "checkUpkeep", - "nodeType": "MemberAccess", - "referencedDeclaration": 2728, - "src": "1567:14:9", - "typeDescriptions": { - "typeIdentifier": "t_function_external_view$_t_bytes_memory_ptr_$returns$_t_bool_$_t_bytes_memory_ptr_$", - "typeString": "function (bytes memory) view external returns (bool,bytes memory)" - } - }, - "id": 2942, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "1567:20:9", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_tuple$_t_bool_$_t_bytes_memory_ptr_$", - "typeString": "tuple(bool,bytes memory)" - } - }, - "src": "1548:39:9", - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 2944, - "nodeType": "ExpressionStatement", - "src": "1548:39:9" - }, - { - "expression": { - "arguments": [ - { - "id": 2946, - "name": "upkeepNeeded", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2911, - "src": "1608:12:9", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - ], - "id": 2945, - "name": "assertTrue", - "nodeType": "Identifier", - "overloadedDeclarations": [ - 327, - 348 - ], - "referencedDeclaration": 327, - "src": "1597:10:9", - "typeDescriptions": { - "typeIdentifier": "t_function_internal_nonpayable$_t_bool_$returns$__$", - "typeString": "function (bool)" - } - }, - "id": 2947, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "1597:24:9", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 2948, - "nodeType": "ExpressionStatement", - "src": "1597:24:9" - } - ] - }, - "functionSelector": "60932b3d", - "implemented": true, - "kind": "function", - "modifiers": [], - "name": "testCheckUpkeep", - "nameLocation": "1305:15:9", - "parameters": { - "id": 2904, - "nodeType": "ParameterList", - "parameters": [], - "src": "1320:2:9" - }, - "returnParameters": { - "id": 2905, - "nodeType": "ParameterList", - "parameters": [], - "src": "1330:0:9" - }, - "scope": 2978, - "stateMutability": "nonpayable", - "virtual": false, - "visibility": "public" - }, - { - "id": 2977, - "nodeType": "FunctionDefinition", - "src": "1634:182:9", - "body": { - "id": 2976, - "nodeType": "Block", - "src": "1670:146:9", - "statements": [ - { - "assignments": [ - 2954 - ], - "declarations": [ - { - "constant": false, - "id": 2954, - "mutability": "mutable", - "name": "data", - "nameLocation": "1693:4:9", - "nodeType": "VariableDeclaration", - "scope": 2976, - "src": "1680:17:9", - "stateVariable": false, - "storageLocation": "memory", - "typeDescriptions": { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes" - }, - "typeName": { - "id": 2953, - "name": "bytes", - "nodeType": "ElementaryTypeName", - "src": "1680:5:9", - "typeDescriptions": { - "typeIdentifier": "t_bytes_storage_ptr", - "typeString": "bytes" - } - }, - "visibility": "internal" - } - ], - "id": 2956, - "initialValue": { - "hexValue": "", - "id": 2955, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "string", - "lValueRequested": false, - "nodeType": "Literal", - "src": "1700:2:9", - "typeDescriptions": { - "typeIdentifier": "t_stringliteral_c5d2460186f7233c927e7db2dcc703c0e500b653ca82273b7bfad8045d85a470", - "typeString": "literal_string \"\"" - }, - "value": "" - }, - "nodeType": "VariableDeclarationStatement", - "src": "1680:22:9" - }, - { - "expression": { - "arguments": [ - { - "commonType": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "id": 2963, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "expression": { - "id": 2960, - "name": "block", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": -4, - "src": "1724:5:9", - "typeDescriptions": { - "typeIdentifier": "t_magic_block", - "typeString": "block" - } - }, - "id": 2961, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberName": "timestamp", - "nodeType": "MemberAccess", - "src": "1724:15:9", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "BinaryOperation", - "operator": "+", - "rightExpression": { - "id": 2962, - "name": "duration", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2798, - "src": "1742:8:9", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "src": "1724:26:9", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - ], - "expression": { - "id": 2957, - "name": "cheats", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2786, - "src": "1712:6:9", - "typeDescriptions": { - "typeIdentifier": "t_contract$_CheatCodes_$2778", - "typeString": "contract CheatCodes" - } - }, - "id": 2959, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberName": "warp", - "nodeType": "MemberAccess", - "referencedDeclaration": 2777, - "src": "1712:11:9", - "typeDescriptions": { - "typeIdentifier": "t_function_external_nonpayable$_t_uint256_$returns$__$", - "typeString": "function (uint256) external" - } - }, - "id": 2964, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "1712:39:9", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 2965, - "nodeType": "ExpressionStatement", - "src": "1712:39:9" - }, - { - "expression": { - "arguments": [ - { - "id": 2969, - "name": "data", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2954, - "src": "1778:4:9", - "typeDescriptions": { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes memory" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes memory" - } - ], - "expression": { - "id": 2966, - "name": "eg", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2789, - "src": "1761:2:9", - "typeDescriptions": { - "typeIdentifier": "t_contract$_AssetCreation_$2768", - "typeString": "contract AssetCreation" - } - }, - "id": 2968, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberName": "performUpkeep", - "nodeType": "MemberAccess", - "referencedDeclaration": 2745, - "src": "1761:16:9", - "typeDescriptions": { - "typeIdentifier": "t_function_external_nonpayable$_t_bytes_memory_ptr_$returns$__$", - "typeString": "function (bytes memory) external" - } - }, - "id": 2970, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "1761:22:9", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 2971, - "nodeType": "ExpressionStatement", - "src": "1761:22:9" - }, - { - "expression": { - "arguments": [ - { - "hexValue": "74727565", - "id": 2973, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "bool", - "lValueRequested": false, - "nodeType": "Literal", - "src": "1804:4:9", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - "value": "true" - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - ], - "id": 2972, - "name": "assertTrue", - "nodeType": "Identifier", - "overloadedDeclarations": [ - 327, - 348 - ], - "referencedDeclaration": 327, - "src": "1793:10:9", - "typeDescriptions": { - "typeIdentifier": "t_function_internal_nonpayable$_t_bool_$returns$__$", - "typeString": "function (bool)" - } - }, - "id": 2974, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "1793:16:9", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 2975, - "nodeType": "ExpressionStatement", - "src": "1793:16:9" - } - ] - }, - "functionSelector": "88f7f135", - "implemented": true, - "kind": "function", - "modifiers": [], - "name": "testPerformUpkeep", - "nameLocation": "1643:17:9", - "parameters": { - "id": 2951, - "nodeType": "ParameterList", - "parameters": [], - "src": "1660:2:9" - }, - "returnParameters": { - "id": 2952, - "nodeType": "ParameterList", - "parameters": [], - "src": "1670:0:9" - }, - "scope": 2978, - "stateMutability": "nonpayable", - "virtual": false, - "visibility": "public" - } - ], - "abstract": false, - "baseContracts": [ - { - "baseName": { - "id": 2779, - "name": "DSTest", - "nodeType": "IdentifierPath", - "referencedDeclaration": 1844, - "src": "227:6:9" - }, - "id": 2780, - "nodeType": "InheritanceSpecifier", - "src": "227:6:9" - } - ], - "canonicalName": "AssetCreationTest", - "contractDependencies": [ - 2768 - ], - "contractKind": "contract", - "fullyImplemented": true, - "linearizedBaseContracts": [ - 2978, - 1844 - ], - "name": "AssetCreationTest", - "nameLocation": "206:17:9", - "scope": 2979, - "usedErrors": [] - } - ], - "license": "UNLICENSED" - } -} \ No newline at end of file diff --git a/out/AssetCreationDAO.sol/AssetCreationDAO.json b/out/AssetCreationDAO.sol/AssetCreationDAO.json deleted file mode 100644 index 9849dd0..0000000 --- a/out/AssetCreationDAO.sol/AssetCreationDAO.json +++ /dev/null @@ -1,2546 +0,0 @@ -{ - "abi": [ - { - "inputs": [ - { - "internalType": "uint256", - "name": "_raisedAmount", - "type": "uint256" - }, - { - "internalType": "address", - "name": "_user", - "type": "address" - } - ], - "stateMutability": "nonpayable", - "type": "constructor" - }, - { - "inputs": [], - "name": "callEndContract", - "outputs": [], - "stateMutability": "nonpayable", - "type": "function" - }, - { - "inputs": [ - { - "internalType": "address", - "name": "_userAddr", - "type": "address" - } - ], - "name": "checkIfUser", - "outputs": [ - { - "internalType": "bool", - "name": "", - "type": "bool" - } - ], - "stateMutability": "view", - "type": "function" - }, - { - "inputs": [], - "name": "checkTimeRemaining", - "outputs": [ - { - "internalType": "uint256", - "name": "", - "type": "uint256" - } - ], - "stateMutability": "view", - "type": "function" - }, - { - "inputs": [ - { - "internalType": "bytes", - "name": "", - "type": "bytes" - } - ], - "name": "checkUpkeep", - "outputs": [ - { - "internalType": "bool", - "name": "upkeepNeeded", - "type": "bool" - }, - { - "internalType": "bytes", - "name": "performData", - "type": "bytes" - } - ], - "stateMutability": "view", - "type": "function" - }, - { - "inputs": [], - "name": "getCreator", - "outputs": [ - { - "internalType": "address", - "name": "", - "type": "address" - } - ], - "stateMutability": "view", - "type": "function" - }, - { - "inputs": [], - "name": "getUser", - "outputs": [ - { - "internalType": "address", - "name": "", - "type": "address" - } - ], - "stateMutability": "view", - "type": "function" - }, - { - "inputs": [], - "name": "ierc20", - "outputs": [ - { - "internalType": "contract IERC20", - "name": "", - "type": "address" - } - ], - "stateMutability": "view", - "type": "function" - }, - { - "inputs": [ - { - "internalType": "bytes", - "name": "", - "type": "bytes" - } - ], - "name": "performUpkeep", - "outputs": [], - "stateMutability": "nonpayable", - "type": "function" - }, - { - "inputs": [ - { - "internalType": "address", - "name": "_creatorAddr", - "type": "address" - }, - { - "internalType": "uint256", - "name": "_duration", - "type": "uint256" - } - ], - "name": "startContract", - "outputs": [], - "stateMutability": "nonpayable", - "type": "function" - } - ], - "bytecode": { - "object": "0x60c060405234801561001057600080fd5b50604051610d8d380380610d8d83398101604081905261002f91610043565b6001600160a01b031660a052608052610080565b6000806040838503121561005657600080fd5b825160208401519092506001600160a01b038116811461007557600080fd5b809150509250929050565b60805160a051610ce46100a960003960008181610119015261026e015260005050610ce46000f3fe608060405234801561001057600080fd5b50600436106100935760003560e01c8063832880e711610066578063832880e714610117578063bf0ae63d1461013d578063c6c6d29214610150578063f65861c314610163578063facda8131461018657600080fd5b80630ee2cb101461009857806340c6ed97146100c25780634585e33b146100d85780636e04ff0d146100ed575b600080fd5b6005546001600160a01b03165b6040516001600160a01b0390911681526020015b60405180910390f35b6100ca61018e565b6040519081526020016100b9565b6100eb6100e636600461035d565b6101a3565b005b6101096100fb36600461035d565b505060035442101590606090565b6040516100b99291906103cf565b7f00000000000000000000000000000000000000000000000000000000000000006100a5565b6006546100a5906001600160a01b031681565b6100eb61015e366004610445565b6101b8565b61017661017136600461046f565b61026a565b60405190151581526020016100b9565b6100eb6102ba565b60004260035461019e91906104a7565b905090565b60035442106101b4576101b461031d565b5050565b600580546001600160a01b0319166001600160a01b03841617905542600281905560018290556101e99082906104be565b60038190556006546040516001600160a01b0390911691849161020b90610350565b6001600160a01b0393841681529290911660208301526040820152606001604051809103906000f080158015610245573d6000803e3d6000fd5b50600080546001600160a01b0319166001600160a01b03929092169190911790555050565b60007f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0316826001600160a01b0316036102ad57506001919050565b506000919050565b919050565b6102c33361026a565b6103135760405162461bcd60e51b815260206004820152601c60248201527f596f752063616e6e6f7420656e64207468697320636f6e747261637400000000604482015260640160405180910390fd5b61031b61031d565b565b6103263361026a565b1561031b57600260015461033a91906104d6565b60035461034791906104a7565b42101561031b57565b6107b6806104f983390190565b6000806020838503121561037057600080fd5b823567ffffffffffffffff8082111561038857600080fd5b818501915085601f83011261039c57600080fd5b8135818111156103ab57600080fd5b8660208285010111156103bd57600080fd5b60209290920196919550909350505050565b821515815260006020604081840152835180604085015260005b81811015610405578581018301518582016060015282016103e9565b81811115610417576000606083870101525b50601f01601f191692909201606001949350505050565b80356001600160a01b03811681146102b557600080fd5b6000806040838503121561045857600080fd5b6104618361042e565b946020939093013593505050565b60006020828403121561048157600080fd5b61048a8261042e565b9392505050565b634e487b7160e01b600052601160045260246000fd5b6000828210156104b9576104b9610491565b500390565b600082198211156104d1576104d1610491565b500190565b6000826104f357634e487b7160e01b600052601260045260246000fd5b50049056fe60e060405234801561001057600080fd5b506040516107b63803806107b683398101604081905261002f916100d0565b42811161009d5760405162461bcd60e51b815260206004820152603260248201527f546f6b656e54696d656c6f636b3a2072656c656173652074696d65206973206260448201527165666f72652063757272656e742074696d6560701b606482015260840160405180910390fd5b6001600160a01b03928316608052911660a05260c052610113565b6001600160a01b03811681146100cd57600080fd5b50565b6000806000606084860312156100e557600080fd5b83516100f0816100b8565b6020850151909350610101816100b8565b80925050604084015190509250925092565b60805160a05160c05161065c61015a60003960008181609f015260f00152600081816053015261029801526000818160ca015281816101820152610276015261065c6000f3fe608060405234801561001057600080fd5b506004361061004c5760003560e01c806338af3eed1461005157806386d1a69f14610090578063b91d40011461009a578063fc0c546a146100c8575b600080fd5b7f00000000000000000000000000000000000000000000000000000000000000005b6040516001600160a01b0390911681526020015b60405180910390f35b6100986100ee565b005b6040517f00000000000000000000000000000000000000000000000000000000000000008152602001610087565b7f0000000000000000000000000000000000000000000000000000000000000000610073565b7f000000000000000000000000000000000000000000000000000000000000000042101561017e5760405162461bcd60e51b815260206004820152603260248201527f546f6b656e54696d656c6f636b3a2063757272656e742074696d65206973206260448201527165666f72652072656c656173652074696d6560701b60648201526084015b60405180910390fd5b60007f00000000000000000000000000000000000000000000000000000000000000006040516370a0823160e01b81523060048201526001600160a01b0391909116906370a0823190602401602060405180830381865afa1580156101e7573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061020b919061056c565b9050600081116102695760405162461bcd60e51b815260206004820152602360248201527f546f6b656e54696d656c6f636b3a206e6f20746f6b656e7320746f2072656c6560448201526261736560e81b6064820152608401610175565b6102bd6001600160a01b037f0000000000000000000000000000000000000000000000000000000000000000167f0000000000000000000000000000000000000000000000000000000000000000836102c0565b50565b604080516001600160a01b038416602482015260448082018490528251808303909101815260649091019091526020810180516001600160e01b031663a9059cbb60e01b179052610312908490610317565b505050565b600061036c826040518060400160405280602081526020017f5361666545524332303a206c6f772d6c6576656c2063616c6c206661696c6564815250856001600160a01b03166103e99092919063ffffffff16565b805190915015610312578080602001905181019061038a9190610585565b6103125760405162461bcd60e51b815260206004820152602a60248201527f5361666545524332303a204552433230206f7065726174696f6e20646964206e6044820152691bdd081cdd58d8d9595960b21b6064820152608401610175565b60606103f88484600085610402565b90505b9392505050565b6060824710156104635760405162461bcd60e51b815260206004820152602660248201527f416464726573733a20696e73756666696369656e742062616c616e636520666f6044820152651c8818d85b1b60d21b6064820152608401610175565b6001600160a01b0385163b6104ba5760405162461bcd60e51b815260206004820152601d60248201527f416464726573733a2063616c6c20746f206e6f6e2d636f6e74726163740000006044820152606401610175565b600080866001600160a01b031685876040516104d691906105d7565b60006040518083038185875af1925050503d8060008114610513576040519150601f19603f3d011682016040523d82523d6000602084013e610518565b606091505b5091509150610528828286610533565b979650505050505050565b606083156105425750816103fb565b8251156105525782518084602001fd5b8160405162461bcd60e51b815260040161017591906105f3565b60006020828403121561057e57600080fd5b5051919050565b60006020828403121561059757600080fd5b815180151581146103fb57600080fd5b60005b838110156105c25781810151838201526020016105aa565b838111156105d1576000848401525b50505050565b600082516105e98184602087016105a7565b9190910192915050565b60208152600082518060208401526106128160408501602087016105a7565b601f01601f1916919091016040019291505056fea2646970667358221220a6d50bd92be244b5ebe34cda117e246f11612a7913fff13aa82571a2fc392f6364736f6c634300080d0033a26469706673582212209d0841da6915e5fad50d3a19e1bf6b5ab7f6d2d231bf4209c8c90fd53e55f25c64736f6c634300080d0033", - "sourceMap": "317:3090:8:-:0;;;840:234;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;-1:-1:-1;;;;;949:19:8;;;978:30;;317:3090;;14:351:11;93:6;101;154:2;142:9;133:7;129:23;125:32;122:52;;;170:1;167;160:12;122:52;193:16;;252:2;237:18;;231:25;193:16;;-1:-1:-1;;;;;;285:31:11;;275:42;;265:70;;331:1;328;321:12;265:70;354:5;344:15;;;14:351;;;;;:::o;:::-;317:3090:8;;;;;;;;;;;;;;;;;;;;;;", - "linkReferences": {} - }, - "deployedBytecode": { - "object": "0x608060405234801561001057600080fd5b50600436106100935760003560e01c8063832880e711610066578063832880e714610117578063bf0ae63d1461013d578063c6c6d29214610150578063f65861c314610163578063facda8131461018657600080fd5b80630ee2cb101461009857806340c6ed97146100c25780634585e33b146100d85780636e04ff0d146100ed575b600080fd5b6005546001600160a01b03165b6040516001600160a01b0390911681526020015b60405180910390f35b6100ca61018e565b6040519081526020016100b9565b6100eb6100e636600461035d565b6101a3565b005b6101096100fb36600461035d565b505060035442101590606090565b6040516100b99291906103cf565b7f00000000000000000000000000000000000000000000000000000000000000006100a5565b6006546100a5906001600160a01b031681565b6100eb61015e366004610445565b6101b8565b61017661017136600461046f565b61026a565b60405190151581526020016100b9565b6100eb6102ba565b60004260035461019e91906104a7565b905090565b60035442106101b4576101b461031d565b5050565b600580546001600160a01b0319166001600160a01b03841617905542600281905560018290556101e99082906104be565b60038190556006546040516001600160a01b0390911691849161020b90610350565b6001600160a01b0393841681529290911660208301526040820152606001604051809103906000f080158015610245573d6000803e3d6000fd5b50600080546001600160a01b0319166001600160a01b03929092169190911790555050565b60007f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0316826001600160a01b0316036102ad57506001919050565b506000919050565b919050565b6102c33361026a565b6103135760405162461bcd60e51b815260206004820152601c60248201527f596f752063616e6e6f7420656e64207468697320636f6e747261637400000000604482015260640160405180910390fd5b61031b61031d565b565b6103263361026a565b1561031b57600260015461033a91906104d6565b60035461034791906104a7565b42101561031b57565b6107b6806104f983390190565b6000806020838503121561037057600080fd5b823567ffffffffffffffff8082111561038857600080fd5b818501915085601f83011261039c57600080fd5b8135818111156103ab57600080fd5b8660208285010111156103bd57600080fd5b60209290920196919550909350505050565b821515815260006020604081840152835180604085015260005b81811015610405578581018301518582016060015282016103e9565b81811115610417576000606083870101525b50601f01601f191692909201606001949350505050565b80356001600160a01b03811681146102b557600080fd5b6000806040838503121561045857600080fd5b6104618361042e565b946020939093013593505050565b60006020828403121561048157600080fd5b61048a8261042e565b9392505050565b634e487b7160e01b600052601160045260246000fd5b6000828210156104b9576104b9610491565b500390565b600082198211156104d1576104d1610491565b500190565b6000826104f357634e487b7160e01b600052601260045260246000fd5b50049056fe60e060405234801561001057600080fd5b506040516107b63803806107b683398101604081905261002f916100d0565b42811161009d5760405162461bcd60e51b815260206004820152603260248201527f546f6b656e54696d656c6f636b3a2072656c656173652074696d65206973206260448201527165666f72652063757272656e742074696d6560701b606482015260840160405180910390fd5b6001600160a01b03928316608052911660a05260c052610113565b6001600160a01b03811681146100cd57600080fd5b50565b6000806000606084860312156100e557600080fd5b83516100f0816100b8565b6020850151909350610101816100b8565b80925050604084015190509250925092565b60805160a05160c05161065c61015a60003960008181609f015260f00152600081816053015261029801526000818160ca015281816101820152610276015261065c6000f3fe608060405234801561001057600080fd5b506004361061004c5760003560e01c806338af3eed1461005157806386d1a69f14610090578063b91d40011461009a578063fc0c546a146100c8575b600080fd5b7f00000000000000000000000000000000000000000000000000000000000000005b6040516001600160a01b0390911681526020015b60405180910390f35b6100986100ee565b005b6040517f00000000000000000000000000000000000000000000000000000000000000008152602001610087565b7f0000000000000000000000000000000000000000000000000000000000000000610073565b7f000000000000000000000000000000000000000000000000000000000000000042101561017e5760405162461bcd60e51b815260206004820152603260248201527f546f6b656e54696d656c6f636b3a2063757272656e742074696d65206973206260448201527165666f72652072656c656173652074696d6560701b60648201526084015b60405180910390fd5b60007f00000000000000000000000000000000000000000000000000000000000000006040516370a0823160e01b81523060048201526001600160a01b0391909116906370a0823190602401602060405180830381865afa1580156101e7573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061020b919061056c565b9050600081116102695760405162461bcd60e51b815260206004820152602360248201527f546f6b656e54696d656c6f636b3a206e6f20746f6b656e7320746f2072656c6560448201526261736560e81b6064820152608401610175565b6102bd6001600160a01b037f0000000000000000000000000000000000000000000000000000000000000000167f0000000000000000000000000000000000000000000000000000000000000000836102c0565b50565b604080516001600160a01b038416602482015260448082018490528251808303909101815260649091019091526020810180516001600160e01b031663a9059cbb60e01b179052610312908490610317565b505050565b600061036c826040518060400160405280602081526020017f5361666545524332303a206c6f772d6c6576656c2063616c6c206661696c6564815250856001600160a01b03166103e99092919063ffffffff16565b805190915015610312578080602001905181019061038a9190610585565b6103125760405162461bcd60e51b815260206004820152602a60248201527f5361666545524332303a204552433230206f7065726174696f6e20646964206e6044820152691bdd081cdd58d8d9595960b21b6064820152608401610175565b60606103f88484600085610402565b90505b9392505050565b6060824710156104635760405162461bcd60e51b815260206004820152602660248201527f416464726573733a20696e73756666696369656e742062616c616e636520666f6044820152651c8818d85b1b60d21b6064820152608401610175565b6001600160a01b0385163b6104ba5760405162461bcd60e51b815260206004820152601d60248201527f416464726573733a2063616c6c20746f206e6f6e2d636f6e74726163740000006044820152606401610175565b600080866001600160a01b031685876040516104d691906105d7565b60006040518083038185875af1925050503d8060008114610513576040519150601f19603f3d011682016040523d82523d6000602084013e610518565b606091505b5091509150610528828286610533565b979650505050505050565b606083156105425750816103fb565b8251156105525782518084602001fd5b8160405162461bcd60e51b815260040161017591906105f3565b60006020828403121561057e57600080fd5b5051919050565b60006020828403121561059757600080fd5b815180151581146103fb57600080fd5b60005b838110156105c25781810151838201526020016105aa565b838111156105d1576000848401525b50505050565b600082516105e98184602087016105a7565b9190910192915050565b60208152600082518060208401526106128160408501602087016105a7565b601f01601f1916919091016040019291505056fea2646970667358221220a6d50bd92be244b5ebe34cda117e246f11612a7913fff13aa82571a2fc392f6364736f6c634300080d0033a26469706673582212209d0841da6915e5fad50d3a19e1bf6b5ab7f6d2d231bf4209c8c90fd53e55f25c64736f6c634300080d0033", - "sourceMap": "317:3090:8:-:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;1823:89;1893:12;;-1:-1:-1;;;;;1893:12:8;1823:89;;;-1:-1:-1;;;;;178:32:11;;;160:51;;148:2;133:18;1823:89:8;;;;;;;;1918:110;;;:::i;:::-;;;368:25:11;;;356:2;341:18;1918:110:8;222:177:11;2456:141:8;;;;;;:::i;:::-;;:::i;:::-;;2247:175;;;;;;:::i;:::-;-1:-1:-1;;2407:7:8;;2388:15;:26;;;2336:24;;2247:175;;;;;;;;;:::i;1732:85::-;1799:11;1732:85;;809:20;;;;;-1:-1:-1;;;;;809:20:8;;;1123:404;;;;;;:::i;:::-;;:::i;1533:193::-;;;;;;:::i;:::-;;:::i;:::-;;;2697:14:11;;2690:22;2672:41;;2660:2;2645:18;1533:193:8;2532:187:11;2059:140:8;;;:::i;1918:110::-;1970:7;2006:15;1996:7;;:25;;;;:::i;:::-;1989:32;;1918:110;:::o;2456:141::-;2545:7;;2526:15;:26;2523:68;;2567:13;:11;:13::i;:::-;2456:141;;:::o;1123:404::-;1309:12;:27;;-1:-1:-1;;;;;;1309:27:8;-1:-1:-1;;;;;1309:27:8;;;;;1358:15;1346:9;:27;;;-1:-1:-1;1383:20:8;;;1423:21;;1383:20;;1423:21;:::i;:::-;1413:7;:31;;;1489:6;;1470:49;;-1:-1:-1;;;;;1489:6:8;;;;1497:12;;1470:49;;;:::i;:::-;-1:-1:-1;;;;;3392:15:11;;;3374:34;;3444:15;;;;3439:2;3424:18;;3417:43;3491:2;3476:18;;3469:34;3324:2;3309:18;1470:49:8;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;1454:13:8;:65;;-1:-1:-1;;;;;;1454:65:8;-1:-1:-1;;;;;1454:65:8;;;;;;;;;;-1:-1:-1;;1123:404:8:o;1533:193::-;1595:4;1628:11;-1:-1:-1;;;;;1615:24:8;:9;-1:-1:-1;;;;;1615:24:8;;1611:109;;-1:-1:-1;1662:4:8;;1533:193;-1:-1:-1;1533:193:8:o;1611:109::-;-1:-1:-1;1704:5:8;;1533:193;-1:-1:-1;1533:193:8:o;1611:109::-;1533:193;;;:::o;2059:140::-;2113:23;2125:10;2113:11;:23::i;:::-;2104:65;;;;-1:-1:-1;;;2104:65:8;;3716:2:11;2104:65:8;;;3698:21:11;3755:2;3735:18;;;3728:30;3794;3774:18;;;3767:58;3842:18;;2104:65:8;;;;;;;;2179:13;:11;:13::i;:::-;2059:140::o;2603:802::-;2657:23;2669:10;2657:11;:23::i;:::-;2654:745;;;2785:1;2776:8;;:10;;;;:::i;:::-;2765:7;;:22;;;;:::i;:::-;2746:15;:41;2742:502;2654:745;2742:502;2059:140::o;-1:-1:-1:-;;;;;;;;:::o;404:591:11:-;474:6;482;535:2;523:9;514:7;510:23;506:32;503:52;;;551:1;548;541:12;503:52;591:9;578:23;620:18;661:2;653:6;650:14;647:34;;;677:1;674;667:12;647:34;715:6;704:9;700:22;690:32;;760:7;753:4;749:2;745:13;741:27;731:55;;782:1;779;772:12;731:55;822:2;809:16;848:2;840:6;837:14;834:34;;;864:1;861;854:12;834:34;909:7;904:2;895:6;891:2;887:15;883:24;880:37;877:57;;;930:1;927;920:12;877:57;961:2;953:11;;;;;983:6;;-1:-1:-1;404:591:11;;-1:-1:-1;;;;404:591:11:o;1000:676::-;1183:6;1176:14;1169:22;1158:9;1151:41;1132:4;1211:2;1249;1244;1233:9;1229:18;1222:30;1281:6;1275:13;1324:6;1319:2;1308:9;1304:18;1297:34;1349:1;1359:140;1373:6;1370:1;1367:13;1359:140;;;1468:14;;;1464:23;;1458:30;1434:17;;;1453:2;1430:26;1423:66;1388:10;;1359:140;;;1517:6;1514:1;1511:13;1508:91;;;1587:1;1582:2;1573:6;1562:9;1558:22;1554:31;1547:42;1508:91;-1:-1:-1;1660:2:11;1639:15;-1:-1:-1;;1635:29:11;1620:45;;;;1667:2;1616:54;;1000:676;-1:-1:-1;;;;1000:676:11:o;1904:173::-;1972:20;;-1:-1:-1;;;;;2021:31:11;;2011:42;;2001:70;;2067:1;2064;2057:12;2082:254;2150:6;2158;2211:2;2199:9;2190:7;2186:23;2182:32;2179:52;;;2227:1;2224;2217:12;2179:52;2250:29;2269:9;2250:29;:::i;:::-;2240:39;2326:2;2311:18;;;;2298:32;;-1:-1:-1;;;2082:254:11:o;2341:186::-;2400:6;2453:2;2441:9;2432:7;2428:23;2424:32;2421:52;;;2469:1;2466;2459:12;2421:52;2492:29;2511:9;2492:29;:::i;:::-;2482:39;2341:186;-1:-1:-1;;;2341:186:11:o;2724:127::-;2785:10;2780:3;2776:20;2773:1;2766:31;2816:4;2813:1;2806:15;2840:4;2837:1;2830:15;2856:125;2896:4;2924:1;2921;2918:8;2915:34;;;2929:18;;:::i;:::-;-1:-1:-1;2966:9:11;;2856:125::o;2986:128::-;3026:3;3057:1;3053:6;3050:1;3047:13;3044:39;;;3063:18;;:::i;:::-;-1:-1:-1;3099:9:11;;2986:128::o;3871:217::-;3911:1;3937;3927:132;;3981:10;3976:3;3972:20;3969:1;3962:31;4016:4;4013:1;4006:15;4044:4;4041:1;4034:15;3927:132;-1:-1:-1;4073:9:11;;3871:217::o", - "linkReferences": {}, - "immutableReferences": { - "2580": [ - { - "start": 281, - "length": 32 - }, - { - "start": 622, - "length": 32 - } - ] - } - }, - "ast": { - "absolutePath": "/mnt/c/Users/PizzaHi5/Documents/CreatorDAO/CreatorDAO/src/AssetCreationDAO.sol", - "id": 2759, - "exportedSymbols": { - "Address": [ - 2557 - ], - "AssetCreationDAO": [ - 2758 - ], - "IERC20": [ - 1922 - ], - "KeeperBase": [ - 29 - ], - "KeeperCompatible": [ - 38 - ], - "KeeperCompatibleInterface": [ - 57 - ], - "SafeERC20": [ - 2146 - ], - "TokenTimelock": [ - 2262 - ] - }, - "nodeType": "SourceUnit", - "src": "32:3375:8", - "nodes": [ - { - "id": 2559, - "nodeType": "PragmaDirective", - "src": "32:23:8", - "literals": [ - "solidity", - "^", - "0.8", - ".0" - ] - }, - { - "id": 2560, - "nodeType": "ImportDirective", - "src": "57:56:8", - "absolutePath": "/mnt/c/Users/PizzaHi5/Documents/CreatorDAO/CreatorDAO/lib/openzeppelin-contracts/contracts/token/ERC20/IERC20.sol", - "file": "@openzeppelin/contracts/token/ERC20/IERC20.sol", - "nameLocation": "-1:-1:-1", - "scope": 2759, - "sourceUnit": 1923, - "symbolAliases": [], - "unitAlias": "" - }, - { - "id": 2561, - "nodeType": "ImportDirective", - "src": "114:69:8", - "absolutePath": "/mnt/c/Users/PizzaHi5/Documents/CreatorDAO/CreatorDAO/lib/openzeppelin-contracts/contracts/token/ERC20/utils/TokenTimelock.sol", - "file": "@openzeppelin/contracts/token/ERC20/utils/TokenTimelock.sol", - "nameLocation": "-1:-1:-1", - "scope": 2759, - "sourceUnit": 2263, - "symbolAliases": [], - "unitAlias": "" - }, - { - "id": 2562, - "nodeType": "ImportDirective", - "src": "184:60:8", - "absolutePath": "/mnt/c/Users/PizzaHi5/Documents/CreatorDAO/CreatorDAO/lib/chainlink/contracts/src/v0.8/KeeperCompatible.sol", - "file": "@chainlink/contracts/src/v0.8/KeeperCompatible.sol", - "nameLocation": "-1:-1:-1", - "scope": 2759, - "sourceUnit": 39, - "symbolAliases": [], - "unitAlias": "" - }, - { - "id": 2758, - "nodeType": "ContractDefinition", - "src": "317:3090:8", - "nodes": [ - { - "id": 2567, - "nodeType": "VariableDeclaration", - "src": "379:35:8", - "constant": false, - "mutability": "mutable", - "name": "tokenTimeLock", - "nameLocation": "401:13:8", - "scope": 2758, - "stateVariable": true, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_contract$_TokenTimelock_$2262", - "typeString": "contract TokenTimelock" - }, - "typeName": { - "id": 2566, - "nodeType": "UserDefinedTypeName", - "pathNode": { - "id": 2565, - "name": "TokenTimelock", - "nodeType": "IdentifierPath", - "referencedDeclaration": 2262, - "src": "379:13:8" - }, - "referencedDeclaration": 2262, - "src": "379:13:8", - "typeDescriptions": { - "typeIdentifier": "t_contract$_TokenTimelock_$2262", - "typeString": "contract TokenTimelock" - } - }, - "visibility": "private" - }, - { - "id": 2569, - "nodeType": "VariableDeclaration", - "src": "487:24:8", - "constant": false, - "mutability": "mutable", - "name": "duration", - "nameLocation": "503:8:8", - "scope": 2758, - "stateVariable": true, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 2568, - "name": "uint256", - "nodeType": "ElementaryTypeName", - "src": "487:7:8", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "visibility": "private" - }, - { - "id": 2571, - "nodeType": "VariableDeclaration", - "src": "517:25:8", - "constant": false, - "mutability": "mutable", - "name": "startTime", - "nameLocation": "533:9:8", - "scope": 2758, - "stateVariable": true, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 2570, - "name": "uint256", - "nodeType": "ElementaryTypeName", - "src": "517:7:8", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "visibility": "private" - }, - { - "id": 2573, - "nodeType": "VariableDeclaration", - "src": "548:23:8", - "constant": false, - "mutability": "mutable", - "name": "endTime", - "nameLocation": "564:7:8", - "scope": 2758, - "stateVariable": true, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 2572, - "name": "uint256", - "nodeType": "ElementaryTypeName", - "src": "548:7:8", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "visibility": "private" - }, - { - "id": 2576, - "nodeType": "VariableDeclaration", - "src": "577:34:8", - "constant": true, - "mutability": "constant", - "name": "USER_PENALTY", - "nameLocation": "594:12:8", - "scope": 2758, - "stateVariable": true, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 2574, - "name": "uint256", - "nodeType": "ElementaryTypeName", - "src": "577:7:8", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "value": { - "hexValue": "3130", - "id": 2575, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "number", - "lValueRequested": false, - "nodeType": "Literal", - "src": "609:2:8", - "typeDescriptions": { - "typeIdentifier": "t_rational_10_by_1", - "typeString": "int_const 10" - }, - "value": "10" - }, - "visibility": "internal" - }, - { - "id": 2578, - "nodeType": "VariableDeclaration", - "src": "640:40:8", - "constant": false, - "mutability": "immutable", - "name": "i_raisedAmount", - "nameLocation": "666:14:8", - "scope": 2758, - "stateVariable": true, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 2577, - "name": "uint256", - "nodeType": "ElementaryTypeName", - "src": "640:7:8", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "visibility": "private" - }, - { - "id": 2580, - "nodeType": "VariableDeclaration", - "src": "687:37:8", - "constant": false, - "mutability": "immutable", - "name": "i_assetUser", - "nameLocation": "713:11:8", - "scope": 2758, - "stateVariable": true, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "typeName": { - "id": 2579, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "687:7:8", - "stateMutability": "nonpayable", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "visibility": "private" - }, - { - "id": 2582, - "nodeType": "VariableDeclaration", - "src": "730:30:8", - "constant": false, - "mutability": "mutable", - "name": "tokens", - "nameLocation": "754:6:8", - "scope": 2758, - "stateVariable": true, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_address_payable", - "typeString": "address payable" - }, - "typeName": { - "id": 2581, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "730:15:8", - "stateMutability": "payable", - "typeDescriptions": { - "typeIdentifier": "t_address_payable", - "typeString": "address payable" - } - }, - "visibility": "private" - }, - { - "id": 2584, - "nodeType": "VariableDeclaration", - "src": "766:28:8", - "constant": false, - "mutability": "mutable", - "name": "assetCreator", - "nameLocation": "782:12:8", - "scope": 2758, - "stateVariable": true, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "typeName": { - "id": 2583, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "766:7:8", - "stateMutability": "nonpayable", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "visibility": "private" - }, - { - "id": 2587, - "nodeType": "VariableDeclaration", - "src": "809:20:8", - "constant": false, - "functionSelector": "bf0ae63d", - "mutability": "mutable", - "name": "ierc20", - "nameLocation": "823:6:8", - "scope": 2758, - "stateVariable": true, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_contract$_IERC20_$1922", - "typeString": "contract IERC20" - }, - "typeName": { - "id": 2586, - "nodeType": "UserDefinedTypeName", - "pathNode": { - "id": 2585, - "name": "IERC20", - "nodeType": "IdentifierPath", - "referencedDeclaration": 1922, - "src": "809:6:8" - }, - "referencedDeclaration": 1922, - "src": "809:6:8", - "typeDescriptions": { - "typeIdentifier": "t_contract$_IERC20_$1922", - "typeString": "contract IERC20" - } - }, - "visibility": "public" - }, - { - "id": 2603, - "nodeType": "FunctionDefinition", - "src": "840:234:8", - "body": { - "id": 2602, - "nodeType": "Block", - "src": "939:135:8", - "statements": [ - { - "expression": { - "id": 2596, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftHandSide": { - "id": 2594, - "name": "i_assetUser", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2580, - "src": "949:11:8", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "nodeType": "Assignment", - "operator": "=", - "rightHandSide": { - "id": 2595, - "name": "_user", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2591, - "src": "963:5:8", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "src": "949:19:8", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "id": 2597, - "nodeType": "ExpressionStatement", - "src": "949:19:8" - }, - { - "expression": { - "id": 2600, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftHandSide": { - "id": 2598, - "name": "i_raisedAmount", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2578, - "src": "978:14:8", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "Assignment", - "operator": "=", - "rightHandSide": { - "id": 2599, - "name": "_raisedAmount", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2589, - "src": "995:13:8", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "src": "978:30:8", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "id": 2601, - "nodeType": "ExpressionStatement", - "src": "978:30:8" - } - ] - }, - "implemented": true, - "kind": "constructor", - "modifiers": [], - "name": "", - "nameLocation": "-1:-1:-1", - "parameters": { - "id": 2592, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 2589, - "mutability": "mutable", - "name": "_raisedAmount", - "nameLocation": "896:13:8", - "nodeType": "VariableDeclaration", - "scope": 2603, - "src": "888:21:8", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 2588, - "name": "uint256", - "nodeType": "ElementaryTypeName", - "src": "888:7:8", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 2591, - "mutability": "mutable", - "name": "_user", - "nameLocation": "927:5:8", - "nodeType": "VariableDeclaration", - "scope": 2603, - "src": "919:13:8", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "typeName": { - "id": 2590, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "919:7:8", - "stateMutability": "nonpayable", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "visibility": "internal" - } - ], - "src": "852:86:8" - }, - "returnParameters": { - "id": 2593, - "nodeType": "ParameterList", - "parameters": [], - "src": "939:0:8" - }, - "scope": 2758, - "stateMutability": "nonpayable", - "virtual": false, - "visibility": "public" - }, - { - "id": 2640, - "nodeType": "FunctionDefinition", - "src": "1123:404:8", - "body": { - "id": 2639, - "nodeType": "Block", - "src": "1195:332:8", - "statements": [ - { - "expression": { - "id": 2612, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftHandSide": { - "id": 2610, - "name": "assetCreator", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2584, - "src": "1309:12:8", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "nodeType": "Assignment", - "operator": "=", - "rightHandSide": { - "id": 2611, - "name": "_creatorAddr", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2605, - "src": "1324:12:8", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "src": "1309:27:8", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "id": 2613, - "nodeType": "ExpressionStatement", - "src": "1309:27:8" - }, - { - "expression": { - "id": 2617, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftHandSide": { - "id": 2614, - "name": "startTime", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2571, - "src": "1346:9:8", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "Assignment", - "operator": "=", - "rightHandSide": { - "expression": { - "id": 2615, - "name": "block", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": -4, - "src": "1358:5:8", - "typeDescriptions": { - "typeIdentifier": "t_magic_block", - "typeString": "block" - } - }, - "id": 2616, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberName": "timestamp", - "nodeType": "MemberAccess", - "src": "1358:15:8", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "src": "1346:27:8", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "id": 2618, - "nodeType": "ExpressionStatement", - "src": "1346:27:8" - }, - { - "expression": { - "id": 2621, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftHandSide": { - "id": 2619, - "name": "duration", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2569, - "src": "1383:8:8", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "Assignment", - "operator": "=", - "rightHandSide": { - "id": 2620, - "name": "_duration", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2607, - "src": "1394:9:8", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "src": "1383:20:8", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "id": 2622, - "nodeType": "ExpressionStatement", - "src": "1383:20:8" - }, - { - "expression": { - "id": 2627, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftHandSide": { - "id": 2623, - "name": "endTime", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2573, - "src": "1413:7:8", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "Assignment", - "operator": "=", - "rightHandSide": { - "commonType": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "id": 2626, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "id": 2624, - "name": "startTime", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2571, - "src": "1423:9:8", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "BinaryOperation", - "operator": "+", - "rightExpression": { - "id": 2625, - "name": "_duration", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2607, - "src": "1435:9:8", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "src": "1423:21:8", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "src": "1413:31:8", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "id": 2628, - "nodeType": "ExpressionStatement", - "src": "1413:31:8" - }, - { - "expression": { - "id": 2637, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftHandSide": { - "id": 2629, - "name": "tokenTimeLock", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2567, - "src": "1454:13:8", - "typeDescriptions": { - "typeIdentifier": "t_contract$_TokenTimelock_$2262", - "typeString": "contract TokenTimelock" - } - }, - "nodeType": "Assignment", - "operator": "=", - "rightHandSide": { - "arguments": [ - { - "id": 2633, - "name": "ierc20", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2587, - "src": "1489:6:8", - "typeDescriptions": { - "typeIdentifier": "t_contract$_IERC20_$1922", - "typeString": "contract IERC20" - } - }, - { - "id": 2634, - "name": "_creatorAddr", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2605, - "src": "1497:12:8", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - { - "id": 2635, - "name": "endTime", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2573, - "src": "1511:7:8", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_contract$_IERC20_$1922", - "typeString": "contract IERC20" - }, - { - "typeIdentifier": "t_address", - "typeString": "address" - }, - { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - ], - "id": 2632, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "nodeType": "NewExpression", - "src": "1470:17:8", - "typeDescriptions": { - "typeIdentifier": "t_function_creation_nonpayable$_t_contract$_IERC20_$1922_$_t_address_$_t_uint256_$returns$_t_contract$_TokenTimelock_$2262_$", - "typeString": "function (contract IERC20,address,uint256) returns (contract TokenTimelock)" - }, - "typeName": { - "id": 2631, - "nodeType": "UserDefinedTypeName", - "pathNode": { - "id": 2630, - "name": "TokenTimelock", - "nodeType": "IdentifierPath", - "referencedDeclaration": 2262, - "src": "1474:13:8" - }, - "referencedDeclaration": 2262, - "src": "1474:13:8", - "typeDescriptions": { - "typeIdentifier": "t_contract$_TokenTimelock_$2262", - "typeString": "contract TokenTimelock" - } - } - }, - "id": 2636, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "1470:49:8", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_contract$_TokenTimelock_$2262", - "typeString": "contract TokenTimelock" - } - }, - "src": "1454:65:8", - "typeDescriptions": { - "typeIdentifier": "t_contract$_TokenTimelock_$2262", - "typeString": "contract TokenTimelock" - } - }, - "id": 2638, - "nodeType": "ExpressionStatement", - "src": "1454:65:8" - } - ] - }, - "functionSelector": "c6c6d292", - "implemented": true, - "kind": "function", - "modifiers": [], - "name": "startContract", - "nameLocation": "1132:13:8", - "parameters": { - "id": 2608, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 2605, - "mutability": "mutable", - "name": "_creatorAddr", - "nameLocation": "1155:12:8", - "nodeType": "VariableDeclaration", - "scope": 2640, - "src": "1147:20:8", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "typeName": { - "id": 2604, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "1147:7:8", - "stateMutability": "nonpayable", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 2607, - "mutability": "mutable", - "name": "_duration", - "nameLocation": "1177:9:8", - "nodeType": "VariableDeclaration", - "scope": 2640, - "src": "1169:17:8", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 2606, - "name": "uint256", - "nodeType": "ElementaryTypeName", - "src": "1169:7:8", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "visibility": "internal" - } - ], - "src": "1146:41:8" - }, - "returnParameters": { - "id": 2609, - "nodeType": "ParameterList", - "parameters": [], - "src": "1195:0:8" - }, - "scope": 2758, - "stateMutability": "nonpayable", - "virtual": false, - "visibility": "public" - }, - { - "id": 2658, - "nodeType": "FunctionDefinition", - "src": "1533:193:8", - "body": { - "id": 2657, - "nodeType": "Block", - "src": "1601:125:8", - "statements": [ - { - "condition": { - "commonType": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "id": 2649, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "id": 2647, - "name": "_userAddr", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2642, - "src": "1615:9:8", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "nodeType": "BinaryOperation", - "operator": "==", - "rightExpression": { - "id": 2648, - "name": "i_assetUser", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2580, - "src": "1628:11:8", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "src": "1615:24:8", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "falseBody": { - "id": 2655, - "nodeType": "Block", - "src": "1683:37:8", - "statements": [ - { - "expression": { - "hexValue": "66616c7365", - "id": 2653, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "bool", - "lValueRequested": false, - "nodeType": "Literal", - "src": "1704:5:8", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - "value": "false" - }, - "functionReturnParameters": 2646, - "id": 2654, - "nodeType": "Return", - "src": "1697:12:8" - } - ] - }, - "id": 2656, - "nodeType": "IfStatement", - "src": "1611:109:8", - "trueBody": { - "id": 2652, - "nodeType": "Block", - "src": "1641:36:8", - "statements": [ - { - "expression": { - "hexValue": "74727565", - "id": 2650, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "bool", - "lValueRequested": false, - "nodeType": "Literal", - "src": "1662:4:8", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - "value": "true" - }, - "functionReturnParameters": 2646, - "id": 2651, - "nodeType": "Return", - "src": "1655:11:8" - } - ] - } - } - ] - }, - "functionSelector": "f65861c3", - "implemented": true, - "kind": "function", - "modifiers": [], - "name": "checkIfUser", - "nameLocation": "1542:11:8", - "parameters": { - "id": 2643, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 2642, - "mutability": "mutable", - "name": "_userAddr", - "nameLocation": "1563:9:8", - "nodeType": "VariableDeclaration", - "scope": 2658, - "src": "1555:17:8", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "typeName": { - "id": 2641, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "1555:7:8", - "stateMutability": "nonpayable", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "visibility": "internal" - } - ], - "src": "1554:19:8" - }, - "returnParameters": { - "id": 2646, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 2645, - "mutability": "mutable", - "name": "", - "nameLocation": "-1:-1:-1", - "nodeType": "VariableDeclaration", - "scope": 2658, - "src": "1595:4:8", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - "typeName": { - "id": 2644, - "name": "bool", - "nodeType": "ElementaryTypeName", - "src": "1595:4:8", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "visibility": "internal" - } - ], - "src": "1594:6:8" - }, - "scope": 2758, - "stateMutability": "view", - "virtual": false, - "visibility": "public" - }, - { - "id": 2666, - "nodeType": "FunctionDefinition", - "src": "1732:85:8", - "body": { - "id": 2665, - "nodeType": "Block", - "src": "1782:35:8", - "statements": [ - { - "expression": { - "id": 2663, - "name": "i_assetUser", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2580, - "src": "1799:11:8", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "functionReturnParameters": 2662, - "id": 2664, - "nodeType": "Return", - "src": "1792:18:8" - } - ] - }, - "functionSelector": "832880e7", - "implemented": true, - "kind": "function", - "modifiers": [], - "name": "getUser", - "nameLocation": "1741:7:8", - "parameters": { - "id": 2659, - "nodeType": "ParameterList", - "parameters": [], - "src": "1749:2:8" - }, - "returnParameters": { - "id": 2662, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 2661, - "mutability": "mutable", - "name": "", - "nameLocation": "-1:-1:-1", - "nodeType": "VariableDeclaration", - "scope": 2666, - "src": "1773:7:8", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "typeName": { - "id": 2660, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "1773:7:8", - "stateMutability": "nonpayable", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "visibility": "internal" - } - ], - "src": "1772:9:8" - }, - "scope": 2758, - "stateMutability": "view", - "virtual": false, - "visibility": "public" - }, - { - "id": 2674, - "nodeType": "FunctionDefinition", - "src": "1823:89:8", - "body": { - "id": 2673, - "nodeType": "Block", - "src": "1876:36:8", - "statements": [ - { - "expression": { - "id": 2671, - "name": "assetCreator", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2584, - "src": "1893:12:8", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "functionReturnParameters": 2670, - "id": 2672, - "nodeType": "Return", - "src": "1886:19:8" - } - ] - }, - "functionSelector": "0ee2cb10", - "implemented": true, - "kind": "function", - "modifiers": [], - "name": "getCreator", - "nameLocation": "1832:10:8", - "parameters": { - "id": 2667, - "nodeType": "ParameterList", - "parameters": [], - "src": "1843:2:8" - }, - "returnParameters": { - "id": 2670, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 2669, - "mutability": "mutable", - "name": "", - "nameLocation": "-1:-1:-1", - "nodeType": "VariableDeclaration", - "scope": 2674, - "src": "1867:7:8", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "typeName": { - "id": 2668, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "1867:7:8", - "stateMutability": "nonpayable", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "visibility": "internal" - } - ], - "src": "1866:9:8" - }, - "scope": 2758, - "stateMutability": "view", - "virtual": false, - "visibility": "public" - }, - { - "id": 2685, - "nodeType": "FunctionDefinition", - "src": "1918:110:8", - "body": { - "id": 2684, - "nodeType": "Block", - "src": "1979:49:8", - "statements": [ - { - "expression": { - "commonType": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "id": 2682, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "id": 2679, - "name": "endTime", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2573, - "src": "1996:7:8", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "BinaryOperation", - "operator": "-", - "rightExpression": { - "expression": { - "id": 2680, - "name": "block", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": -4, - "src": "2006:5:8", - "typeDescriptions": { - "typeIdentifier": "t_magic_block", - "typeString": "block" - } - }, - "id": 2681, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberName": "timestamp", - "nodeType": "MemberAccess", - "src": "2006:15:8", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "src": "1996:25:8", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "functionReturnParameters": 2678, - "id": 2683, - "nodeType": "Return", - "src": "1989:32:8" - } - ] - }, - "functionSelector": "40c6ed97", - "implemented": true, - "kind": "function", - "modifiers": [], - "name": "checkTimeRemaining", - "nameLocation": "1927:18:8", - "parameters": { - "id": 2675, - "nodeType": "ParameterList", - "parameters": [], - "src": "1946:2:8" - }, - "returnParameters": { - "id": 2678, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 2677, - "mutability": "mutable", - "name": "", - "nameLocation": "-1:-1:-1", - "nodeType": "VariableDeclaration", - "scope": 2685, - "src": "1970:7:8", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 2676, - "name": "uint256", - "nodeType": "ElementaryTypeName", - "src": "1970:7:8", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "visibility": "internal" - } - ], - "src": "1969:9:8" - }, - "scope": 2758, - "stateMutability": "view", - "virtual": false, - "visibility": "public" - }, - { - "id": 2700, - "nodeType": "FunctionDefinition", - "src": "2059:140:8", - "body": { - "id": 2699, - "nodeType": "Block", - "src": "2094:105:8", - "statements": [ - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "expression": { - "id": 2690, - "name": "msg", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": -15, - "src": "2125:3:8", - "typeDescriptions": { - "typeIdentifier": "t_magic_message", - "typeString": "msg" - } - }, - "id": 2691, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberName": "sender", - "nodeType": "MemberAccess", - "src": "2125:10:8", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_address", - "typeString": "address" - } - ], - "id": 2689, - "name": "checkIfUser", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2658, - "src": "2113:11:8", - "typeDescriptions": { - "typeIdentifier": "t_function_internal_view$_t_address_$returns$_t_bool_$", - "typeString": "function (address) view returns (bool)" - } - }, - "id": 2692, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "2113:23:8", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - { - "hexValue": "596f752063616e6e6f7420656e64207468697320636f6e7472616374", - "id": 2693, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "string", - "lValueRequested": false, - "nodeType": "Literal", - "src": "2138:30:8", - "typeDescriptions": { - "typeIdentifier": "t_stringliteral_b05e687dced7a3196251141bf0691f21754b9ac08907237cdc0d34727c48043a", - "typeString": "literal_string \"You cannot end this contract\"" - }, - "value": "You cannot end this contract" - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - { - "typeIdentifier": "t_stringliteral_b05e687dced7a3196251141bf0691f21754b9ac08907237cdc0d34727c48043a", - "typeString": "literal_string \"You cannot end this contract\"" - } - ], - "id": 2688, - "name": "require", - "nodeType": "Identifier", - "overloadedDeclarations": [ - -18, - -18 - ], - "referencedDeclaration": -18, - "src": "2104:7:8", - "typeDescriptions": { - "typeIdentifier": "t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$", - "typeString": "function (bool,string memory) pure" - } - }, - "id": 2694, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "2104:65:8", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 2695, - "nodeType": "ExpressionStatement", - "src": "2104:65:8" - }, - { - "expression": { - "arguments": [], - "expression": { - "argumentTypes": [], - "id": 2696, - "name": "endContract", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2757, - "src": "2179:11:8", - "typeDescriptions": { - "typeIdentifier": "t_function_internal_nonpayable$__$returns$__$", - "typeString": "function ()" - } - }, - "id": 2697, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "2179:13:8", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 2698, - "nodeType": "ExpressionStatement", - "src": "2179:13:8" - } - ] - }, - "functionSelector": "facda813", - "implemented": true, - "kind": "function", - "modifiers": [], - "name": "callEndContract", - "nameLocation": "2068:15:8", - "parameters": { - "id": 2686, - "nodeType": "ParameterList", - "parameters": [], - "src": "2084:2:8" - }, - "returnParameters": { - "id": 2687, - "nodeType": "ParameterList", - "parameters": [], - "src": "2094:0:8" - }, - "scope": 2758, - "stateMutability": "nonpayable", - "virtual": false, - "visibility": "public" - }, - { - "id": 2718, - "nodeType": "FunctionDefinition", - "src": "2247:175:8", - "baseFunctions": [ - 50 - ], - "body": { - "id": 2717, - "nodeType": "Block", - "src": "2362:60:8", - "statements": [ - { - "expression": { - "id": 2715, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftHandSide": { - "id": 2709, - "name": "upkeepNeeded", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2705, - "src": "2372:12:8", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "nodeType": "Assignment", - "operator": "=", - "rightHandSide": { - "components": [ - { - "commonType": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "id": 2713, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "expression": { - "id": 2710, - "name": "block", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": -4, - "src": "2388:5:8", - "typeDescriptions": { - "typeIdentifier": "t_magic_block", - "typeString": "block" - } - }, - "id": 2711, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberName": "timestamp", - "nodeType": "MemberAccess", - "src": "2388:15:8", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "BinaryOperation", - "operator": ">=", - "rightExpression": { - "id": 2712, - "name": "endTime", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2573, - "src": "2407:7:8", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "src": "2388:26:8", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - } - ], - "id": 2714, - "isConstant": false, - "isInlineArray": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "nodeType": "TupleExpression", - "src": "2387:28:8", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "src": "2372:43:8", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "id": 2716, - "nodeType": "ExpressionStatement", - "src": "2372:43:8" - } - ] - }, - "functionSelector": "6e04ff0d", - "implemented": true, - "kind": "function", - "modifiers": [], - "name": "checkUpkeep", - "nameLocation": "2256:11:8", - "parameters": { - "id": 2703, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 2702, - "mutability": "mutable", - "name": "", - "nameLocation": "-1:-1:-1", - "nodeType": "VariableDeclaration", - "scope": 2718, - "src": "2269:14:8", - "stateVariable": false, - "storageLocation": "calldata", - "typeDescriptions": { - "typeIdentifier": "t_bytes_calldata_ptr", - "typeString": "bytes" - }, - "typeName": { - "id": 2701, - "name": "bytes", - "nodeType": "ElementaryTypeName", - "src": "2269:5:8", - "typeDescriptions": { - "typeIdentifier": "t_bytes_storage_ptr", - "typeString": "bytes" - } - }, - "visibility": "internal" - } - ], - "src": "2268:16:8" - }, - "returnParameters": { - "id": 2708, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 2705, - "mutability": "mutable", - "name": "upkeepNeeded", - "nameLocation": "2322:12:8", - "nodeType": "VariableDeclaration", - "scope": 2718, - "src": "2317:17:8", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - "typeName": { - "id": 2704, - "name": "bool", - "nodeType": "ElementaryTypeName", - "src": "2317:4:8", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 2707, - "mutability": "mutable", - "name": "performData", - "nameLocation": "2349:11:8", - "nodeType": "VariableDeclaration", - "scope": 2718, - "src": "2336:24:8", - "stateVariable": false, - "storageLocation": "memory", - "typeDescriptions": { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes" - }, - "typeName": { - "id": 2706, - "name": "bytes", - "nodeType": "ElementaryTypeName", - "src": "2336:5:8", - "typeDescriptions": { - "typeIdentifier": "t_bytes_storage_ptr", - "typeString": "bytes" - } - }, - "visibility": "internal" - } - ], - "src": "2307:54:8" - }, - "scope": 2758, - "stateMutability": "view", - "virtual": false, - "visibility": "external" - }, - { - "id": 2734, - "nodeType": "FunctionDefinition", - "src": "2456:141:8", - "baseFunctions": [ - 56 - ], - "body": { - "id": 2733, - "nodeType": "Block", - "src": "2513:84:8", - "statements": [ - { - "condition": { - "commonType": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "id": 2727, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "expression": { - "id": 2724, - "name": "block", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": -4, - "src": "2526:5:8", - "typeDescriptions": { - "typeIdentifier": "t_magic_block", - "typeString": "block" - } - }, - "id": 2725, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberName": "timestamp", - "nodeType": "MemberAccess", - "src": "2526:15:8", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "BinaryOperation", - "operator": ">=", - "rightExpression": { - "id": 2726, - "name": "endTime", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2573, - "src": "2545:7:8", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "src": "2526:26:8", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "id": 2732, - "nodeType": "IfStatement", - "src": "2523:68:8", - "trueBody": { - "id": 2731, - "nodeType": "Block", - "src": "2553:38:8", - "statements": [ - { - "expression": { - "arguments": [], - "expression": { - "argumentTypes": [], - "id": 2728, - "name": "endContract", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2757, - "src": "2567:11:8", - "typeDescriptions": { - "typeIdentifier": "t_function_internal_nonpayable$__$returns$__$", - "typeString": "function ()" - } - }, - "id": 2729, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "2567:13:8", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 2730, - "nodeType": "ExpressionStatement", - "src": "2567:13:8" - } - ] - } - } - ] - }, - "functionSelector": "4585e33b", - "implemented": true, - "kind": "function", - "modifiers": [], - "name": "performUpkeep", - "nameLocation": "2465:13:8", - "overrides": { - "id": 2722, - "nodeType": "OverrideSpecifier", - "overrides": [], - "src": "2504:8:8" - }, - "parameters": { - "id": 2721, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 2720, - "mutability": "mutable", - "name": "", - "nameLocation": "-1:-1:-1", - "nodeType": "VariableDeclaration", - "scope": 2734, - "src": "2479:14:8", - "stateVariable": false, - "storageLocation": "calldata", - "typeDescriptions": { - "typeIdentifier": "t_bytes_calldata_ptr", - "typeString": "bytes" - }, - "typeName": { - "id": 2719, - "name": "bytes", - "nodeType": "ElementaryTypeName", - "src": "2479:5:8", - "typeDescriptions": { - "typeIdentifier": "t_bytes_storage_ptr", - "typeString": "bytes" - } - }, - "visibility": "internal" - } - ], - "src": "2478:16:8" - }, - "returnParameters": { - "id": 2723, - "nodeType": "ParameterList", - "parameters": [], - "src": "2513:0:8" - }, - "scope": 2758, - "stateMutability": "nonpayable", - "virtual": false, - "visibility": "external" - }, - { - "id": 2757, - "nodeType": "FunctionDefinition", - "src": "2603:802:8", - "body": { - "id": 2756, - "nodeType": "Block", - "src": "2643:762:8", - "statements": [ - { - "condition": { - "arguments": [ - { - "expression": { - "id": 2738, - "name": "msg", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": -15, - "src": "2669:3:8", - "typeDescriptions": { - "typeIdentifier": "t_magic_message", - "typeString": "msg" - } - }, - "id": 2739, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberName": "sender", - "nodeType": "MemberAccess", - "src": "2669:10:8", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_address", - "typeString": "address" - } - ], - "id": 2737, - "name": "checkIfUser", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2658, - "src": "2657:11:8", - "typeDescriptions": { - "typeIdentifier": "t_function_internal_view$_t_address_$returns$_t_bool_$", - "typeString": "function (address) view returns (bool)" - } - }, - "id": 2740, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "2657:23:8", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "falseBody": { - "id": 2754, - "nodeType": "Block", - "src": "3260:139:8", - "statements": [] - }, - "id": 2755, - "nodeType": "IfStatement", - "src": "2654:745:8", - "trueBody": { - "id": 2753, - "nodeType": "Block", - "src": "2682:572:8", - "statements": [ - { - "condition": { - "commonType": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "id": 2749, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "expression": { - "id": 2741, - "name": "block", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": -4, - "src": "2746:5:8", - "typeDescriptions": { - "typeIdentifier": "t_magic_block", - "typeString": "block" - } - }, - "id": 2742, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberName": "timestamp", - "nodeType": "MemberAccess", - "src": "2746:15:8", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "BinaryOperation", - "operator": ">=", - "rightExpression": { - "commonType": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "id": 2748, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "id": 2743, - "name": "endTime", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2573, - "src": "2765:7:8", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "BinaryOperation", - "operator": "-", - "rightExpression": { - "components": [ - { - "commonType": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "id": 2746, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "id": 2744, - "name": "duration", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2569, - "src": "2776:8:8", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "BinaryOperation", - "operator": "/", - "rightExpression": { - "hexValue": "32", - "id": 2745, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "number", - "lValueRequested": false, - "nodeType": "Literal", - "src": "2785:1:8", - "typeDescriptions": { - "typeIdentifier": "t_rational_2_by_1", - "typeString": "int_const 2" - }, - "value": "2" - }, - "src": "2776:10:8", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - } - ], - "id": 2747, - "isConstant": false, - "isInlineArray": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "nodeType": "TupleExpression", - "src": "2775:12:8", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "src": "2765:22:8", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "src": "2746:41:8", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "falseBody": { - "id": 2751, - "nodeType": "Block", - "src": "3028:216:8", - "statements": [] - }, - "id": 2752, - "nodeType": "IfStatement", - "src": "2742:502:8", - "trueBody": { - "id": 2750, - "nodeType": "Block", - "src": "2789:233:8", - "statements": [] - } - } - ] - } - } - ] - }, - "implemented": true, - "kind": "function", - "modifiers": [], - "name": "endContract", - "nameLocation": "2612:11:8", - "parameters": { - "id": 2735, - "nodeType": "ParameterList", - "parameters": [], - "src": "2623:2:8" - }, - "returnParameters": { - "id": 2736, - "nodeType": "ParameterList", - "parameters": [], - "src": "2643:0:8" - }, - "scope": 2758, - "stateMutability": "nonpayable", - "virtual": true, - "visibility": "internal" - } - ], - "abstract": false, - "baseContracts": [ - { - "baseName": { - "id": 2563, - "name": "KeeperCompatibleInterface", - "nodeType": "IdentifierPath", - "referencedDeclaration": 57, - "src": "346:25:8" - }, - "id": 2564, - "nodeType": "InheritanceSpecifier", - "src": "346:25:8" - } - ], - "canonicalName": "AssetCreationDAO", - "contractDependencies": [ - 2262 - ], - "contractKind": "contract", - "fullyImplemented": true, - "linearizedBaseContracts": [ - 2758, - 57 - ], - "name": "AssetCreationDAO", - "nameLocation": "326:16:8", - "scope": 2759, - "usedErrors": [] - } - ] - } -} \ No newline at end of file diff --git a/out/AssetCreationr1.sol/AssetCreation.json b/out/AssetCreationr1.sol/AssetCreation.json deleted file mode 100644 index d47e180..0000000 --- a/out/AssetCreationr1.sol/AssetCreation.json +++ /dev/null @@ -1,2707 +0,0 @@ -{ - "abi": [ - { - "inputs": [ - { - "internalType": "uint256", - "name": "amount", - "type": "uint256" - }, - { - "internalType": "uint256", - "name": "_raisedAmount", - "type": "uint256" - }, - { - "internalType": "address", - "name": "_user", - "type": "address" - } - ], - "stateMutability": "nonpayable", - "type": "constructor" - }, - { - "inputs": [], - "name": "callEndContract", - "outputs": [], - "stateMutability": "nonpayable", - "type": "function" - }, - { - "inputs": [ - { - "internalType": "address", - "name": "_userAddr", - "type": "address" - } - ], - "name": "checkIfUser", - "outputs": [ - { - "internalType": "bool", - "name": "", - "type": "bool" - } - ], - "stateMutability": "view", - "type": "function" - }, - { - "inputs": [], - "name": "checkTimeRemaining", - "outputs": [ - { - "internalType": "uint256", - "name": "", - "type": "uint256" - } - ], - "stateMutability": "view", - "type": "function" - }, - { - "inputs": [ - { - "internalType": "bytes", - "name": "", - "type": "bytes" - } - ], - "name": "checkUpkeep", - "outputs": [ - { - "internalType": "bool", - "name": "upkeepNeeded", - "type": "bool" - }, - { - "internalType": "bytes", - "name": "performData", - "type": "bytes" - } - ], - "stateMutability": "view", - "type": "function" - }, - { - "inputs": [], - "name": "getCreator", - "outputs": [ - { - "internalType": "address", - "name": "", - "type": "address" - } - ], - "stateMutability": "view", - "type": "function" - }, - { - "inputs": [], - "name": "getUser", - "outputs": [ - { - "internalType": "address", - "name": "", - "type": "address" - } - ], - "stateMutability": "view", - "type": "function" - }, - { - "inputs": [], - "name": "ierc20", - "outputs": [ - { - "internalType": "contract IERC20", - "name": "", - "type": "address" - } - ], - "stateMutability": "view", - "type": "function" - }, - { - "inputs": [ - { - "internalType": "bytes", - "name": "", - "type": "bytes" - } - ], - "name": "performUpkeep", - "outputs": [], - "stateMutability": "nonpayable", - "type": "function" - }, - { - "inputs": [ - { - "internalType": "address", - "name": "_creatorAddr", - "type": "address" - }, - { - "internalType": "uint256", - "name": "_duration", - "type": "uint256" - } - ], - "name": "startContract", - "outputs": [], - "stateMutability": "nonpayable", - "type": "function" - } - ], - "bytecode": { - "object": "0x60c060405234801561001057600080fd5b50604051610de5380380610de583398101604081905261002f91610044565b6001600160a01b031660a0526080525061008a565b60008060006060848603121561005957600080fd5b83516020850151604086015191945092506001600160a01b038116811461007f57600080fd5b809150509250925092565b60805160a051610d246100c160003960008181610119015281816101bf0152818161029a01526102eb015260005050610d246000f3fe608060405234801561001057600080fd5b50600436106100935760003560e01c8063832880e711610066578063832880e714610117578063bf0ae63d1461013d578063c6c6d29214610150578063f65861c314610163578063facda8131461018657600080fd5b80630ee2cb101461009857806340c6ed97146100c25780634585e33b146100d85780636e04ff0d146100ed575b600080fd5b6005546001600160a01b03165b6040516001600160a01b0390911681526020015b60405180910390f35b6100ca61018e565b6040519081526020016100b9565b6100eb6100e636600461039d565b6101a3565b005b6101096100fb36600461039d565b505060035442101590606090565b6040516100b992919061040f565b7f00000000000000000000000000000000000000000000000000000000000000006100a5565b6006546100a5906001600160a01b031681565b6100eb61015e366004610485565b6101ba565b6101766101713660046104af565b610296565b60405190151581526020016100b9565b6100eb6102e6565b60004260035461019e91906104e7565b905090565b60035442106101b6576101b6600061036b565b5050565b6101e37f0000000000000000000000000000000000000000000000000000000000000000610296565b50600580546001600160a01b0319166001600160a01b03841617905542600281905560018290556102159082906104fe565b60038190556006546040516001600160a01b0390911691849161023790610390565b6001600160a01b0393841681529290911660208301526040820152606001604051809103906000f080158015610271573d6000803e3d6000fd5b50600080546001600160a01b0319166001600160a01b03929092169190911790555050565b60007f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0316826001600160a01b0316036102d957506001919050565b506000919050565b919050565b61030f7f0000000000000000000000000000000000000000000000000000000000000000610296565b61035f5760405162461bcd60e51b815260206004820152601c60248201527f596f752063616e6e6f7420656e64207468697320636f6e747261637400000000604482015260640160405180910390fd5b610369600161036b565b565b801561038d5760026001546103809190610516565b6003546101b691906104e7565b50565b6107b68061053983390190565b600080602083850312156103b057600080fd5b823567ffffffffffffffff808211156103c857600080fd5b818501915085601f8301126103dc57600080fd5b8135818111156103eb57600080fd5b8660208285010111156103fd57600080fd5b60209290920196919550909350505050565b821515815260006020604081840152835180604085015260005b8181101561044557858101830151858201606001528201610429565b81811115610457576000606083870101525b50601f01601f191692909201606001949350505050565b80356001600160a01b03811681146102e157600080fd5b6000806040838503121561049857600080fd5b6104a18361046e565b946020939093013593505050565b6000602082840312156104c157600080fd5b6104ca8261046e565b9392505050565b634e487b7160e01b600052601160045260246000fd5b6000828210156104f9576104f96104d1565b500390565b60008219821115610511576105116104d1565b500190565b60008261053357634e487b7160e01b600052601260045260246000fd5b50049056fe60e060405234801561001057600080fd5b506040516107b63803806107b683398101604081905261002f916100d0565b42811161009d5760405162461bcd60e51b815260206004820152603260248201527f546f6b656e54696d656c6f636b3a2072656c656173652074696d65206973206260448201527165666f72652063757272656e742074696d6560701b606482015260840160405180910390fd5b6001600160a01b03928316608052911660a05260c052610113565b6001600160a01b03811681146100cd57600080fd5b50565b6000806000606084860312156100e557600080fd5b83516100f0816100b8565b6020850151909350610101816100b8565b80925050604084015190509250925092565b60805160a05160c05161065c61015a60003960008181609f015260f00152600081816053015261029801526000818160ca015281816101820152610276015261065c6000f3fe608060405234801561001057600080fd5b506004361061004c5760003560e01c806338af3eed1461005157806386d1a69f14610090578063b91d40011461009a578063fc0c546a146100c8575b600080fd5b7f00000000000000000000000000000000000000000000000000000000000000005b6040516001600160a01b0390911681526020015b60405180910390f35b6100986100ee565b005b6040517f00000000000000000000000000000000000000000000000000000000000000008152602001610087565b7f0000000000000000000000000000000000000000000000000000000000000000610073565b7f000000000000000000000000000000000000000000000000000000000000000042101561017e5760405162461bcd60e51b815260206004820152603260248201527f546f6b656e54696d656c6f636b3a2063757272656e742074696d65206973206260448201527165666f72652072656c656173652074696d6560701b60648201526084015b60405180910390fd5b60007f00000000000000000000000000000000000000000000000000000000000000006040516370a0823160e01b81523060048201526001600160a01b0391909116906370a0823190602401602060405180830381865afa1580156101e7573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061020b919061056c565b9050600081116102695760405162461bcd60e51b815260206004820152602360248201527f546f6b656e54696d656c6f636b3a206e6f20746f6b656e7320746f2072656c6560448201526261736560e81b6064820152608401610175565b6102bd6001600160a01b037f0000000000000000000000000000000000000000000000000000000000000000167f0000000000000000000000000000000000000000000000000000000000000000836102c0565b50565b604080516001600160a01b038416602482015260448082018490528251808303909101815260649091019091526020810180516001600160e01b031663a9059cbb60e01b179052610312908490610317565b505050565b600061036c826040518060400160405280602081526020017f5361666545524332303a206c6f772d6c6576656c2063616c6c206661696c6564815250856001600160a01b03166103e99092919063ffffffff16565b805190915015610312578080602001905181019061038a9190610585565b6103125760405162461bcd60e51b815260206004820152602a60248201527f5361666545524332303a204552433230206f7065726174696f6e20646964206e6044820152691bdd081cdd58d8d9595960b21b6064820152608401610175565b60606103f88484600085610402565b90505b9392505050565b6060824710156104635760405162461bcd60e51b815260206004820152602660248201527f416464726573733a20696e73756666696369656e742062616c616e636520666f6044820152651c8818d85b1b60d21b6064820152608401610175565b6001600160a01b0385163b6104ba5760405162461bcd60e51b815260206004820152601d60248201527f416464726573733a2063616c6c20746f206e6f6e2d636f6e74726163740000006044820152606401610175565b600080866001600160a01b031685876040516104d691906105d7565b60006040518083038185875af1925050503d8060008114610513576040519150601f19603f3d011682016040523d82523d6000602084013e610518565b606091505b5091509150610528828286610533565b979650505050505050565b606083156105425750816103fb565b8251156105525782518084602001fd5b8160405162461bcd60e51b815260040161017591906105f3565b60006020828403121561057e57600080fd5b5051919050565b60006020828403121561059757600080fd5b815180151581146103fb57600080fd5b60005b838110156105c25781810151838201526020016105aa565b838111156105d1576000848401525b50505050565b600082516105e98184602087016105a7565b9190910192915050565b60208152600082518060208401526106128160408501602087016105a7565b601f01601f1916919091016040019291505056fea2646970667358221220a6d50bd92be244b5ebe34cda117e246f11612a7913fff13aa82571a2fc392f6364736f6c634300080d0033a2646970667358221220ea4c9b5d9a8479b4d110ee5e598c01a1c52404216988bba7f8dc52da0032851864736f6c634300080d0033", - "sourceMap": "284:3309:8:-:0;;;876:353;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;-1:-1:-1;;;;;1051:19:8;;;1080:30;;-1:-1:-1;284:3309:8;;14:412:10;102:6;110;118;171:2;159:9;150:7;146:23;142:32;139:52;;;187:1;184;177:12;139:52;210:16;;266:2;251:18;;245:25;313:2;298:18;;292:25;210:16;;-1:-1:-1;245:25:10;-1:-1:-1;;;;;;346:31:10;;336:42;;326:70;;392:1;389;382:12;326:70;415:5;405:15;;;14:412;;;;;:::o;:::-;284:3309:8;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;", - "linkReferences": {} - }, - "deployedBytecode": { - "object": "0x608060405234801561001057600080fd5b50600436106100935760003560e01c8063832880e711610066578063832880e714610117578063bf0ae63d1461013d578063c6c6d29214610150578063f65861c314610163578063facda8131461018657600080fd5b80630ee2cb101461009857806340c6ed97146100c25780634585e33b146100d85780636e04ff0d146100ed575b600080fd5b6005546001600160a01b03165b6040516001600160a01b0390911681526020015b60405180910390f35b6100ca61018e565b6040519081526020016100b9565b6100eb6100e636600461039d565b6101a3565b005b6101096100fb36600461039d565b505060035442101590606090565b6040516100b992919061040f565b7f00000000000000000000000000000000000000000000000000000000000000006100a5565b6006546100a5906001600160a01b031681565b6100eb61015e366004610485565b6101ba565b6101766101713660046104af565b610296565b60405190151581526020016100b9565b6100eb6102e6565b60004260035461019e91906104e7565b905090565b60035442106101b6576101b6600061036b565b5050565b6101e37f0000000000000000000000000000000000000000000000000000000000000000610296565b50600580546001600160a01b0319166001600160a01b03841617905542600281905560018290556102159082906104fe565b60038190556006546040516001600160a01b0390911691849161023790610390565b6001600160a01b0393841681529290911660208301526040820152606001604051809103906000f080158015610271573d6000803e3d6000fd5b50600080546001600160a01b0319166001600160a01b03929092169190911790555050565b60007f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0316826001600160a01b0316036102d957506001919050565b506000919050565b919050565b61030f7f0000000000000000000000000000000000000000000000000000000000000000610296565b61035f5760405162461bcd60e51b815260206004820152601c60248201527f596f752063616e6e6f7420656e64207468697320636f6e747261637400000000604482015260640160405180910390fd5b610369600161036b565b565b801561038d5760026001546103809190610516565b6003546101b691906104e7565b50565b6107b68061053983390190565b600080602083850312156103b057600080fd5b823567ffffffffffffffff808211156103c857600080fd5b818501915085601f8301126103dc57600080fd5b8135818111156103eb57600080fd5b8660208285010111156103fd57600080fd5b60209290920196919550909350505050565b821515815260006020604081840152835180604085015260005b8181101561044557858101830151858201606001528201610429565b81811115610457576000606083870101525b50601f01601f191692909201606001949350505050565b80356001600160a01b03811681146102e157600080fd5b6000806040838503121561049857600080fd5b6104a18361046e565b946020939093013593505050565b6000602082840312156104c157600080fd5b6104ca8261046e565b9392505050565b634e487b7160e01b600052601160045260246000fd5b6000828210156104f9576104f96104d1565b500390565b60008219821115610511576105116104d1565b500190565b60008261053357634e487b7160e01b600052601260045260246000fd5b50049056fe60e060405234801561001057600080fd5b506040516107b63803806107b683398101604081905261002f916100d0565b42811161009d5760405162461bcd60e51b815260206004820152603260248201527f546f6b656e54696d656c6f636b3a2072656c656173652074696d65206973206260448201527165666f72652063757272656e742074696d6560701b606482015260840160405180910390fd5b6001600160a01b03928316608052911660a05260c052610113565b6001600160a01b03811681146100cd57600080fd5b50565b6000806000606084860312156100e557600080fd5b83516100f0816100b8565b6020850151909350610101816100b8565b80925050604084015190509250925092565b60805160a05160c05161065c61015a60003960008181609f015260f00152600081816053015261029801526000818160ca015281816101820152610276015261065c6000f3fe608060405234801561001057600080fd5b506004361061004c5760003560e01c806338af3eed1461005157806386d1a69f14610090578063b91d40011461009a578063fc0c546a146100c8575b600080fd5b7f00000000000000000000000000000000000000000000000000000000000000005b6040516001600160a01b0390911681526020015b60405180910390f35b6100986100ee565b005b6040517f00000000000000000000000000000000000000000000000000000000000000008152602001610087565b7f0000000000000000000000000000000000000000000000000000000000000000610073565b7f000000000000000000000000000000000000000000000000000000000000000042101561017e5760405162461bcd60e51b815260206004820152603260248201527f546f6b656e54696d656c6f636b3a2063757272656e742074696d65206973206260448201527165666f72652072656c656173652074696d6560701b60648201526084015b60405180910390fd5b60007f00000000000000000000000000000000000000000000000000000000000000006040516370a0823160e01b81523060048201526001600160a01b0391909116906370a0823190602401602060405180830381865afa1580156101e7573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061020b919061056c565b9050600081116102695760405162461bcd60e51b815260206004820152602360248201527f546f6b656e54696d656c6f636b3a206e6f20746f6b656e7320746f2072656c6560448201526261736560e81b6064820152608401610175565b6102bd6001600160a01b037f0000000000000000000000000000000000000000000000000000000000000000167f0000000000000000000000000000000000000000000000000000000000000000836102c0565b50565b604080516001600160a01b038416602482015260448082018490528251808303909101815260649091019091526020810180516001600160e01b031663a9059cbb60e01b179052610312908490610317565b505050565b600061036c826040518060400160405280602081526020017f5361666545524332303a206c6f772d6c6576656c2063616c6c206661696c6564815250856001600160a01b03166103e99092919063ffffffff16565b805190915015610312578080602001905181019061038a9190610585565b6103125760405162461bcd60e51b815260206004820152602a60248201527f5361666545524332303a204552433230206f7065726174696f6e20646964206e6044820152691bdd081cdd58d8d9595960b21b6064820152608401610175565b60606103f88484600085610402565b90505b9392505050565b6060824710156104635760405162461bcd60e51b815260206004820152602660248201527f416464726573733a20696e73756666696369656e742062616c616e636520666f6044820152651c8818d85b1b60d21b6064820152608401610175565b6001600160a01b0385163b6104ba5760405162461bcd60e51b815260206004820152601d60248201527f416464726573733a2063616c6c20746f206e6f6e2d636f6e74726163740000006044820152606401610175565b600080866001600160a01b031685876040516104d691906105d7565b60006040518083038185875af1925050503d8060008114610513576040519150601f19603f3d011682016040523d82523d6000602084013e610518565b606091505b5091509150610528828286610533565b979650505050505050565b606083156105425750816103fb565b8251156105525782518084602001fd5b8160405162461bcd60e51b815260040161017591906105f3565b60006020828403121561057e57600080fd5b5051919050565b60006020828403121561059757600080fd5b815180151581146103fb57600080fd5b60005b838110156105c25781810151838201526020016105aa565b838111156105d1576000848401525b50505050565b600082516105e98184602087016105a7565b9190910192915050565b60208152600082518060208401526106128160408501602087016105a7565b601f01601f1916919091016040019291505056fea2646970667358221220a6d50bd92be244b5ebe34cda117e246f11612a7913fff13aa82571a2fc392f6364736f6c634300080d0033a2646970667358221220ea4c9b5d9a8479b4d110ee5e598c01a1c52404216988bba7f8dc52da0032851864736f6c634300080d0033", - "sourceMap": "284:3309:8:-:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;1999:89;2069:12;;-1:-1:-1;;;;;2069:12:8;1999:89;;;-1:-1:-1;;;;;178:32:10;;;160:51;;148:2;133:18;1999:89:8;;;;;;;;2094:110;;;:::i;:::-;;;368:25:10;;;356:2;341:18;2094:110:8;222:177:10;2668:147:8;;;;;;:::i;:::-;;:::i;:::-;;2459:175;;;;;;:::i;:::-;-1:-1:-1;;2619:7:8;;2600:15;:26;;;2548:24;;2459:175;;;;;;;;;:::i;1908:85::-;1975:11;1908:85;;800:20;;;;;-1:-1:-1;;;;;800:20:8;;;1278:425;;;;;;:::i;:::-;;:::i;1709:193::-;;;;;;:::i;:::-;;:::i;:::-;;;2697:14:10;;2690:22;2672:41;;2660:2;2645:18;1709:193:8;2532:187:10;2235:176:8;;;:::i;2094:110::-;2146:7;2182:15;2172:7;;:25;;;;:::i;:::-;2165:32;;2094:110;:::o;2668:147::-;2757:7;;2738:15;:26;2735:74;;2780:18;2792:5;2780:11;:18::i;:::-;2668:147;;:::o;1278:425::-;1392:24;1404:11;1392;:24::i;:::-;-1:-1:-1;1486:12:8;:27;;-1:-1:-1;;;;;;1486:27:8;-1:-1:-1;;;;;1486:27:8;;;;;1535:15;1523:9;:27;;;-1:-1:-1;1560:20:8;;;1600:21;;1560:20;;1600:21;:::i;:::-;1590:7;:31;;;1666:6;;1647:49;;-1:-1:-1;;;;;1666:6:8;;;;1674:12;;1647:49;;;:::i;:::-;-1:-1:-1;;;;;3392:15:10;;;3374:34;;3444:15;;;;3439:2;3424:18;;3417:43;3491:2;3476:18;;3469:34;3324:2;3309:18;1647:49:8;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;1631:13:8;:65;;-1:-1:-1;;;;;;1631:65:8;-1:-1:-1;;;;;1631:65:8;;;;;;;;;;-1:-1:-1;;1278:425:8:o;1709:193::-;1771:4;1804:11;-1:-1:-1;;;;;1791:24:8;:9;-1:-1:-1;;;;;1791:24:8;;1787:109;;-1:-1:-1;1838:4:8;;1709:193;-1:-1:-1;1709:193:8:o;1787:109::-;-1:-1:-1;1880:5:8;;1709:193;-1:-1:-1;1709:193:8:o;1787:109::-;1709:193;;;:::o;2235:176::-;2320:24;2332:11;2320;:24::i;:::-;2311:66;;;;-1:-1:-1;;;2311:66:8;;3716:2:10;2311:66:8;;;3698:21:10;3755:2;3735:18;;;3728:30;3794;3774:18;;;3767:58;3842:18;;2311:66:8;;;;;;;;2387:17;2399:4;2387:11;:17::i;:::-;2235:176::o;2821:770::-;2887:7;2884:701;;;3000:1;2991:8;;:10;;;;:::i;:::-;2980:7;;:22;;;;:::i;2884:701::-;2821:770;:::o;-1:-1:-1:-;;;;;;;;:::o;404:591:10:-;474:6;482;535:2;523:9;514:7;510:23;506:32;503:52;;;551:1;548;541:12;503:52;591:9;578:23;620:18;661:2;653:6;650:14;647:34;;;677:1;674;667:12;647:34;715:6;704:9;700:22;690:32;;760:7;753:4;749:2;745:13;741:27;731:55;;782:1;779;772:12;731:55;822:2;809:16;848:2;840:6;837:14;834:34;;;864:1;861;854:12;834:34;909:7;904:2;895:6;891:2;887:15;883:24;880:37;877:57;;;930:1;927;920:12;877:57;961:2;953:11;;;;;983:6;;-1:-1:-1;404:591:10;;-1:-1:-1;;;;404:591:10:o;1000:676::-;1183:6;1176:14;1169:22;1158:9;1151:41;1132:4;1211:2;1249;1244;1233:9;1229:18;1222:30;1281:6;1275:13;1324:6;1319:2;1308:9;1304:18;1297:34;1349:1;1359:140;1373:6;1370:1;1367:13;1359:140;;;1468:14;;;1464:23;;1458:30;1434:17;;;1453:2;1430:26;1423:66;1388:10;;1359:140;;;1517:6;1514:1;1511:13;1508:91;;;1587:1;1582:2;1573:6;1562:9;1558:22;1554:31;1547:42;1508:91;-1:-1:-1;1660:2:10;1639:15;-1:-1:-1;;1635:29:10;1620:45;;;;1667:2;1616:54;;1000:676;-1:-1:-1;;;;1000:676:10:o;1904:173::-;1972:20;;-1:-1:-1;;;;;2021:31:10;;2011:42;;2001:70;;2067:1;2064;2057:12;2082:254;2150:6;2158;2211:2;2199:9;2190:7;2186:23;2182:32;2179:52;;;2227:1;2224;2217:12;2179:52;2250:29;2269:9;2250:29;:::i;:::-;2240:39;2326:2;2311:18;;;;2298:32;;-1:-1:-1;;;2082:254:10:o;2341:186::-;2400:6;2453:2;2441:9;2432:7;2428:23;2424:32;2421:52;;;2469:1;2466;2459:12;2421:52;2492:29;2511:9;2492:29;:::i;:::-;2482:39;2341:186;-1:-1:-1;;;2341:186:10:o;2724:127::-;2785:10;2780:3;2776:20;2773:1;2766:31;2816:4;2813:1;2806:15;2840:4;2837:1;2830:15;2856:125;2896:4;2924:1;2921;2918:8;2915:34;;;2929:18;;:::i;:::-;-1:-1:-1;2966:9:10;;2856:125::o;2986:128::-;3026:3;3057:1;3053:6;3050:1;3047:13;3044:39;;;3063:18;;:::i;:::-;-1:-1:-1;3099:9:10;;2986:128::o;3871:217::-;3911:1;3937;3927:132;;3981:10;3976:3;3972:20;3969:1;3962:31;4016:4;4013:1;4006:15;4044:4;4041:1;4034:15;3927:132;-1:-1:-1;4073:9:10;;3871:217::o", - "linkReferences": {}, - "immutableReferences": { - "2580": [ - { - "start": 281, - "length": 32 - }, - { - "start": 447, - "length": 32 - }, - { - "start": 666, - "length": 32 - }, - { - "start": 747, - "length": 32 - } - ] - } - }, - "ast": { - "absolutePath": "/mnt/c/Users/PizzaHi5/Documents/CreatorDAO/CreatorDAO/src/AssetCreationr1.sol", - "id": 2769, - "exportedSymbols": { - "Address": [ - 2557 - ], - "AssetCreation": [ - 2768 - ], - "IERC20": [ - 1922 - ], - "KeeperBase": [ - 29 - ], - "KeeperCompatible": [ - 38 - ], - "KeeperCompatibleInterface": [ - 57 - ], - "SafeERC20": [ - 2146 - ], - "TokenTimelock": [ - 2262 - ] - }, - "nodeType": "SourceUnit", - "src": "32:3561:8", - "nodes": [ - { - "id": 2559, - "nodeType": "PragmaDirective", - "src": "32:23:8", - "literals": [ - "solidity", - "^", - "0.8", - ".0" - ] - }, - { - "id": 2560, - "nodeType": "ImportDirective", - "src": "57:56:8", - "absolutePath": "/mnt/c/Users/PizzaHi5/Documents/CreatorDAO/CreatorDAO/lib/openzeppelin-contracts/contracts/token/ERC20/IERC20.sol", - "file": "@openzeppelin/contracts/token/ERC20/IERC20.sol", - "nameLocation": "-1:-1:-1", - "scope": 2769, - "sourceUnit": 1923, - "symbolAliases": [], - "unitAlias": "" - }, - { - "id": 2561, - "nodeType": "ImportDirective", - "src": "114:69:8", - "absolutePath": "/mnt/c/Users/PizzaHi5/Documents/CreatorDAO/CreatorDAO/lib/openzeppelin-contracts/contracts/token/ERC20/utils/TokenTimelock.sol", - "file": "@openzeppelin/contracts/token/ERC20/utils/TokenTimelock.sol", - "nameLocation": "-1:-1:-1", - "scope": 2769, - "sourceUnit": 2263, - "symbolAliases": [], - "unitAlias": "" - }, - { - "id": 2562, - "nodeType": "ImportDirective", - "src": "184:60:8", - "absolutePath": "/mnt/c/Users/PizzaHi5/Documents/CreatorDAO/CreatorDAO/lib/chainlink/contracts/src/v0.8/KeeperCompatible.sol", - "file": "@chainlink/contracts/src/v0.8/KeeperCompatible.sol", - "nameLocation": "-1:-1:-1", - "scope": 2769, - "sourceUnit": 39, - "symbolAliases": [], - "unitAlias": "" - }, - { - "id": 2768, - "nodeType": "ContractDefinition", - "src": "284:3309:8", - "nodes": [ - { - "id": 2567, - "nodeType": "VariableDeclaration", - "src": "343:35:8", - "constant": false, - "mutability": "mutable", - "name": "tokenTimeLock", - "nameLocation": "365:13:8", - "scope": 2768, - "stateVariable": true, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_contract$_TokenTimelock_$2262", - "typeString": "contract TokenTimelock" - }, - "typeName": { - "id": 2566, - "nodeType": "UserDefinedTypeName", - "pathNode": { - "id": 2565, - "name": "TokenTimelock", - "nodeType": "IdentifierPath", - "referencedDeclaration": 2262, - "src": "343:13:8" - }, - "referencedDeclaration": 2262, - "src": "343:13:8", - "typeDescriptions": { - "typeIdentifier": "t_contract$_TokenTimelock_$2262", - "typeString": "contract TokenTimelock" - } - }, - "visibility": "private" - }, - { - "id": 2569, - "nodeType": "VariableDeclaration", - "src": "385:24:8", - "constant": false, - "mutability": "mutable", - "name": "duration", - "nameLocation": "401:8:8", - "scope": 2768, - "stateVariable": true, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 2568, - "name": "uint256", - "nodeType": "ElementaryTypeName", - "src": "385:7:8", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "visibility": "private" - }, - { - "id": 2571, - "nodeType": "VariableDeclaration", - "src": "415:25:8", - "constant": false, - "mutability": "mutable", - "name": "startTime", - "nameLocation": "431:9:8", - "scope": 2768, - "stateVariable": true, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 2570, - "name": "uint256", - "nodeType": "ElementaryTypeName", - "src": "415:7:8", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "visibility": "private" - }, - { - "id": 2573, - "nodeType": "VariableDeclaration", - "src": "446:23:8", - "constant": false, - "mutability": "mutable", - "name": "endTime", - "nameLocation": "462:7:8", - "scope": 2768, - "stateVariable": true, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 2572, - "name": "uint256", - "nodeType": "ElementaryTypeName", - "src": "446:7:8", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "visibility": "private" - }, - { - "id": 2576, - "nodeType": "VariableDeclaration", - "src": "475:34:8", - "constant": true, - "mutability": "constant", - "name": "USER_PENALTY", - "nameLocation": "492:12:8", - "scope": 2768, - "stateVariable": true, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 2574, - "name": "uint256", - "nodeType": "ElementaryTypeName", - "src": "475:7:8", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "value": { - "hexValue": "3130", - "id": 2575, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "number", - "lValueRequested": false, - "nodeType": "Literal", - "src": "507:2:8", - "typeDescriptions": { - "typeIdentifier": "t_rational_10_by_1", - "typeString": "int_const 10" - }, - "value": "10" - }, - "visibility": "internal" - }, - { - "id": 2578, - "nodeType": "VariableDeclaration", - "src": "538:40:8", - "constant": false, - "mutability": "immutable", - "name": "i_raisedAmount", - "nameLocation": "564:14:8", - "scope": 2768, - "stateVariable": true, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 2577, - "name": "uint256", - "nodeType": "ElementaryTypeName", - "src": "538:7:8", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "visibility": "private" - }, - { - "id": 2580, - "nodeType": "VariableDeclaration", - "src": "584:37:8", - "constant": false, - "mutability": "immutable", - "name": "i_assetUser", - "nameLocation": "610:11:8", - "scope": 2768, - "stateVariable": true, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "typeName": { - "id": 2579, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "584:7:8", - "stateMutability": "nonpayable", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "visibility": "private" - }, - { - "id": 2582, - "nodeType": "VariableDeclaration", - "src": "628:30:8", - "constant": false, - "mutability": "mutable", - "name": "tokens", - "nameLocation": "652:6:8", - "scope": 2768, - "stateVariable": true, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_address_payable", - "typeString": "address payable" - }, - "typeName": { - "id": 2581, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "628:15:8", - "stateMutability": "payable", - "typeDescriptions": { - "typeIdentifier": "t_address_payable", - "typeString": "address payable" - } - }, - "visibility": "private" - }, - { - "id": 2584, - "nodeType": "VariableDeclaration", - "src": "680:28:8", - "constant": false, - "mutability": "mutable", - "name": "assetCreator", - "nameLocation": "696:12:8", - "scope": 2768, - "stateVariable": true, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "typeName": { - "id": 2583, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "680:7:8", - "stateMutability": "nonpayable", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "visibility": "private" - }, - { - "id": 2587, - "nodeType": "VariableDeclaration", - "src": "719:70:8", - "constant": true, - "mutability": "constant", - "name": "vaultDAO", - "nameLocation": "736:8:8", - "scope": 2768, - "stateVariable": true, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "typeName": { - "id": 2585, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "719:7:8", - "stateMutability": "nonpayable", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "value": { - "hexValue": "307865436636643230353434443065383463613341623638334630333934313538453663373565416145", - "id": 2586, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "number", - "lValueRequested": false, - "nodeType": "Literal", - "src": "747:42:8", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "value": "0xeCf6d20544D0e84ca3Ab683F0394158E6c75eAaE" - }, - "visibility": "internal" - }, - { - "id": 2590, - "nodeType": "VariableDeclaration", - "src": "800:20:8", - "constant": false, - "functionSelector": "bf0ae63d", - "mutability": "mutable", - "name": "ierc20", - "nameLocation": "814:6:8", - "scope": 2768, - "stateVariable": true, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_contract$_IERC20_$1922", - "typeString": "contract IERC20" - }, - "typeName": { - "id": 2589, - "nodeType": "UserDefinedTypeName", - "pathNode": { - "id": 2588, - "name": "IERC20", - "nodeType": "IdentifierPath", - "referencedDeclaration": 1922, - "src": "800:6:8" - }, - "referencedDeclaration": 1922, - "src": "800:6:8", - "typeDescriptions": { - "typeIdentifier": "t_contract$_IERC20_$1922", - "typeString": "contract IERC20" - } - }, - "visibility": "public" - }, - { - "id": 2608, - "nodeType": "FunctionDefinition", - "src": "876:353:8", - "body": { - "id": 2607, - "nodeType": "Block", - "src": "973:256:8", - "statements": [ - { - "expression": { - "id": 2601, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftHandSide": { - "id": 2599, - "name": "i_assetUser", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2580, - "src": "1051:11:8", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "nodeType": "Assignment", - "operator": "=", - "rightHandSide": { - "id": 2600, - "name": "_user", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2596, - "src": "1065:5:8", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "src": "1051:19:8", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "id": 2602, - "nodeType": "ExpressionStatement", - "src": "1051:19:8" - }, - { - "expression": { - "id": 2605, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftHandSide": { - "id": 2603, - "name": "i_raisedAmount", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2578, - "src": "1080:14:8", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "Assignment", - "operator": "=", - "rightHandSide": { - "id": 2604, - "name": "_raisedAmount", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2594, - "src": "1097:13:8", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "src": "1080:30:8", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "id": 2606, - "nodeType": "ExpressionStatement", - "src": "1080:30:8" - } - ] - }, - "implemented": true, - "kind": "constructor", - "modifiers": [], - "name": "", - "nameLocation": "-1:-1:-1", - "parameters": { - "id": 2597, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 2592, - "mutability": "mutable", - "name": "amount", - "nameLocation": "906:6:8", - "nodeType": "VariableDeclaration", - "scope": 2608, - "src": "898:14:8", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 2591, - "name": "uint256", - "nodeType": "ElementaryTypeName", - "src": "898:7:8", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 2594, - "mutability": "mutable", - "name": "_raisedAmount", - "nameLocation": "930:13:8", - "nodeType": "VariableDeclaration", - "scope": 2608, - "src": "922:21:8", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 2593, - "name": "uint256", - "nodeType": "ElementaryTypeName", - "src": "922:7:8", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 2596, - "mutability": "mutable", - "name": "_user", - "nameLocation": "961:5:8", - "nodeType": "VariableDeclaration", - "scope": 2608, - "src": "953:13:8", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "typeName": { - "id": 2595, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "953:7:8", - "stateMutability": "nonpayable", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "visibility": "internal" - } - ], - "src": "888:84:8" - }, - "returnParameters": { - "id": 2598, - "nodeType": "ParameterList", - "parameters": [], - "src": "973:0:8" - }, - "scope": 2768, - "stateMutability": "nonpayable", - "virtual": false, - "visibility": "public" - }, - { - "id": 2650, - "nodeType": "FunctionDefinition", - "src": "1278:425:8", - "body": { - "id": 2649, - "nodeType": "Block", - "src": "1350:353:8", - "statements": [ - { - "expression": { - "components": [ - { - "arguments": [ - { - "id": 2616, - "name": "i_assetUser", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2580, - "src": "1404:11:8", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_address", - "typeString": "address" - } - ], - "id": 2615, - "name": "checkIfUser", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2668, - "src": "1392:11:8", - "typeDescriptions": { - "typeIdentifier": "t_function_internal_view$_t_address_$returns$_t_bool_$", - "typeString": "function (address) view returns (bool)" - } - }, - "id": 2617, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "1392:24:8", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - } - ], - "id": 2618, - "isConstant": false, - "isInlineArray": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "nodeType": "TupleExpression", - "src": "1391:26:8", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "id": 2619, - "nodeType": "ExpressionStatement", - "src": "1391:26:8" - }, - { - "expression": { - "id": 2622, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftHandSide": { - "id": 2620, - "name": "assetCreator", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2584, - "src": "1486:12:8", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "nodeType": "Assignment", - "operator": "=", - "rightHandSide": { - "id": 2621, - "name": "_creatorAddr", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2610, - "src": "1501:12:8", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "src": "1486:27:8", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "id": 2623, - "nodeType": "ExpressionStatement", - "src": "1486:27:8" - }, - { - "expression": { - "id": 2627, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftHandSide": { - "id": 2624, - "name": "startTime", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2571, - "src": "1523:9:8", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "Assignment", - "operator": "=", - "rightHandSide": { - "expression": { - "id": 2625, - "name": "block", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": -4, - "src": "1535:5:8", - "typeDescriptions": { - "typeIdentifier": "t_magic_block", - "typeString": "block" - } - }, - "id": 2626, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberName": "timestamp", - "nodeType": "MemberAccess", - "src": "1535:15:8", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "src": "1523:27:8", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "id": 2628, - "nodeType": "ExpressionStatement", - "src": "1523:27:8" - }, - { - "expression": { - "id": 2631, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftHandSide": { - "id": 2629, - "name": "duration", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2569, - "src": "1560:8:8", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "Assignment", - "operator": "=", - "rightHandSide": { - "id": 2630, - "name": "_duration", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2612, - "src": "1571:9:8", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "src": "1560:20:8", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "id": 2632, - "nodeType": "ExpressionStatement", - "src": "1560:20:8" - }, - { - "expression": { - "id": 2637, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftHandSide": { - "id": 2633, - "name": "endTime", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2573, - "src": "1590:7:8", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "Assignment", - "operator": "=", - "rightHandSide": { - "commonType": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "id": 2636, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "id": 2634, - "name": "startTime", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2571, - "src": "1600:9:8", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "BinaryOperation", - "operator": "+", - "rightExpression": { - "id": 2635, - "name": "_duration", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2612, - "src": "1612:9:8", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "src": "1600:21:8", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "src": "1590:31:8", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "id": 2638, - "nodeType": "ExpressionStatement", - "src": "1590:31:8" - }, - { - "expression": { - "id": 2647, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftHandSide": { - "id": 2639, - "name": "tokenTimeLock", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2567, - "src": "1631:13:8", - "typeDescriptions": { - "typeIdentifier": "t_contract$_TokenTimelock_$2262", - "typeString": "contract TokenTimelock" - } - }, - "nodeType": "Assignment", - "operator": "=", - "rightHandSide": { - "arguments": [ - { - "id": 2643, - "name": "ierc20", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2590, - "src": "1666:6:8", - "typeDescriptions": { - "typeIdentifier": "t_contract$_IERC20_$1922", - "typeString": "contract IERC20" - } - }, - { - "id": 2644, - "name": "_creatorAddr", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2610, - "src": "1674:12:8", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - { - "id": 2645, - "name": "endTime", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2573, - "src": "1688:7:8", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_contract$_IERC20_$1922", - "typeString": "contract IERC20" - }, - { - "typeIdentifier": "t_address", - "typeString": "address" - }, - { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - ], - "id": 2642, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "nodeType": "NewExpression", - "src": "1647:17:8", - "typeDescriptions": { - "typeIdentifier": "t_function_creation_nonpayable$_t_contract$_IERC20_$1922_$_t_address_$_t_uint256_$returns$_t_contract$_TokenTimelock_$2262_$", - "typeString": "function (contract IERC20,address,uint256) returns (contract TokenTimelock)" - }, - "typeName": { - "id": 2641, - "nodeType": "UserDefinedTypeName", - "pathNode": { - "id": 2640, - "name": "TokenTimelock", - "nodeType": "IdentifierPath", - "referencedDeclaration": 2262, - "src": "1651:13:8" - }, - "referencedDeclaration": 2262, - "src": "1651:13:8", - "typeDescriptions": { - "typeIdentifier": "t_contract$_TokenTimelock_$2262", - "typeString": "contract TokenTimelock" - } - } - }, - "id": 2646, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "1647:49:8", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_contract$_TokenTimelock_$2262", - "typeString": "contract TokenTimelock" - } - }, - "src": "1631:65:8", - "typeDescriptions": { - "typeIdentifier": "t_contract$_TokenTimelock_$2262", - "typeString": "contract TokenTimelock" - } - }, - "id": 2648, - "nodeType": "ExpressionStatement", - "src": "1631:65:8" - } - ] - }, - "functionSelector": "c6c6d292", - "implemented": true, - "kind": "function", - "modifiers": [], - "name": "startContract", - "nameLocation": "1287:13:8", - "parameters": { - "id": 2613, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 2610, - "mutability": "mutable", - "name": "_creatorAddr", - "nameLocation": "1310:12:8", - "nodeType": "VariableDeclaration", - "scope": 2650, - "src": "1302:20:8", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "typeName": { - "id": 2609, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "1302:7:8", - "stateMutability": "nonpayable", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 2612, - "mutability": "mutable", - "name": "_duration", - "nameLocation": "1332:9:8", - "nodeType": "VariableDeclaration", - "scope": 2650, - "src": "1324:17:8", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 2611, - "name": "uint256", - "nodeType": "ElementaryTypeName", - "src": "1324:7:8", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "visibility": "internal" - } - ], - "src": "1301:41:8" - }, - "returnParameters": { - "id": 2614, - "nodeType": "ParameterList", - "parameters": [], - "src": "1350:0:8" - }, - "scope": 2768, - "stateMutability": "nonpayable", - "virtual": false, - "visibility": "public" - }, - { - "id": 2668, - "nodeType": "FunctionDefinition", - "src": "1709:193:8", - "body": { - "id": 2667, - "nodeType": "Block", - "src": "1777:125:8", - "statements": [ - { - "condition": { - "commonType": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "id": 2659, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "id": 2657, - "name": "_userAddr", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2652, - "src": "1791:9:8", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "nodeType": "BinaryOperation", - "operator": "==", - "rightExpression": { - "id": 2658, - "name": "i_assetUser", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2580, - "src": "1804:11:8", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "src": "1791:24:8", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "falseBody": { - "id": 2665, - "nodeType": "Block", - "src": "1859:37:8", - "statements": [ - { - "expression": { - "hexValue": "66616c7365", - "id": 2663, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "bool", - "lValueRequested": false, - "nodeType": "Literal", - "src": "1880:5:8", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - "value": "false" - }, - "functionReturnParameters": 2656, - "id": 2664, - "nodeType": "Return", - "src": "1873:12:8" - } - ] - }, - "id": 2666, - "nodeType": "IfStatement", - "src": "1787:109:8", - "trueBody": { - "id": 2662, - "nodeType": "Block", - "src": "1817:36:8", - "statements": [ - { - "expression": { - "hexValue": "74727565", - "id": 2660, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "bool", - "lValueRequested": false, - "nodeType": "Literal", - "src": "1838:4:8", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - "value": "true" - }, - "functionReturnParameters": 2656, - "id": 2661, - "nodeType": "Return", - "src": "1831:11:8" - } - ] - } - } - ] - }, - "functionSelector": "f65861c3", - "implemented": true, - "kind": "function", - "modifiers": [], - "name": "checkIfUser", - "nameLocation": "1718:11:8", - "parameters": { - "id": 2653, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 2652, - "mutability": "mutable", - "name": "_userAddr", - "nameLocation": "1739:9:8", - "nodeType": "VariableDeclaration", - "scope": 2668, - "src": "1731:17:8", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "typeName": { - "id": 2651, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "1731:7:8", - "stateMutability": "nonpayable", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "visibility": "internal" - } - ], - "src": "1730:19:8" - }, - "returnParameters": { - "id": 2656, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 2655, - "mutability": "mutable", - "name": "", - "nameLocation": "-1:-1:-1", - "nodeType": "VariableDeclaration", - "scope": 2668, - "src": "1771:4:8", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - "typeName": { - "id": 2654, - "name": "bool", - "nodeType": "ElementaryTypeName", - "src": "1771:4:8", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "visibility": "internal" - } - ], - "src": "1770:6:8" - }, - "scope": 2768, - "stateMutability": "view", - "virtual": false, - "visibility": "public" - }, - { - "id": 2676, - "nodeType": "FunctionDefinition", - "src": "1908:85:8", - "body": { - "id": 2675, - "nodeType": "Block", - "src": "1958:35:8", - "statements": [ - { - "expression": { - "id": 2673, - "name": "i_assetUser", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2580, - "src": "1975:11:8", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "functionReturnParameters": 2672, - "id": 2674, - "nodeType": "Return", - "src": "1968:18:8" - } - ] - }, - "functionSelector": "832880e7", - "implemented": true, - "kind": "function", - "modifiers": [], - "name": "getUser", - "nameLocation": "1917:7:8", - "parameters": { - "id": 2669, - "nodeType": "ParameterList", - "parameters": [], - "src": "1925:2:8" - }, - "returnParameters": { - "id": 2672, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 2671, - "mutability": "mutable", - "name": "", - "nameLocation": "-1:-1:-1", - "nodeType": "VariableDeclaration", - "scope": 2676, - "src": "1949:7:8", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "typeName": { - "id": 2670, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "1949:7:8", - "stateMutability": "nonpayable", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "visibility": "internal" - } - ], - "src": "1948:9:8" - }, - "scope": 2768, - "stateMutability": "view", - "virtual": false, - "visibility": "public" - }, - { - "id": 2684, - "nodeType": "FunctionDefinition", - "src": "1999:89:8", - "body": { - "id": 2683, - "nodeType": "Block", - "src": "2052:36:8", - "statements": [ - { - "expression": { - "id": 2681, - "name": "assetCreator", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2584, - "src": "2069:12:8", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "functionReturnParameters": 2680, - "id": 2682, - "nodeType": "Return", - "src": "2062:19:8" - } - ] - }, - "functionSelector": "0ee2cb10", - "implemented": true, - "kind": "function", - "modifiers": [], - "name": "getCreator", - "nameLocation": "2008:10:8", - "parameters": { - "id": 2677, - "nodeType": "ParameterList", - "parameters": [], - "src": "2019:2:8" - }, - "returnParameters": { - "id": 2680, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 2679, - "mutability": "mutable", - "name": "", - "nameLocation": "-1:-1:-1", - "nodeType": "VariableDeclaration", - "scope": 2684, - "src": "2043:7:8", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "typeName": { - "id": 2678, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "2043:7:8", - "stateMutability": "nonpayable", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "visibility": "internal" - } - ], - "src": "2042:9:8" - }, - "scope": 2768, - "stateMutability": "view", - "virtual": false, - "visibility": "public" - }, - { - "id": 2695, - "nodeType": "FunctionDefinition", - "src": "2094:110:8", - "body": { - "id": 2694, - "nodeType": "Block", - "src": "2155:49:8", - "statements": [ - { - "expression": { - "commonType": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "id": 2692, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "id": 2689, - "name": "endTime", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2573, - "src": "2172:7:8", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "BinaryOperation", - "operator": "-", - "rightExpression": { - "expression": { - "id": 2690, - "name": "block", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": -4, - "src": "2182:5:8", - "typeDescriptions": { - "typeIdentifier": "t_magic_block", - "typeString": "block" - } - }, - "id": 2691, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberName": "timestamp", - "nodeType": "MemberAccess", - "src": "2182:15:8", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "src": "2172:25:8", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "functionReturnParameters": 2688, - "id": 2693, - "nodeType": "Return", - "src": "2165:32:8" - } - ] - }, - "functionSelector": "40c6ed97", - "implemented": true, - "kind": "function", - "modifiers": [], - "name": "checkTimeRemaining", - "nameLocation": "2103:18:8", - "parameters": { - "id": 2685, - "nodeType": "ParameterList", - "parameters": [], - "src": "2122:2:8" - }, - "returnParameters": { - "id": 2688, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 2687, - "mutability": "mutable", - "name": "", - "nameLocation": "-1:-1:-1", - "nodeType": "VariableDeclaration", - "scope": 2695, - "src": "2146:7:8", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 2686, - "name": "uint256", - "nodeType": "ElementaryTypeName", - "src": "2146:7:8", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "visibility": "internal" - } - ], - "src": "2145:9:8" - }, - "scope": 2768, - "stateMutability": "view", - "virtual": false, - "visibility": "public" - }, - { - "id": 2710, - "nodeType": "FunctionDefinition", - "src": "2235:176:8", - "body": { - "id": 2709, - "nodeType": "Block", - "src": "2270:141:8", - "statements": [ - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "id": 2700, - "name": "i_assetUser", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2580, - "src": "2332:11:8", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_address", - "typeString": "address" - } - ], - "id": 2699, - "name": "checkIfUser", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2668, - "src": "2320:11:8", - "typeDescriptions": { - "typeIdentifier": "t_function_internal_view$_t_address_$returns$_t_bool_$", - "typeString": "function (address) view returns (bool)" - } - }, - "id": 2701, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "2320:24:8", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - { - "hexValue": "596f752063616e6e6f7420656e64207468697320636f6e7472616374", - "id": 2702, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "string", - "lValueRequested": false, - "nodeType": "Literal", - "src": "2346:30:8", - "typeDescriptions": { - "typeIdentifier": "t_stringliteral_b05e687dced7a3196251141bf0691f21754b9ac08907237cdc0d34727c48043a", - "typeString": "literal_string \"You cannot end this contract\"" - }, - "value": "You cannot end this contract" - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - { - "typeIdentifier": "t_stringliteral_b05e687dced7a3196251141bf0691f21754b9ac08907237cdc0d34727c48043a", - "typeString": "literal_string \"You cannot end this contract\"" - } - ], - "id": 2698, - "name": "require", - "nodeType": "Identifier", - "overloadedDeclarations": [ - -18, - -18 - ], - "referencedDeclaration": -18, - "src": "2311:7:8", - "typeDescriptions": { - "typeIdentifier": "t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$", - "typeString": "function (bool,string memory) pure" - } - }, - "id": 2703, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "2311:66:8", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 2704, - "nodeType": "ExpressionStatement", - "src": "2311:66:8" - }, - { - "expression": { - "arguments": [ - { - "hexValue": "74727565", - "id": 2706, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "bool", - "lValueRequested": false, - "nodeType": "Literal", - "src": "2399:4:8", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - "value": "true" - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - ], - "id": 2705, - "name": "endContract", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2767, - "src": "2387:11:8", - "typeDescriptions": { - "typeIdentifier": "t_function_internal_nonpayable$_t_bool_$returns$__$", - "typeString": "function (bool)" - } - }, - "id": 2707, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "2387:17:8", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 2708, - "nodeType": "ExpressionStatement", - "src": "2387:17:8" - } - ] - }, - "functionSelector": "facda813", - "implemented": true, - "kind": "function", - "modifiers": [], - "name": "callEndContract", - "nameLocation": "2244:15:8", - "parameters": { - "id": 2696, - "nodeType": "ParameterList", - "parameters": [], - "src": "2260:2:8" - }, - "returnParameters": { - "id": 2697, - "nodeType": "ParameterList", - "parameters": [], - "src": "2270:0:8" - }, - "scope": 2768, - "stateMutability": "nonpayable", - "virtual": false, - "visibility": "public" - }, - { - "id": 2728, - "nodeType": "FunctionDefinition", - "src": "2459:175:8", - "baseFunctions": [ - 50 - ], - "body": { - "id": 2727, - "nodeType": "Block", - "src": "2574:60:8", - "statements": [ - { - "expression": { - "id": 2725, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftHandSide": { - "id": 2719, - "name": "upkeepNeeded", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2715, - "src": "2584:12:8", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "nodeType": "Assignment", - "operator": "=", - "rightHandSide": { - "components": [ - { - "commonType": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "id": 2723, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "expression": { - "id": 2720, - "name": "block", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": -4, - "src": "2600:5:8", - "typeDescriptions": { - "typeIdentifier": "t_magic_block", - "typeString": "block" - } - }, - "id": 2721, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberName": "timestamp", - "nodeType": "MemberAccess", - "src": "2600:15:8", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "BinaryOperation", - "operator": ">=", - "rightExpression": { - "id": 2722, - "name": "endTime", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2573, - "src": "2619:7:8", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "src": "2600:26:8", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - } - ], - "id": 2724, - "isConstant": false, - "isInlineArray": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "nodeType": "TupleExpression", - "src": "2599:28:8", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "src": "2584:43:8", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "id": 2726, - "nodeType": "ExpressionStatement", - "src": "2584:43:8" - } - ] - }, - "functionSelector": "6e04ff0d", - "implemented": true, - "kind": "function", - "modifiers": [], - "name": "checkUpkeep", - "nameLocation": "2468:11:8", - "parameters": { - "id": 2713, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 2712, - "mutability": "mutable", - "name": "", - "nameLocation": "-1:-1:-1", - "nodeType": "VariableDeclaration", - "scope": 2728, - "src": "2481:14:8", - "stateVariable": false, - "storageLocation": "calldata", - "typeDescriptions": { - "typeIdentifier": "t_bytes_calldata_ptr", - "typeString": "bytes" - }, - "typeName": { - "id": 2711, - "name": "bytes", - "nodeType": "ElementaryTypeName", - "src": "2481:5:8", - "typeDescriptions": { - "typeIdentifier": "t_bytes_storage_ptr", - "typeString": "bytes" - } - }, - "visibility": "internal" - } - ], - "src": "2480:16:8" - }, - "returnParameters": { - "id": 2718, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 2715, - "mutability": "mutable", - "name": "upkeepNeeded", - "nameLocation": "2534:12:8", - "nodeType": "VariableDeclaration", - "scope": 2728, - "src": "2529:17:8", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - "typeName": { - "id": 2714, - "name": "bool", - "nodeType": "ElementaryTypeName", - "src": "2529:4:8", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 2717, - "mutability": "mutable", - "name": "performData", - "nameLocation": "2561:11:8", - "nodeType": "VariableDeclaration", - "scope": 2728, - "src": "2548:24:8", - "stateVariable": false, - "storageLocation": "memory", - "typeDescriptions": { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes" - }, - "typeName": { - "id": 2716, - "name": "bytes", - "nodeType": "ElementaryTypeName", - "src": "2548:5:8", - "typeDescriptions": { - "typeIdentifier": "t_bytes_storage_ptr", - "typeString": "bytes" - } - }, - "visibility": "internal" - } - ], - "src": "2519:54:8" - }, - "scope": 2768, - "stateMutability": "view", - "virtual": false, - "visibility": "external" - }, - { - "id": 2745, - "nodeType": "FunctionDefinition", - "src": "2668:147:8", - "baseFunctions": [ - 56 - ], - "body": { - "id": 2744, - "nodeType": "Block", - "src": "2725:90:8", - "statements": [ - { - "condition": { - "commonType": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "id": 2737, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "expression": { - "id": 2734, - "name": "block", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": -4, - "src": "2738:5:8", - "typeDescriptions": { - "typeIdentifier": "t_magic_block", - "typeString": "block" - } - }, - "id": 2735, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberName": "timestamp", - "nodeType": "MemberAccess", - "src": "2738:15:8", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "BinaryOperation", - "operator": ">=", - "rightExpression": { - "id": 2736, - "name": "endTime", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2573, - "src": "2757:7:8", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "src": "2738:26:8", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "id": 2743, - "nodeType": "IfStatement", - "src": "2735:74:8", - "trueBody": { - "id": 2742, - "nodeType": "Block", - "src": "2766:43:8", - "statements": [ - { - "expression": { - "arguments": [ - { - "hexValue": "66616c7365", - "id": 2739, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "bool", - "lValueRequested": false, - "nodeType": "Literal", - "src": "2792:5:8", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - "value": "false" - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - ], - "id": 2738, - "name": "endContract", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2767, - "src": "2780:11:8", - "typeDescriptions": { - "typeIdentifier": "t_function_internal_nonpayable$_t_bool_$returns$__$", - "typeString": "function (bool)" - } - }, - "id": 2740, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "2780:18:8", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 2741, - "nodeType": "ExpressionStatement", - "src": "2780:18:8" - } - ] - } - } - ] - }, - "functionSelector": "4585e33b", - "implemented": true, - "kind": "function", - "modifiers": [], - "name": "performUpkeep", - "nameLocation": "2677:13:8", - "overrides": { - "id": 2732, - "nodeType": "OverrideSpecifier", - "overrides": [], - "src": "2716:8:8" - }, - "parameters": { - "id": 2731, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 2730, - "mutability": "mutable", - "name": "", - "nameLocation": "-1:-1:-1", - "nodeType": "VariableDeclaration", - "scope": 2745, - "src": "2691:14:8", - "stateVariable": false, - "storageLocation": "calldata", - "typeDescriptions": { - "typeIdentifier": "t_bytes_calldata_ptr", - "typeString": "bytes" - }, - "typeName": { - "id": 2729, - "name": "bytes", - "nodeType": "ElementaryTypeName", - "src": "2691:5:8", - "typeDescriptions": { - "typeIdentifier": "t_bytes_storage_ptr", - "typeString": "bytes" - } - }, - "visibility": "internal" - } - ], - "src": "2690:16:8" - }, - "returnParameters": { - "id": 2733, - "nodeType": "ParameterList", - "parameters": [], - "src": "2725:0:8" - }, - "scope": 2768, - "stateMutability": "nonpayable", - "virtual": false, - "visibility": "external" - }, - { - "id": 2767, - "nodeType": "FunctionDefinition", - "src": "2821:770:8", - "body": { - "id": 2766, - "nodeType": "Block", - "src": "2873:718:8", - "statements": [ - { - "condition": { - "id": 2750, - "name": "_isUser", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2747, - "src": "2887:7:8", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "falseBody": { - "id": 2764, - "nodeType": "Block", - "src": "3411:174:8", - "statements": [] - }, - "id": 2765, - "nodeType": "IfStatement", - "src": "2884:701:8", - "trueBody": { - "id": 2763, - "nodeType": "Block", - "src": "2896:509:8", - "statements": [ - { - "condition": { - "commonType": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "id": 2759, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "expression": { - "id": 2751, - "name": "block", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": -4, - "src": "2961:5:8", - "typeDescriptions": { - "typeIdentifier": "t_magic_block", - "typeString": "block" - } - }, - "id": 2752, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberName": "timestamp", - "nodeType": "MemberAccess", - "src": "2961:15:8", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "BinaryOperation", - "operator": ">=", - "rightExpression": { - "commonType": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "id": 2758, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "id": 2753, - "name": "endTime", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2573, - "src": "2980:7:8", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "BinaryOperation", - "operator": "-", - "rightExpression": { - "components": [ - { - "commonType": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "id": 2756, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "id": 2754, - "name": "duration", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2569, - "src": "2991:8:8", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "BinaryOperation", - "operator": "/", - "rightExpression": { - "hexValue": "32", - "id": 2755, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "number", - "lValueRequested": false, - "nodeType": "Literal", - "src": "3000:1:8", - "typeDescriptions": { - "typeIdentifier": "t_rational_2_by_1", - "typeString": "int_const 2" - }, - "value": "2" - }, - "src": "2991:10:8", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - } - ], - "id": 2757, - "isConstant": false, - "isInlineArray": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "nodeType": "TupleExpression", - "src": "2990:12:8", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "src": "2980:22:8", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "src": "2961:41:8", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "falseBody": { - "id": 2761, - "nodeType": "Block", - "src": "3179:216:8", - "statements": [] - }, - "id": 2762, - "nodeType": "IfStatement", - "src": "2957:438:8", - "trueBody": { - "id": 2760, - "nodeType": "Block", - "src": "3004:169:8", - "statements": [] - } - } - ] - } - } - ] - }, - "implemented": true, - "kind": "function", - "modifiers": [], - "name": "endContract", - "nameLocation": "2830:11:8", - "parameters": { - "id": 2748, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 2747, - "mutability": "mutable", - "name": "_isUser", - "nameLocation": "2847:7:8", - "nodeType": "VariableDeclaration", - "scope": 2767, - "src": "2842:12:8", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - "typeName": { - "id": 2746, - "name": "bool", - "nodeType": "ElementaryTypeName", - "src": "2842:4:8", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "visibility": "internal" - } - ], - "src": "2841:14:8" - }, - "returnParameters": { - "id": 2749, - "nodeType": "ParameterList", - "parameters": [], - "src": "2873:0:8" - }, - "scope": 2768, - "stateMutability": "nonpayable", - "virtual": true, - "visibility": "internal" - } - ], - "abstract": false, - "baseContracts": [ - { - "baseName": { - "id": 2563, - "name": "KeeperCompatibleInterface", - "nodeType": "IdentifierPath", - "referencedDeclaration": 57, - "src": "310:25:8" - }, - "id": 2564, - "nodeType": "InheritanceSpecifier", - "src": "310:25:8" - } - ], - "canonicalName": "AssetCreation", - "contractDependencies": [ - 2262 - ], - "contractKind": "contract", - "fullyImplemented": true, - "linearizedBaseContracts": [ - 2768, - 57 - ], - "name": "AssetCreation", - "nameLocation": "293:13:8", - "scope": 2769, - "usedErrors": [] - } - ] - } -} \ No newline at end of file diff --git a/out/IERC20.sol/IERC20.json b/out/IERC20.sol/IERC20.json deleted file mode 100644 index 9bbc08e..0000000 --- a/out/IERC20.sol/IERC20.json +++ /dev/null @@ -1,1112 +0,0 @@ -{ - "abi": [ - { - "anonymous": false, - "inputs": [ - { - "indexed": true, - "internalType": "address", - "name": "owner", - "type": "address" - }, - { - "indexed": true, - "internalType": "address", - "name": "spender", - "type": "address" - }, - { - "indexed": false, - "internalType": "uint256", - "name": "value", - "type": "uint256" - } - ], - "name": "Approval", - "type": "event" - }, - { - "anonymous": false, - "inputs": [ - { - "indexed": true, - "internalType": "address", - "name": "from", - "type": "address" - }, - { - "indexed": true, - "internalType": "address", - "name": "to", - "type": "address" - }, - { - "indexed": false, - "internalType": "uint256", - "name": "value", - "type": "uint256" - } - ], - "name": "Transfer", - "type": "event" - }, - { - "inputs": [ - { - "internalType": "address", - "name": "owner", - "type": "address" - }, - { - "internalType": "address", - "name": "spender", - "type": "address" - } - ], - "name": "allowance", - "outputs": [ - { - "internalType": "uint256", - "name": "", - "type": "uint256" - } - ], - "stateMutability": "view", - "type": "function" - }, - { - "inputs": [ - { - "internalType": "address", - "name": "spender", - "type": "address" - }, - { - "internalType": "uint256", - "name": "amount", - "type": "uint256" - } - ], - "name": "approve", - "outputs": [ - { - "internalType": "bool", - "name": "", - "type": "bool" - } - ], - "stateMutability": "nonpayable", - "type": "function" - }, - { - "inputs": [ - { - "internalType": "address", - "name": "account", - "type": "address" - } - ], - "name": "balanceOf", - "outputs": [ - { - "internalType": "uint256", - "name": "", - "type": "uint256" - } - ], - "stateMutability": "view", - "type": "function" - }, - { - "inputs": [], - "name": "totalSupply", - "outputs": [ - { - "internalType": "uint256", - "name": "", - "type": "uint256" - } - ], - "stateMutability": "view", - "type": "function" - }, - { - "inputs": [ - { - "internalType": "address", - "name": "to", - "type": "address" - }, - { - "internalType": "uint256", - "name": "amount", - "type": "uint256" - } - ], - "name": "transfer", - "outputs": [ - { - "internalType": "bool", - "name": "", - "type": "bool" - } - ], - "stateMutability": "nonpayable", - "type": "function" - }, - { - "inputs": [ - { - "internalType": "address", - "name": "from", - "type": "address" - }, - { - "internalType": "address", - "name": "to", - "type": "address" - }, - { - "internalType": "uint256", - "name": "amount", - "type": "uint256" - } - ], - "name": "transferFrom", - "outputs": [ - { - "internalType": "bool", - "name": "", - "type": "bool" - } - ], - "stateMutability": "nonpayable", - "type": "function" - } - ], - "bytecode": { - "object": "0x", - "sourceMap": "", - "linkReferences": {} - }, - "deployedBytecode": { - "object": "0x", - "sourceMap": "", - "linkReferences": {} - }, - "ast": { - "absolutePath": "/mnt/c/Users/PizzaHi5/Documents/CreatorDAO/CreatorDAO/lib/openzeppelin-contracts/contracts/token/ERC20/IERC20.sol", - "id": 1923, - "exportedSymbols": { - "IERC20": [ - 1922 - ] - }, - "nodeType": "SourceUnit", - "src": "106:2661:4", - "nodes": [ - { - "id": 1846, - "nodeType": "PragmaDirective", - "src": "106:23:4", - "literals": [ - "solidity", - "^", - "0.8", - ".0" - ] - }, - { - "id": 1922, - "nodeType": "ContractDefinition", - "src": "202:2564:4", - "nodes": [ - { - "id": 1856, - "nodeType": "EventDefinition", - "src": "388:72:4", - "anonymous": false, - "documentation": { - "id": 1848, - "nodeType": "StructuredDocumentation", - "src": "225:158:4", - "text": " @dev Emitted when `value` tokens are moved from one account (`from`) to\n another (`to`).\n Note that `value` may be zero." - }, - "eventSelector": "ddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef", - "name": "Transfer", - "nameLocation": "394:8:4", - "parameters": { - "id": 1855, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 1850, - "indexed": true, - "mutability": "mutable", - "name": "from", - "nameLocation": "419:4:4", - "nodeType": "VariableDeclaration", - "scope": 1856, - "src": "403:20:4", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "typeName": { - "id": 1849, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "403:7:4", - "stateMutability": "nonpayable", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 1852, - "indexed": true, - "mutability": "mutable", - "name": "to", - "nameLocation": "441:2:4", - "nodeType": "VariableDeclaration", - "scope": 1856, - "src": "425:18:4", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "typeName": { - "id": 1851, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "425:7:4", - "stateMutability": "nonpayable", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 1854, - "indexed": false, - "mutability": "mutable", - "name": "value", - "nameLocation": "453:5:4", - "nodeType": "VariableDeclaration", - "scope": 1856, - "src": "445:13:4", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 1853, - "name": "uint256", - "nodeType": "ElementaryTypeName", - "src": "445:7:4", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "visibility": "internal" - } - ], - "src": "402:57:4" - } - }, - { - "id": 1865, - "nodeType": "EventDefinition", - "src": "619:78:4", - "anonymous": false, - "documentation": { - "id": 1857, - "nodeType": "StructuredDocumentation", - "src": "466:148:4", - "text": " @dev Emitted when the allowance of a `spender` for an `owner` is set by\n a call to {approve}. `value` is the new allowance." - }, - "eventSelector": "8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925", - "name": "Approval", - "nameLocation": "625:8:4", - "parameters": { - "id": 1864, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 1859, - "indexed": true, - "mutability": "mutable", - "name": "owner", - "nameLocation": "650:5:4", - "nodeType": "VariableDeclaration", - "scope": 1865, - "src": "634:21:4", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "typeName": { - "id": 1858, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "634:7:4", - "stateMutability": "nonpayable", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 1861, - "indexed": true, - "mutability": "mutable", - "name": "spender", - "nameLocation": "673:7:4", - "nodeType": "VariableDeclaration", - "scope": 1865, - "src": "657:23:4", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "typeName": { - "id": 1860, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "657:7:4", - "stateMutability": "nonpayable", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 1863, - "indexed": false, - "mutability": "mutable", - "name": "value", - "nameLocation": "690:5:4", - "nodeType": "VariableDeclaration", - "scope": 1865, - "src": "682:13:4", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 1862, - "name": "uint256", - "nodeType": "ElementaryTypeName", - "src": "682:7:4", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "visibility": "internal" - } - ], - "src": "633:63:4" - } - }, - { - "id": 1871, - "nodeType": "FunctionDefinition", - "src": "774:55:4", - "documentation": { - "id": 1866, - "nodeType": "StructuredDocumentation", - "src": "703:66:4", - "text": " @dev Returns the amount of tokens in existence." - }, - "functionSelector": "18160ddd", - "implemented": false, - "kind": "function", - "modifiers": [], - "name": "totalSupply", - "nameLocation": "783:11:4", - "parameters": { - "id": 1867, - "nodeType": "ParameterList", - "parameters": [], - "src": "794:2:4" - }, - "returnParameters": { - "id": 1870, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 1869, - "mutability": "mutable", - "name": "", - "nameLocation": "-1:-1:-1", - "nodeType": "VariableDeclaration", - "scope": 1871, - "src": "820:7:4", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 1868, - "name": "uint256", - "nodeType": "ElementaryTypeName", - "src": "820:7:4", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "visibility": "internal" - } - ], - "src": "819:9:4" - }, - "scope": 1922, - "stateMutability": "view", - "virtual": false, - "visibility": "external" - }, - { - "id": 1879, - "nodeType": "FunctionDefinition", - "src": "912:68:4", - "documentation": { - "id": 1872, - "nodeType": "StructuredDocumentation", - "src": "835:72:4", - "text": " @dev Returns the amount of tokens owned by `account`." - }, - "functionSelector": "70a08231", - "implemented": false, - "kind": "function", - "modifiers": [], - "name": "balanceOf", - "nameLocation": "921:9:4", - "parameters": { - "id": 1875, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 1874, - "mutability": "mutable", - "name": "account", - "nameLocation": "939:7:4", - "nodeType": "VariableDeclaration", - "scope": 1879, - "src": "931:15:4", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "typeName": { - "id": 1873, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "931:7:4", - "stateMutability": "nonpayable", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "visibility": "internal" - } - ], - "src": "930:17:4" - }, - "returnParameters": { - "id": 1878, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 1877, - "mutability": "mutable", - "name": "", - "nameLocation": "-1:-1:-1", - "nodeType": "VariableDeclaration", - "scope": 1879, - "src": "971:7:4", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 1876, - "name": "uint256", - "nodeType": "ElementaryTypeName", - "src": "971:7:4", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "visibility": "internal" - } - ], - "src": "970:9:4" - }, - "scope": 1922, - "stateMutability": "view", - "virtual": false, - "visibility": "external" - }, - { - "id": 1889, - "nodeType": "FunctionDefinition", - "src": "1193:70:4", - "documentation": { - "id": 1880, - "nodeType": "StructuredDocumentation", - "src": "986:202:4", - "text": " @dev Moves `amount` tokens from the caller's account to `to`.\n Returns a boolean value indicating whether the operation succeeded.\n Emits a {Transfer} event." - }, - "functionSelector": "a9059cbb", - "implemented": false, - "kind": "function", - "modifiers": [], - "name": "transfer", - "nameLocation": "1202:8:4", - "parameters": { - "id": 1885, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 1882, - "mutability": "mutable", - "name": "to", - "nameLocation": "1219:2:4", - "nodeType": "VariableDeclaration", - "scope": 1889, - "src": "1211:10:4", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "typeName": { - "id": 1881, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "1211:7:4", - "stateMutability": "nonpayable", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 1884, - "mutability": "mutable", - "name": "amount", - "nameLocation": "1231:6:4", - "nodeType": "VariableDeclaration", - "scope": 1889, - "src": "1223:14:4", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 1883, - "name": "uint256", - "nodeType": "ElementaryTypeName", - "src": "1223:7:4", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "visibility": "internal" - } - ], - "src": "1210:28:4" - }, - "returnParameters": { - "id": 1888, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 1887, - "mutability": "mutable", - "name": "", - "nameLocation": "-1:-1:-1", - "nodeType": "VariableDeclaration", - "scope": 1889, - "src": "1257:4:4", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - "typeName": { - "id": 1886, - "name": "bool", - "nodeType": "ElementaryTypeName", - "src": "1257:4:4", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "visibility": "internal" - } - ], - "src": "1256:6:4" - }, - "scope": 1922, - "stateMutability": "nonpayable", - "virtual": false, - "visibility": "external" - }, - { - "id": 1899, - "nodeType": "FunctionDefinition", - "src": "1538:83:4", - "documentation": { - "id": 1890, - "nodeType": "StructuredDocumentation", - "src": "1269:264:4", - "text": " @dev Returns the remaining number of tokens that `spender` will be\n allowed to spend on behalf of `owner` through {transferFrom}. This is\n zero by default.\n This value changes when {approve} or {transferFrom} are called." - }, - "functionSelector": "dd62ed3e", - "implemented": false, - "kind": "function", - "modifiers": [], - "name": "allowance", - "nameLocation": "1547:9:4", - "parameters": { - "id": 1895, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 1892, - "mutability": "mutable", - "name": "owner", - "nameLocation": "1565:5:4", - "nodeType": "VariableDeclaration", - "scope": 1899, - "src": "1557:13:4", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "typeName": { - "id": 1891, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "1557:7:4", - "stateMutability": "nonpayable", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 1894, - "mutability": "mutable", - "name": "spender", - "nameLocation": "1580:7:4", - "nodeType": "VariableDeclaration", - "scope": 1899, - "src": "1572:15:4", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "typeName": { - "id": 1893, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "1572:7:4", - "stateMutability": "nonpayable", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "visibility": "internal" - } - ], - "src": "1556:32:4" - }, - "returnParameters": { - "id": 1898, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 1897, - "mutability": "mutable", - "name": "", - "nameLocation": "-1:-1:-1", - "nodeType": "VariableDeclaration", - "scope": 1899, - "src": "1612:7:4", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 1896, - "name": "uint256", - "nodeType": "ElementaryTypeName", - "src": "1612:7:4", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "visibility": "internal" - } - ], - "src": "1611:9:4" - }, - "scope": 1922, - "stateMutability": "view", - "virtual": false, - "visibility": "external" - }, - { - "id": 1909, - "nodeType": "FunctionDefinition", - "src": "2274:74:4", - "documentation": { - "id": 1900, - "nodeType": "StructuredDocumentation", - "src": "1627:642:4", - "text": " @dev Sets `amount` as the allowance of `spender` over the caller's tokens.\n Returns a boolean value indicating whether the operation succeeded.\n IMPORTANT: Beware that changing an allowance with this method brings the risk\n that someone may use both the old and the new allowance by unfortunate\n transaction ordering. One possible solution to mitigate this race\n condition is to first reduce the spender's allowance to 0 and set the\n desired value afterwards:\n https://github.com/ethereum/EIPs/issues/20#issuecomment-263524729\n Emits an {Approval} event." - }, - "functionSelector": "095ea7b3", - "implemented": false, - "kind": "function", - "modifiers": [], - "name": "approve", - "nameLocation": "2283:7:4", - "parameters": { - "id": 1905, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 1902, - "mutability": "mutable", - "name": "spender", - "nameLocation": "2299:7:4", - "nodeType": "VariableDeclaration", - "scope": 1909, - "src": "2291:15:4", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "typeName": { - "id": 1901, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "2291:7:4", - "stateMutability": "nonpayable", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 1904, - "mutability": "mutable", - "name": "amount", - "nameLocation": "2316:6:4", - "nodeType": "VariableDeclaration", - "scope": 1909, - "src": "2308:14:4", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 1903, - "name": "uint256", - "nodeType": "ElementaryTypeName", - "src": "2308:7:4", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "visibility": "internal" - } - ], - "src": "2290:33:4" - }, - "returnParameters": { - "id": 1908, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 1907, - "mutability": "mutable", - "name": "", - "nameLocation": "-1:-1:-1", - "nodeType": "VariableDeclaration", - "scope": 1909, - "src": "2342:4:4", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - "typeName": { - "id": 1906, - "name": "bool", - "nodeType": "ElementaryTypeName", - "src": "2342:4:4", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "visibility": "internal" - } - ], - "src": "2341:6:4" - }, - "scope": 1922, - "stateMutability": "nonpayable", - "virtual": false, - "visibility": "external" - }, - { - "id": 1921, - "nodeType": "FunctionDefinition", - "src": "2646:118:4", - "documentation": { - "id": 1910, - "nodeType": "StructuredDocumentation", - "src": "2354:287:4", - "text": " @dev Moves `amount` tokens from `from` to `to` using the\n allowance mechanism. `amount` is then deducted from the caller's\n allowance.\n Returns a boolean value indicating whether the operation succeeded.\n Emits a {Transfer} event." - }, - "functionSelector": "23b872dd", - "implemented": false, - "kind": "function", - "modifiers": [], - "name": "transferFrom", - "nameLocation": "2655:12:4", - "parameters": { - "id": 1917, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 1912, - "mutability": "mutable", - "name": "from", - "nameLocation": "2685:4:4", - "nodeType": "VariableDeclaration", - "scope": 1921, - "src": "2677:12:4", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "typeName": { - "id": 1911, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "2677:7:4", - "stateMutability": "nonpayable", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 1914, - "mutability": "mutable", - "name": "to", - "nameLocation": "2707:2:4", - "nodeType": "VariableDeclaration", - "scope": 1921, - "src": "2699:10:4", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "typeName": { - "id": 1913, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "2699:7:4", - "stateMutability": "nonpayable", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 1916, - "mutability": "mutable", - "name": "amount", - "nameLocation": "2727:6:4", - "nodeType": "VariableDeclaration", - "scope": 1921, - "src": "2719:14:4", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 1915, - "name": "uint256", - "nodeType": "ElementaryTypeName", - "src": "2719:7:4", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "visibility": "internal" - } - ], - "src": "2667:72:4" - }, - "returnParameters": { - "id": 1920, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 1919, - "mutability": "mutable", - "name": "", - "nameLocation": "-1:-1:-1", - "nodeType": "VariableDeclaration", - "scope": 1921, - "src": "2758:4:4", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - "typeName": { - "id": 1918, - "name": "bool", - "nodeType": "ElementaryTypeName", - "src": "2758:4:4", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "visibility": "internal" - } - ], - "src": "2757:6:4" - }, - "scope": 1922, - "stateMutability": "nonpayable", - "virtual": false, - "visibility": "external" - } - ], - "abstract": false, - "baseContracts": [], - "canonicalName": "IERC20", - "contractDependencies": [], - "contractKind": "interface", - "documentation": { - "id": 1847, - "nodeType": "StructuredDocumentation", - "src": "131:70:4", - "text": " @dev Interface of the ERC20 standard as defined in the EIP." - }, - "fullyImplemented": false, - "linearizedBaseContracts": [ - 1922 - ], - "name": "IERC20", - "nameLocation": "212:6:4", - "scope": 1923, - "usedErrors": [] - } - ], - "license": "MIT" - } -} \ No newline at end of file diff --git a/out/KeeperBase.sol/KeeperBase.json b/out/KeeperBase.sol/KeeperBase.json deleted file mode 100644 index af32fe0..0000000 --- a/out/KeeperBase.sol/KeeperBase.json +++ /dev/null @@ -1,338 +0,0 @@ -{ - "abi": [ - { - "inputs": [], - "name": "OnlySimulatedBackend", - "type": "error" - } - ], - "bytecode": { - "object": "0x6080604052348015600f57600080fd5b50603f80601d6000396000f3fe6080604052600080fdfea26469706673582212200d60ffebd1ffb84b9d716501e911ba4bdd9fbb7751ba03edd27ccdf570afe7bb64736f6c634300080d0033", - "sourceMap": "57:511:0:-:0;;;;;;;;;;;;;;;;;;;", - "linkReferences": {} - }, - "deployedBytecode": { - "object": "0x6080604052600080fdfea26469706673582212200d60ffebd1ffb84b9d716501e911ba4bdd9fbb7751ba03edd27ccdf570afe7bb64736f6c634300080d0033", - "sourceMap": "57:511:0:-:0;;;;;", - "linkReferences": {} - }, - "ast": { - "absolutePath": "/mnt/c/Users/PizzaHi5/Documents/CreatorDAO/CreatorDAO/lib/chainlink/contracts/src/v0.8/KeeperBase.sol", - "id": 30, - "exportedSymbols": { - "KeeperBase": [ - 29 - ] - }, - "nodeType": "SourceUnit", - "src": "32:537:0", - "nodes": [ - { - "id": 1, - "nodeType": "PragmaDirective", - "src": "32:23:0", - "literals": [ - "solidity", - "^", - "0.8", - ".0" - ] - }, - { - "id": 29, - "nodeType": "ContractDefinition", - "src": "57:511:0", - "nodes": [ - { - "id": 3, - "nodeType": "ErrorDefinition", - "src": "81:29:0", - "errorSelector": "b60ac5db", - "name": "OnlySimulatedBackend", - "nameLocation": "87:20:0", - "parameters": { - "id": 2, - "nodeType": "ParameterList", - "parameters": [], - "src": "107:2:0" - } - }, - { - "id": 20, - "nodeType": "FunctionDefinition", - "src": "244:125:0", - "body": { - "id": 19, - "nodeType": "Block", - "src": "286:83:0", - "statements": [ - { - "condition": { - "commonType": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "id": 13, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "expression": { - "id": 7, - "name": "tx", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": -26, - "src": "296:2:0", - "typeDescriptions": { - "typeIdentifier": "t_magic_transaction", - "typeString": "tx" - } - }, - "id": 8, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberName": "origin", - "nodeType": "MemberAccess", - "src": "296:9:0", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "nodeType": "BinaryOperation", - "operator": "!=", - "rightExpression": { - "arguments": [ - { - "hexValue": "30", - "id": 11, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "number", - "lValueRequested": false, - "nodeType": "Literal", - "src": "317:1:0", - "typeDescriptions": { - "typeIdentifier": "t_rational_0_by_1", - "typeString": "int_const 0" - }, - "value": "0" - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_rational_0_by_1", - "typeString": "int_const 0" - } - ], - "id": 10, - "isConstant": false, - "isLValue": false, - "isPure": true, - "lValueRequested": false, - "nodeType": "ElementaryTypeNameExpression", - "src": "309:7:0", - "typeDescriptions": { - "typeIdentifier": "t_type$_t_address_$", - "typeString": "type(address)" - }, - "typeName": { - "id": 9, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "309:7:0", - "typeDescriptions": {} - } - }, - "id": 12, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "typeConversion", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "309:10:0", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "src": "296:23:0", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "id": 18, - "nodeType": "IfStatement", - "src": "292:73:0", - "trueBody": { - "id": 17, - "nodeType": "Block", - "src": "321:44:0", - "statements": [ - { - "errorCall": { - "arguments": [], - "expression": { - "argumentTypes": [], - "id": 14, - "name": "OnlySimulatedBackend", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 3, - "src": "336:20:0", - "typeDescriptions": { - "typeIdentifier": "t_function_error_pure$__$returns$__$", - "typeString": "function () pure" - } - }, - "id": 15, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "336:22:0", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 16, - "nodeType": "RevertStatement", - "src": "329:29:0" - } - ] - } - } - ] - }, - "documentation": { - "id": 4, - "nodeType": "StructuredDocumentation", - "src": "114:127:0", - "text": " @notice method that allows it to be simulated via eth_call by checking that\n the sender is the zero address." - }, - "implemented": true, - "kind": "function", - "modifiers": [], - "name": "preventExecution", - "nameLocation": "253:16:0", - "parameters": { - "id": 5, - "nodeType": "ParameterList", - "parameters": [], - "src": "269:2:0" - }, - "returnParameters": { - "id": 6, - "nodeType": "ParameterList", - "parameters": [], - "src": "286:0:0" - }, - "scope": 29, - "stateMutability": "view", - "virtual": false, - "visibility": "internal" - }, - { - "id": 28, - "nodeType": "ModifierDefinition", - "src": "505:61:0", - "body": { - "id": 27, - "nodeType": "Block", - "src": "530:36:0", - "statements": [ - { - "expression": { - "arguments": [], - "expression": { - "argumentTypes": [], - "id": 23, - "name": "preventExecution", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 20, - "src": "536:16:0", - "typeDescriptions": { - "typeIdentifier": "t_function_internal_view$__$returns$__$", - "typeString": "function () view" - } - }, - "id": 24, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "536:18:0", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 25, - "nodeType": "ExpressionStatement", - "src": "536:18:0" - }, - { - "id": 26, - "nodeType": "PlaceholderStatement", - "src": "560:1:0" - } - ] - }, - "documentation": { - "id": 21, - "nodeType": "StructuredDocumentation", - "src": "373:129:0", - "text": " @notice modifier that allows it to be simulated via eth_call by checking\n that the sender is the zero address." - }, - "name": "cannotExecute", - "nameLocation": "514:13:0", - "parameters": { - "id": 22, - "nodeType": "ParameterList", - "parameters": [], - "src": "527:2:0" - }, - "virtual": false, - "visibility": "internal" - } - ], - "abstract": false, - "baseContracts": [], - "canonicalName": "KeeperBase", - "contractDependencies": [], - "contractKind": "contract", - "fullyImplemented": true, - "linearizedBaseContracts": [ - 29 - ], - "name": "KeeperBase", - "nameLocation": "66:10:0", - "scope": 30, - "usedErrors": [ - 3 - ] - } - ], - "license": "MIT" - } -} \ No newline at end of file diff --git a/out/KeeperCompatible.sol/KeeperCompatible.json b/out/KeeperCompatible.sol/KeeperCompatible.json deleted file mode 100644 index cb38db7..0000000 --- a/out/KeeperCompatible.sol/KeeperCompatible.json +++ /dev/null @@ -1,158 +0,0 @@ -{ - "abi": [ - { - "inputs": [], - "name": "OnlySimulatedBackend", - "type": "error" - }, - { - "inputs": [ - { - "internalType": "bytes", - "name": "checkData", - "type": "bytes" - } - ], - "name": "checkUpkeep", - "outputs": [ - { - "internalType": "bool", - "name": "upkeepNeeded", - "type": "bool" - }, - { - "internalType": "bytes", - "name": "performData", - "type": "bytes" - } - ], - "stateMutability": "nonpayable", - "type": "function" - }, - { - "inputs": [ - { - "internalType": "bytes", - "name": "performData", - "type": "bytes" - } - ], - "name": "performUpkeep", - "outputs": [], - "stateMutability": "nonpayable", - "type": "function" - } - ], - "bytecode": { - "object": "0x", - "sourceMap": "", - "linkReferences": {} - }, - "deployedBytecode": { - "object": "0x", - "sourceMap": "", - "linkReferences": {} - }, - "ast": { - "absolutePath": "/mnt/c/Users/PizzaHi5/Documents/CreatorDAO/CreatorDAO/lib/chainlink/contracts/src/v0.8/KeeperCompatible.sol", - "id": 39, - "exportedSymbols": { - "KeeperBase": [ - 29 - ], - "KeeperCompatible": [ - 38 - ], - "KeeperCompatibleInterface": [ - 57 - ] - }, - "nodeType": "SourceUnit", - "src": "32:185:1", - "nodes": [ - { - "id": 31, - "nodeType": "PragmaDirective", - "src": "32:23:1", - "literals": [ - "solidity", - "^", - "0.8", - ".0" - ] - }, - { - "id": 32, - "nodeType": "ImportDirective", - "src": "57:26:1", - "absolutePath": "/mnt/c/Users/PizzaHi5/Documents/CreatorDAO/CreatorDAO/lib/chainlink/contracts/src/v0.8/KeeperBase.sol", - "file": "./KeeperBase.sol", - "nameLocation": "-1:-1:-1", - "scope": 39, - "sourceUnit": 30, - "symbolAliases": [], - "unitAlias": "" - }, - { - "id": 33, - "nodeType": "ImportDirective", - "src": "84:52:1", - "absolutePath": "/mnt/c/Users/PizzaHi5/Documents/CreatorDAO/CreatorDAO/lib/chainlink/contracts/src/v0.8/interfaces/KeeperCompatibleInterface.sol", - "file": "./interfaces/KeeperCompatibleInterface.sol", - "nameLocation": "-1:-1:-1", - "scope": 39, - "sourceUnit": 58, - "symbolAliases": [], - "unitAlias": "" - }, - { - "id": 38, - "nodeType": "ContractDefinition", - "src": "138:78:1", - "abstract": true, - "baseContracts": [ - { - "baseName": { - "id": 34, - "name": "KeeperBase", - "nodeType": "IdentifierPath", - "referencedDeclaration": 29, - "src": "176:10:1" - }, - "id": 35, - "nodeType": "InheritanceSpecifier", - "src": "176:10:1" - }, - { - "baseName": { - "id": 36, - "name": "KeeperCompatibleInterface", - "nodeType": "IdentifierPath", - "referencedDeclaration": 57, - "src": "188:25:1" - }, - "id": 37, - "nodeType": "InheritanceSpecifier", - "src": "188:25:1" - } - ], - "canonicalName": "KeeperCompatible", - "contractDependencies": [], - "contractKind": "contract", - "fullyImplemented": false, - "linearizedBaseContracts": [ - 38, - 57, - 29 - ], - "name": "KeeperCompatible", - "nameLocation": "156:16:1", - "scope": 39, - "usedErrors": [ - 3 - ] - } - ], - "license": "MIT" - } -} \ No newline at end of file diff --git a/out/KeeperCompatibleInterface.sol/KeeperCompatibleInterface.json b/out/KeeperCompatibleInterface.sol/KeeperCompatibleInterface.json deleted file mode 100644 index be0c14d..0000000 --- a/out/KeeperCompatibleInterface.sol/KeeperCompatibleInterface.json +++ /dev/null @@ -1,273 +0,0 @@ -{ - "abi": [ - { - "inputs": [ - { - "internalType": "bytes", - "name": "checkData", - "type": "bytes" - } - ], - "name": "checkUpkeep", - "outputs": [ - { - "internalType": "bool", - "name": "upkeepNeeded", - "type": "bool" - }, - { - "internalType": "bytes", - "name": "performData", - "type": "bytes" - } - ], - "stateMutability": "nonpayable", - "type": "function" - }, - { - "inputs": [ - { - "internalType": "bytes", - "name": "performData", - "type": "bytes" - } - ], - "name": "performUpkeep", - "outputs": [], - "stateMutability": "nonpayable", - "type": "function" - } - ], - "bytecode": { - "object": "0x", - "sourceMap": "", - "linkReferences": {} - }, - "deployedBytecode": { - "object": "0x", - "sourceMap": "", - "linkReferences": {} - }, - "ast": { - "absolutePath": "/mnt/c/Users/PizzaHi5/Documents/CreatorDAO/CreatorDAO/lib/chainlink/contracts/src/v0.8/interfaces/KeeperCompatibleInterface.sol", - "id": 58, - "exportedSymbols": { - "KeeperCompatibleInterface": [ - 57 - ] - }, - "nodeType": "SourceUnit", - "src": "32:2236:2", - "nodes": [ - { - "id": 40, - "nodeType": "PragmaDirective", - "src": "32:23:2", - "literals": [ - "solidity", - "^", - "0.8", - ".0" - ] - }, - { - "id": 57, - "nodeType": "ContractDefinition", - "src": "57:2210:2", - "nodes": [ - { - "id": 50, - "nodeType": "FunctionDefinition", - "src": "1085:110:2", - "documentation": { - "id": 41, - "nodeType": "StructuredDocumentation", - "src": "97:985:2", - "text": " @notice method that is simulated by the keepers to see if any work actually\n needs to be performed. This method does does not actually need to be\n executable, and since it is only ever simulated it can consume lots of gas.\n @dev To ensure that it is never called, you may want to add the\n cannotExecute modifier from KeeperBase to your implementation of this\n method.\n @param checkData specified in the upkeep registration so it is always the\n same for a registered upkeep. This can easily be broken down into specific\n arguments using `abi.decode`, so multiple upkeeps can be registered on the\n same contract and easily differentiated by the contract.\n @return upkeepNeeded boolean to indicate whether the keeper should call\n performUpkeep or not.\n @return performData bytes that the keeper should call performUpkeep with, if\n upkeep is needed. If you would like to encode data to decode later, try\n `abi.encode`." - }, - "functionSelector": "6e04ff0d", - "implemented": false, - "kind": "function", - "modifiers": [], - "name": "checkUpkeep", - "nameLocation": "1094:11:2", - "parameters": { - "id": 44, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 43, - "mutability": "mutable", - "name": "checkData", - "nameLocation": "1121:9:2", - "nodeType": "VariableDeclaration", - "scope": 50, - "src": "1106:24:2", - "stateVariable": false, - "storageLocation": "calldata", - "typeDescriptions": { - "typeIdentifier": "t_bytes_calldata_ptr", - "typeString": "bytes" - }, - "typeName": { - "id": 42, - "name": "bytes", - "nodeType": "ElementaryTypeName", - "src": "1106:5:2", - "typeDescriptions": { - "typeIdentifier": "t_bytes_storage_ptr", - "typeString": "bytes" - } - }, - "visibility": "internal" - } - ], - "src": "1105:26:2" - }, - "returnParameters": { - "id": 49, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 46, - "mutability": "mutable", - "name": "upkeepNeeded", - "nameLocation": "1155:12:2", - "nodeType": "VariableDeclaration", - "scope": 50, - "src": "1150:17:2", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - "typeName": { - "id": 45, - "name": "bool", - "nodeType": "ElementaryTypeName", - "src": "1150:4:2", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 48, - "mutability": "mutable", - "name": "performData", - "nameLocation": "1182:11:2", - "nodeType": "VariableDeclaration", - "scope": 50, - "src": "1169:24:2", - "stateVariable": false, - "storageLocation": "memory", - "typeDescriptions": { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes" - }, - "typeName": { - "id": 47, - "name": "bytes", - "nodeType": "ElementaryTypeName", - "src": "1169:5:2", - "typeDescriptions": { - "typeIdentifier": "t_bytes_storage_ptr", - "typeString": "bytes" - } - }, - "visibility": "internal" - } - ], - "src": "1149:45:2" - }, - "scope": 57, - "stateMutability": "nonpayable", - "virtual": false, - "visibility": "external" - }, - { - "id": 56, - "nodeType": "FunctionDefinition", - "src": "2205:60:2", - "documentation": { - "id": 51, - "nodeType": "StructuredDocumentation", - "src": "1199:1003:2", - "text": " @notice method that is actually executed by the keepers, via the registry.\n The data returned by the checkUpkeep simulation will be passed into\n this method to actually be executed.\n @dev The input to this method should not be trusted, and the caller of the\n method should not even be restricted to any single registry. Anyone should\n be able call it, and the input should be validated, there is no guarantee\n that the data passed in is the performData returned from checkUpkeep. This\n could happen due to malicious keepers, racing keepers, or simply a state\n change while the performUpkeep transaction is waiting for confirmation.\n Always validate the data passed in.\n @param performData is the data which was passed back from the checkData\n simulation. If it is encoded, it can easily be decoded into other types by\n calling `abi.decode`. This data should not be trusted, and should be\n validated against the contract's current state." - }, - "functionSelector": "4585e33b", - "implemented": false, - "kind": "function", - "modifiers": [], - "name": "performUpkeep", - "nameLocation": "2214:13:2", - "parameters": { - "id": 54, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 53, - "mutability": "mutable", - "name": "performData", - "nameLocation": "2243:11:2", - "nodeType": "VariableDeclaration", - "scope": 56, - "src": "2228:26:2", - "stateVariable": false, - "storageLocation": "calldata", - "typeDescriptions": { - "typeIdentifier": "t_bytes_calldata_ptr", - "typeString": "bytes" - }, - "typeName": { - "id": 52, - "name": "bytes", - "nodeType": "ElementaryTypeName", - "src": "2228:5:2", - "typeDescriptions": { - "typeIdentifier": "t_bytes_storage_ptr", - "typeString": "bytes" - } - }, - "visibility": "internal" - } - ], - "src": "2227:28:2" - }, - "returnParameters": { - "id": 55, - "nodeType": "ParameterList", - "parameters": [], - "src": "2264:0:2" - }, - "scope": 57, - "stateMutability": "nonpayable", - "virtual": false, - "visibility": "external" - } - ], - "abstract": false, - "baseContracts": [], - "canonicalName": "KeeperCompatibleInterface", - "contractDependencies": [], - "contractKind": "interface", - "fullyImplemented": false, - "linearizedBaseContracts": [ - 57 - ], - "name": "KeeperCompatibleInterface", - "nameLocation": "67:25:2", - "scope": 58, - "usedErrors": [] - } - ], - "license": "MIT" - } -} \ No newline at end of file diff --git a/out/SafeERC20.sol/SafeERC20.json b/out/SafeERC20.sol/SafeERC20.json deleted file mode 100644 index e12bf38..0000000 --- a/out/SafeERC20.sol/SafeERC20.json +++ /dev/null @@ -1,3045 +0,0 @@ -{ - "abi": [], - "bytecode": { - "object": "0x60566037600b82828239805160001a607314602a57634e487b7160e01b600052600060045260246000fd5b30600052607381538281f3fe73000000000000000000000000000000000000000030146080604052600080fdfea2646970667358221220e63855c7d87bb0cfc22e8016e43366db66be3028e21b2248dcf75e729130958e64736f6c634300080d0033", - "sourceMap": "645:3270:5:-:0;;;;;;;;;;;;;;;-1:-1:-1;;;645:3270:5;;;;;;;;;;;;;;;;;", - "linkReferences": {} - }, - "deployedBytecode": { - "object": "0x73000000000000000000000000000000000000000030146080604052600080fdfea2646970667358221220e63855c7d87bb0cfc22e8016e43366db66be3028e21b2248dcf75e729130958e64736f6c634300080d0033", - "sourceMap": "645:3270:5:-:0;;;;;;;;", - "linkReferences": {} - }, - "ast": { - "absolutePath": "/mnt/c/Users/PizzaHi5/Documents/CreatorDAO/CreatorDAO/lib/openzeppelin-contracts/contracts/token/ERC20/utils/SafeERC20.sol", - "id": 2147, - "exportedSymbols": { - "Address": [ - 2557 - ], - "IERC20": [ - 1922 - ], - "SafeERC20": [ - 2146 - ] - }, - "nodeType": "SourceUnit", - "src": "100:3816:5", - "nodes": [ - { - "id": 1924, - "nodeType": "PragmaDirective", - "src": "100:23:5", - "literals": [ - "solidity", - "^", - "0.8", - ".0" - ] - }, - { - "id": 1925, - "nodeType": "ImportDirective", - "src": "125:23:5", - "absolutePath": "/mnt/c/Users/PizzaHi5/Documents/CreatorDAO/CreatorDAO/lib/openzeppelin-contracts/contracts/token/ERC20/IERC20.sol", - "file": "../IERC20.sol", - "nameLocation": "-1:-1:-1", - "scope": 2147, - "sourceUnit": 1923, - "symbolAliases": [], - "unitAlias": "" - }, - { - "id": 1926, - "nodeType": "ImportDirective", - "src": "149:36:5", - "absolutePath": "/mnt/c/Users/PizzaHi5/Documents/CreatorDAO/CreatorDAO/lib/openzeppelin-contracts/contracts/utils/Address.sol", - "file": "../../../utils/Address.sol", - "nameLocation": "-1:-1:-1", - "scope": 2147, - "sourceUnit": 2558, - "symbolAliases": [], - "unitAlias": "" - }, - { - "id": 2146, - "nodeType": "ContractDefinition", - "src": "645:3270:5", - "nodes": [ - { - "id": 1930, - "nodeType": "UsingForDirective", - "src": "669:26:5", - "global": false, - "libraryName": { - "id": 1928, - "name": "Address", - "nodeType": "IdentifierPath", - "referencedDeclaration": 2557, - "src": "675:7:5" - }, - "typeName": { - "id": 1929, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "687:7:5", - "stateMutability": "nonpayable", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - } - }, - { - "id": 1953, - "nodeType": "FunctionDefinition", - "src": "701:205:5", - "body": { - "id": 1952, - "nodeType": "Block", - "src": "803:103:5", - "statements": [ - { - "expression": { - "arguments": [ - { - "id": 1941, - "name": "token", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1933, - "src": "833:5:5", - "typeDescriptions": { - "typeIdentifier": "t_contract$_IERC20_$1922", - "typeString": "contract IERC20" - } - }, - { - "arguments": [ - { - "expression": { - "expression": { - "id": 1944, - "name": "token", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1933, - "src": "863:5:5", - "typeDescriptions": { - "typeIdentifier": "t_contract$_IERC20_$1922", - "typeString": "contract IERC20" - } - }, - "id": 1945, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberName": "transfer", - "nodeType": "MemberAccess", - "referencedDeclaration": 1889, - "src": "863:14:5", - "typeDescriptions": { - "typeIdentifier": "t_function_external_nonpayable$_t_address_$_t_uint256_$returns$_t_bool_$", - "typeString": "function (address,uint256) external returns (bool)" - } - }, - "id": 1946, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberName": "selector", - "nodeType": "MemberAccess", - "src": "863:23:5", - "typeDescriptions": { - "typeIdentifier": "t_bytes4", - "typeString": "bytes4" - } - }, - { - "id": 1947, - "name": "to", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1935, - "src": "888:2:5", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - { - "id": 1948, - "name": "value", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1937, - "src": "892:5:5", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_bytes4", - "typeString": "bytes4" - }, - { - "typeIdentifier": "t_address", - "typeString": "address" - }, - { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - ], - "expression": { - "id": 1942, - "name": "abi", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": -1, - "src": "840:3:5", - "typeDescriptions": { - "typeIdentifier": "t_magic_abi", - "typeString": "abi" - } - }, - "id": 1943, - "isConstant": false, - "isLValue": false, - "isPure": true, - "lValueRequested": false, - "memberName": "encodeWithSelector", - "nodeType": "MemberAccess", - "src": "840:22:5", - "typeDescriptions": { - "typeIdentifier": "t_function_abiencodewithselector_pure$_t_bytes4_$returns$_t_bytes_memory_ptr_$", - "typeString": "function (bytes4) pure returns (bytes memory)" - } - }, - "id": 1949, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "840:58:5", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes memory" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_contract$_IERC20_$1922", - "typeString": "contract IERC20" - }, - { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes memory" - } - ], - "id": 1940, - "name": "_callOptionalReturn", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2145, - "src": "813:19:5", - "typeDescriptions": { - "typeIdentifier": "t_function_internal_nonpayable$_t_contract$_IERC20_$1922_$_t_bytes_memory_ptr_$returns$__$", - "typeString": "function (contract IERC20,bytes memory)" - } - }, - "id": 1950, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "813:86:5", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 1951, - "nodeType": "ExpressionStatement", - "src": "813:86:5" - } - ] - }, - "implemented": true, - "kind": "function", - "modifiers": [], - "name": "safeTransfer", - "nameLocation": "710:12:5", - "parameters": { - "id": 1938, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 1933, - "mutability": "mutable", - "name": "token", - "nameLocation": "739:5:5", - "nodeType": "VariableDeclaration", - "scope": 1953, - "src": "732:12:5", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_contract$_IERC20_$1922", - "typeString": "contract IERC20" - }, - "typeName": { - "id": 1932, - "nodeType": "UserDefinedTypeName", - "pathNode": { - "id": 1931, - "name": "IERC20", - "nodeType": "IdentifierPath", - "referencedDeclaration": 1922, - "src": "732:6:5" - }, - "referencedDeclaration": 1922, - "src": "732:6:5", - "typeDescriptions": { - "typeIdentifier": "t_contract$_IERC20_$1922", - "typeString": "contract IERC20" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 1935, - "mutability": "mutable", - "name": "to", - "nameLocation": "762:2:5", - "nodeType": "VariableDeclaration", - "scope": 1953, - "src": "754:10:5", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "typeName": { - "id": 1934, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "754:7:5", - "stateMutability": "nonpayable", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 1937, - "mutability": "mutable", - "name": "value", - "nameLocation": "782:5:5", - "nodeType": "VariableDeclaration", - "scope": 1953, - "src": "774:13:5", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 1936, - "name": "uint256", - "nodeType": "ElementaryTypeName", - "src": "774:7:5", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "visibility": "internal" - } - ], - "src": "722:71:5" - }, - "returnParameters": { - "id": 1939, - "nodeType": "ParameterList", - "parameters": [], - "src": "803:0:5" - }, - "scope": 2146, - "stateMutability": "nonpayable", - "virtual": false, - "visibility": "internal" - }, - { - "id": 1979, - "nodeType": "FunctionDefinition", - "src": "912:241:5", - "body": { - "id": 1978, - "nodeType": "Block", - "src": "1040:113:5", - "statements": [ - { - "expression": { - "arguments": [ - { - "id": 1966, - "name": "token", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1956, - "src": "1070:5:5", - "typeDescriptions": { - "typeIdentifier": "t_contract$_IERC20_$1922", - "typeString": "contract IERC20" - } - }, - { - "arguments": [ - { - "expression": { - "expression": { - "id": 1969, - "name": "token", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1956, - "src": "1100:5:5", - "typeDescriptions": { - "typeIdentifier": "t_contract$_IERC20_$1922", - "typeString": "contract IERC20" - } - }, - "id": 1970, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberName": "transferFrom", - "nodeType": "MemberAccess", - "referencedDeclaration": 1921, - "src": "1100:18:5", - "typeDescriptions": { - "typeIdentifier": "t_function_external_nonpayable$_t_address_$_t_address_$_t_uint256_$returns$_t_bool_$", - "typeString": "function (address,address,uint256) external returns (bool)" - } - }, - "id": 1971, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberName": "selector", - "nodeType": "MemberAccess", - "src": "1100:27:5", - "typeDescriptions": { - "typeIdentifier": "t_bytes4", - "typeString": "bytes4" - } - }, - { - "id": 1972, - "name": "from", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1958, - "src": "1129:4:5", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - { - "id": 1973, - "name": "to", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1960, - "src": "1135:2:5", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - { - "id": 1974, - "name": "value", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1962, - "src": "1139:5:5", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_bytes4", - "typeString": "bytes4" - }, - { - "typeIdentifier": "t_address", - "typeString": "address" - }, - { - "typeIdentifier": "t_address", - "typeString": "address" - }, - { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - ], - "expression": { - "id": 1967, - "name": "abi", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": -1, - "src": "1077:3:5", - "typeDescriptions": { - "typeIdentifier": "t_magic_abi", - "typeString": "abi" - } - }, - "id": 1968, - "isConstant": false, - "isLValue": false, - "isPure": true, - "lValueRequested": false, - "memberName": "encodeWithSelector", - "nodeType": "MemberAccess", - "src": "1077:22:5", - "typeDescriptions": { - "typeIdentifier": "t_function_abiencodewithselector_pure$_t_bytes4_$returns$_t_bytes_memory_ptr_$", - "typeString": "function (bytes4) pure returns (bytes memory)" - } - }, - "id": 1975, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "1077:68:5", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes memory" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_contract$_IERC20_$1922", - "typeString": "contract IERC20" - }, - { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes memory" - } - ], - "id": 1965, - "name": "_callOptionalReturn", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2145, - "src": "1050:19:5", - "typeDescriptions": { - "typeIdentifier": "t_function_internal_nonpayable$_t_contract$_IERC20_$1922_$_t_bytes_memory_ptr_$returns$__$", - "typeString": "function (contract IERC20,bytes memory)" - } - }, - "id": 1976, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "1050:96:5", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 1977, - "nodeType": "ExpressionStatement", - "src": "1050:96:5" - } - ] - }, - "implemented": true, - "kind": "function", - "modifiers": [], - "name": "safeTransferFrom", - "nameLocation": "921:16:5", - "parameters": { - "id": 1963, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 1956, - "mutability": "mutable", - "name": "token", - "nameLocation": "954:5:5", - "nodeType": "VariableDeclaration", - "scope": 1979, - "src": "947:12:5", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_contract$_IERC20_$1922", - "typeString": "contract IERC20" - }, - "typeName": { - "id": 1955, - "nodeType": "UserDefinedTypeName", - "pathNode": { - "id": 1954, - "name": "IERC20", - "nodeType": "IdentifierPath", - "referencedDeclaration": 1922, - "src": "947:6:5" - }, - "referencedDeclaration": 1922, - "src": "947:6:5", - "typeDescriptions": { - "typeIdentifier": "t_contract$_IERC20_$1922", - "typeString": "contract IERC20" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 1958, - "mutability": "mutable", - "name": "from", - "nameLocation": "977:4:5", - "nodeType": "VariableDeclaration", - "scope": 1979, - "src": "969:12:5", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "typeName": { - "id": 1957, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "969:7:5", - "stateMutability": "nonpayable", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 1960, - "mutability": "mutable", - "name": "to", - "nameLocation": "999:2:5", - "nodeType": "VariableDeclaration", - "scope": 1979, - "src": "991:10:5", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "typeName": { - "id": 1959, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "991:7:5", - "stateMutability": "nonpayable", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 1962, - "mutability": "mutable", - "name": "value", - "nameLocation": "1019:5:5", - "nodeType": "VariableDeclaration", - "scope": 1979, - "src": "1011:13:5", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 1961, - "name": "uint256", - "nodeType": "ElementaryTypeName", - "src": "1011:7:5", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "visibility": "internal" - } - ], - "src": "937:93:5" - }, - "returnParameters": { - "id": 1964, - "nodeType": "ParameterList", - "parameters": [], - "src": "1040:0:5" - }, - "scope": 2146, - "stateMutability": "nonpayable", - "virtual": false, - "visibility": "internal" - }, - { - "id": 2023, - "nodeType": "FunctionDefinition", - "src": "1413:603:5", - "body": { - "id": 2022, - "nodeType": "Block", - "src": "1519:497:5", - "statements": [ - { - "expression": { - "arguments": [ - { - "commonType": { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - "id": 2006, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "components": [ - { - "commonType": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "id": 1993, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "id": 1991, - "name": "value", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1987, - "src": "1768:5:5", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "BinaryOperation", - "operator": "==", - "rightExpression": { - "hexValue": "30", - "id": 1992, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "number", - "lValueRequested": false, - "nodeType": "Literal", - "src": "1777:1:5", - "typeDescriptions": { - "typeIdentifier": "t_rational_0_by_1", - "typeString": "int_const 0" - }, - "value": "0" - }, - "src": "1768:10:5", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - } - ], - "id": 1994, - "isConstant": false, - "isInlineArray": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "nodeType": "TupleExpression", - "src": "1767:12:5", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "nodeType": "BinaryOperation", - "operator": "||", - "rightExpression": { - "components": [ - { - "commonType": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "id": 2004, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "arguments": [ - { - "arguments": [ - { - "id": 1999, - "name": "this", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": -28, - "src": "1808:4:5", - "typeDescriptions": { - "typeIdentifier": "t_contract$_SafeERC20_$2146", - "typeString": "library SafeERC20" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_contract$_SafeERC20_$2146", - "typeString": "library SafeERC20" - } - ], - "id": 1998, - "isConstant": false, - "isLValue": false, - "isPure": true, - "lValueRequested": false, - "nodeType": "ElementaryTypeNameExpression", - "src": "1800:7:5", - "typeDescriptions": { - "typeIdentifier": "t_type$_t_address_$", - "typeString": "type(address)" - }, - "typeName": { - "id": 1997, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "1800:7:5", - "typeDescriptions": {} - } - }, - "id": 2000, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "typeConversion", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "1800:13:5", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - { - "id": 2001, - "name": "spender", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1985, - "src": "1815:7:5", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_address", - "typeString": "address" - }, - { - "typeIdentifier": "t_address", - "typeString": "address" - } - ], - "expression": { - "id": 1995, - "name": "token", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1983, - "src": "1784:5:5", - "typeDescriptions": { - "typeIdentifier": "t_contract$_IERC20_$1922", - "typeString": "contract IERC20" - } - }, - "id": 1996, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberName": "allowance", - "nodeType": "MemberAccess", - "referencedDeclaration": 1899, - "src": "1784:15:5", - "typeDescriptions": { - "typeIdentifier": "t_function_external_view$_t_address_$_t_address_$returns$_t_uint256_$", - "typeString": "function (address,address) view external returns (uint256)" - } - }, - "id": 2002, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "1784:39:5", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "BinaryOperation", - "operator": "==", - "rightExpression": { - "hexValue": "30", - "id": 2003, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "number", - "lValueRequested": false, - "nodeType": "Literal", - "src": "1827:1:5", - "typeDescriptions": { - "typeIdentifier": "t_rational_0_by_1", - "typeString": "int_const 0" - }, - "value": "0" - }, - "src": "1784:44:5", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - } - ], - "id": 2005, - "isConstant": false, - "isInlineArray": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "nodeType": "TupleExpression", - "src": "1783:46:5", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "src": "1767:62:5", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - { - "hexValue": "5361666545524332303a20617070726f76652066726f6d206e6f6e2d7a65726f20746f206e6f6e2d7a65726f20616c6c6f77616e6365", - "id": 2007, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "string", - "lValueRequested": false, - "nodeType": "Literal", - "src": "1843:56:5", - "typeDescriptions": { - "typeIdentifier": "t_stringliteral_ef945ddb1bfdc0da870feb4560d868b047642b4ac7f2fb7f8b7c51cb4a411e25", - "typeString": "literal_string \"SafeERC20: approve from non-zero to non-zero allowance\"" - }, - "value": "SafeERC20: approve from non-zero to non-zero allowance" - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - { - "typeIdentifier": "t_stringliteral_ef945ddb1bfdc0da870feb4560d868b047642b4ac7f2fb7f8b7c51cb4a411e25", - "typeString": "literal_string \"SafeERC20: approve from non-zero to non-zero allowance\"" - } - ], - "id": 1990, - "name": "require", - "nodeType": "Identifier", - "overloadedDeclarations": [ - -18, - -18 - ], - "referencedDeclaration": -18, - "src": "1746:7:5", - "typeDescriptions": { - "typeIdentifier": "t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$", - "typeString": "function (bool,string memory) pure" - } - }, - "id": 2008, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "1746:163:5", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 2009, - "nodeType": "ExpressionStatement", - "src": "1746:163:5" - }, - { - "expression": { - "arguments": [ - { - "id": 2011, - "name": "token", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1983, - "src": "1939:5:5", - "typeDescriptions": { - "typeIdentifier": "t_contract$_IERC20_$1922", - "typeString": "contract IERC20" - } - }, - { - "arguments": [ - { - "expression": { - "expression": { - "id": 2014, - "name": "token", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1983, - "src": "1969:5:5", - "typeDescriptions": { - "typeIdentifier": "t_contract$_IERC20_$1922", - "typeString": "contract IERC20" - } - }, - "id": 2015, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberName": "approve", - "nodeType": "MemberAccess", - "referencedDeclaration": 1909, - "src": "1969:13:5", - "typeDescriptions": { - "typeIdentifier": "t_function_external_nonpayable$_t_address_$_t_uint256_$returns$_t_bool_$", - "typeString": "function (address,uint256) external returns (bool)" - } - }, - "id": 2016, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberName": "selector", - "nodeType": "MemberAccess", - "src": "1969:22:5", - "typeDescriptions": { - "typeIdentifier": "t_bytes4", - "typeString": "bytes4" - } - }, - { - "id": 2017, - "name": "spender", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1985, - "src": "1993:7:5", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - { - "id": 2018, - "name": "value", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1987, - "src": "2002:5:5", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_bytes4", - "typeString": "bytes4" - }, - { - "typeIdentifier": "t_address", - "typeString": "address" - }, - { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - ], - "expression": { - "id": 2012, - "name": "abi", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": -1, - "src": "1946:3:5", - "typeDescriptions": { - "typeIdentifier": "t_magic_abi", - "typeString": "abi" - } - }, - "id": 2013, - "isConstant": false, - "isLValue": false, - "isPure": true, - "lValueRequested": false, - "memberName": "encodeWithSelector", - "nodeType": "MemberAccess", - "src": "1946:22:5", - "typeDescriptions": { - "typeIdentifier": "t_function_abiencodewithselector_pure$_t_bytes4_$returns$_t_bytes_memory_ptr_$", - "typeString": "function (bytes4) pure returns (bytes memory)" - } - }, - "id": 2019, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "1946:62:5", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes memory" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_contract$_IERC20_$1922", - "typeString": "contract IERC20" - }, - { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes memory" - } - ], - "id": 2010, - "name": "_callOptionalReturn", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2145, - "src": "1919:19:5", - "typeDescriptions": { - "typeIdentifier": "t_function_internal_nonpayable$_t_contract$_IERC20_$1922_$_t_bytes_memory_ptr_$returns$__$", - "typeString": "function (contract IERC20,bytes memory)" - } - }, - "id": 2020, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "1919:90:5", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 2021, - "nodeType": "ExpressionStatement", - "src": "1919:90:5" - } - ] - }, - "documentation": { - "id": 1980, - "nodeType": "StructuredDocumentation", - "src": "1159:249:5", - "text": " @dev Deprecated. This function has issues similar to the ones found in\n {IERC20-approve}, and its usage is discouraged.\n Whenever possible, use {safeIncreaseAllowance} and\n {safeDecreaseAllowance} instead." - }, - "implemented": true, - "kind": "function", - "modifiers": [], - "name": "safeApprove", - "nameLocation": "1422:11:5", - "parameters": { - "id": 1988, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 1983, - "mutability": "mutable", - "name": "token", - "nameLocation": "1450:5:5", - "nodeType": "VariableDeclaration", - "scope": 2023, - "src": "1443:12:5", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_contract$_IERC20_$1922", - "typeString": "contract IERC20" - }, - "typeName": { - "id": 1982, - "nodeType": "UserDefinedTypeName", - "pathNode": { - "id": 1981, - "name": "IERC20", - "nodeType": "IdentifierPath", - "referencedDeclaration": 1922, - "src": "1443:6:5" - }, - "referencedDeclaration": 1922, - "src": "1443:6:5", - "typeDescriptions": { - "typeIdentifier": "t_contract$_IERC20_$1922", - "typeString": "contract IERC20" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 1985, - "mutability": "mutable", - "name": "spender", - "nameLocation": "1473:7:5", - "nodeType": "VariableDeclaration", - "scope": 2023, - "src": "1465:15:5", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "typeName": { - "id": 1984, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "1465:7:5", - "stateMutability": "nonpayable", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 1987, - "mutability": "mutable", - "name": "value", - "nameLocation": "1498:5:5", - "nodeType": "VariableDeclaration", - "scope": 2023, - "src": "1490:13:5", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 1986, - "name": "uint256", - "nodeType": "ElementaryTypeName", - "src": "1490:7:5", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "visibility": "internal" - } - ], - "src": "1433:76:5" - }, - "returnParameters": { - "id": 1989, - "nodeType": "ParameterList", - "parameters": [], - "src": "1519:0:5" - }, - "scope": 2146, - "stateMutability": "nonpayable", - "virtual": false, - "visibility": "internal" - }, - { - "id": 2059, - "nodeType": "FunctionDefinition", - "src": "2022:310:5", - "body": { - "id": 2058, - "nodeType": "Block", - "src": "2138:194:5", - "statements": [ - { - "assignments": [ - 2034 - ], - "declarations": [ - { - "constant": false, - "id": 2034, - "mutability": "mutable", - "name": "newAllowance", - "nameLocation": "2156:12:5", - "nodeType": "VariableDeclaration", - "scope": 2058, - "src": "2148:20:5", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 2033, - "name": "uint256", - "nodeType": "ElementaryTypeName", - "src": "2148:7:5", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "visibility": "internal" - } - ], - "id": 2045, - "initialValue": { - "commonType": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "id": 2044, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "arguments": [ - { - "arguments": [ - { - "id": 2039, - "name": "this", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": -28, - "src": "2195:4:5", - "typeDescriptions": { - "typeIdentifier": "t_contract$_SafeERC20_$2146", - "typeString": "library SafeERC20" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_contract$_SafeERC20_$2146", - "typeString": "library SafeERC20" - } - ], - "id": 2038, - "isConstant": false, - "isLValue": false, - "isPure": true, - "lValueRequested": false, - "nodeType": "ElementaryTypeNameExpression", - "src": "2187:7:5", - "typeDescriptions": { - "typeIdentifier": "t_type$_t_address_$", - "typeString": "type(address)" - }, - "typeName": { - "id": 2037, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "2187:7:5", - "typeDescriptions": {} - } - }, - "id": 2040, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "typeConversion", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "2187:13:5", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - { - "id": 2041, - "name": "spender", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2028, - "src": "2202:7:5", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_address", - "typeString": "address" - }, - { - "typeIdentifier": "t_address", - "typeString": "address" - } - ], - "expression": { - "id": 2035, - "name": "token", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2026, - "src": "2171:5:5", - "typeDescriptions": { - "typeIdentifier": "t_contract$_IERC20_$1922", - "typeString": "contract IERC20" - } - }, - "id": 2036, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberName": "allowance", - "nodeType": "MemberAccess", - "referencedDeclaration": 1899, - "src": "2171:15:5", - "typeDescriptions": { - "typeIdentifier": "t_function_external_view$_t_address_$_t_address_$returns$_t_uint256_$", - "typeString": "function (address,address) view external returns (uint256)" - } - }, - "id": 2042, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "2171:39:5", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "BinaryOperation", - "operator": "+", - "rightExpression": { - "id": 2043, - "name": "value", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2030, - "src": "2213:5:5", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "src": "2171:47:5", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "VariableDeclarationStatement", - "src": "2148:70:5" - }, - { - "expression": { - "arguments": [ - { - "id": 2047, - "name": "token", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2026, - "src": "2248:5:5", - "typeDescriptions": { - "typeIdentifier": "t_contract$_IERC20_$1922", - "typeString": "contract IERC20" - } - }, - { - "arguments": [ - { - "expression": { - "expression": { - "id": 2050, - "name": "token", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2026, - "src": "2278:5:5", - "typeDescriptions": { - "typeIdentifier": "t_contract$_IERC20_$1922", - "typeString": "contract IERC20" - } - }, - "id": 2051, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberName": "approve", - "nodeType": "MemberAccess", - "referencedDeclaration": 1909, - "src": "2278:13:5", - "typeDescriptions": { - "typeIdentifier": "t_function_external_nonpayable$_t_address_$_t_uint256_$returns$_t_bool_$", - "typeString": "function (address,uint256) external returns (bool)" - } - }, - "id": 2052, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberName": "selector", - "nodeType": "MemberAccess", - "src": "2278:22:5", - "typeDescriptions": { - "typeIdentifier": "t_bytes4", - "typeString": "bytes4" - } - }, - { - "id": 2053, - "name": "spender", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2028, - "src": "2302:7:5", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - { - "id": 2054, - "name": "newAllowance", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2034, - "src": "2311:12:5", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_bytes4", - "typeString": "bytes4" - }, - { - "typeIdentifier": "t_address", - "typeString": "address" - }, - { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - ], - "expression": { - "id": 2048, - "name": "abi", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": -1, - "src": "2255:3:5", - "typeDescriptions": { - "typeIdentifier": "t_magic_abi", - "typeString": "abi" - } - }, - "id": 2049, - "isConstant": false, - "isLValue": false, - "isPure": true, - "lValueRequested": false, - "memberName": "encodeWithSelector", - "nodeType": "MemberAccess", - "src": "2255:22:5", - "typeDescriptions": { - "typeIdentifier": "t_function_abiencodewithselector_pure$_t_bytes4_$returns$_t_bytes_memory_ptr_$", - "typeString": "function (bytes4) pure returns (bytes memory)" - } - }, - "id": 2055, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "2255:69:5", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes memory" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_contract$_IERC20_$1922", - "typeString": "contract IERC20" - }, - { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes memory" - } - ], - "id": 2046, - "name": "_callOptionalReturn", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2145, - "src": "2228:19:5", - "typeDescriptions": { - "typeIdentifier": "t_function_internal_nonpayable$_t_contract$_IERC20_$1922_$_t_bytes_memory_ptr_$returns$__$", - "typeString": "function (contract IERC20,bytes memory)" - } - }, - "id": 2056, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "2228:97:5", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 2057, - "nodeType": "ExpressionStatement", - "src": "2228:97:5" - } - ] - }, - "implemented": true, - "kind": "function", - "modifiers": [], - "name": "safeIncreaseAllowance", - "nameLocation": "2031:21:5", - "parameters": { - "id": 2031, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 2026, - "mutability": "mutable", - "name": "token", - "nameLocation": "2069:5:5", - "nodeType": "VariableDeclaration", - "scope": 2059, - "src": "2062:12:5", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_contract$_IERC20_$1922", - "typeString": "contract IERC20" - }, - "typeName": { - "id": 2025, - "nodeType": "UserDefinedTypeName", - "pathNode": { - "id": 2024, - "name": "IERC20", - "nodeType": "IdentifierPath", - "referencedDeclaration": 1922, - "src": "2062:6:5" - }, - "referencedDeclaration": 1922, - "src": "2062:6:5", - "typeDescriptions": { - "typeIdentifier": "t_contract$_IERC20_$1922", - "typeString": "contract IERC20" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 2028, - "mutability": "mutable", - "name": "spender", - "nameLocation": "2092:7:5", - "nodeType": "VariableDeclaration", - "scope": 2059, - "src": "2084:15:5", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "typeName": { - "id": 2027, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "2084:7:5", - "stateMutability": "nonpayable", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 2030, - "mutability": "mutable", - "name": "value", - "nameLocation": "2117:5:5", - "nodeType": "VariableDeclaration", - "scope": 2059, - "src": "2109:13:5", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 2029, - "name": "uint256", - "nodeType": "ElementaryTypeName", - "src": "2109:7:5", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "visibility": "internal" - } - ], - "src": "2052:76:5" - }, - "returnParameters": { - "id": 2032, - "nodeType": "ParameterList", - "parameters": [], - "src": "2138:0:5" - }, - "scope": 2146, - "stateMutability": "nonpayable", - "virtual": false, - "visibility": "internal" - }, - { - "id": 2107, - "nodeType": "FunctionDefinition", - "src": "2338:486:5", - "body": { - "id": 2106, - "nodeType": "Block", - "src": "2454:370:5", - "statements": [ - { - "id": 2105, - "nodeType": "UncheckedBlock", - "src": "2464:354:5", - "statements": [ - { - "assignments": [ - 2070 - ], - "declarations": [ - { - "constant": false, - "id": 2070, - "mutability": "mutable", - "name": "oldAllowance", - "nameLocation": "2496:12:5", - "nodeType": "VariableDeclaration", - "scope": 2105, - "src": "2488:20:5", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 2069, - "name": "uint256", - "nodeType": "ElementaryTypeName", - "src": "2488:7:5", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "visibility": "internal" - } - ], - "id": 2079, - "initialValue": { - "arguments": [ - { - "arguments": [ - { - "id": 2075, - "name": "this", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": -28, - "src": "2535:4:5", - "typeDescriptions": { - "typeIdentifier": "t_contract$_SafeERC20_$2146", - "typeString": "library SafeERC20" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_contract$_SafeERC20_$2146", - "typeString": "library SafeERC20" - } - ], - "id": 2074, - "isConstant": false, - "isLValue": false, - "isPure": true, - "lValueRequested": false, - "nodeType": "ElementaryTypeNameExpression", - "src": "2527:7:5", - "typeDescriptions": { - "typeIdentifier": "t_type$_t_address_$", - "typeString": "type(address)" - }, - "typeName": { - "id": 2073, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "2527:7:5", - "typeDescriptions": {} - } - }, - "id": 2076, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "typeConversion", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "2527:13:5", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - { - "id": 2077, - "name": "spender", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2064, - "src": "2542:7:5", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_address", - "typeString": "address" - }, - { - "typeIdentifier": "t_address", - "typeString": "address" - } - ], - "expression": { - "id": 2071, - "name": "token", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2062, - "src": "2511:5:5", - "typeDescriptions": { - "typeIdentifier": "t_contract$_IERC20_$1922", - "typeString": "contract IERC20" - } - }, - "id": 2072, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberName": "allowance", - "nodeType": "MemberAccess", - "referencedDeclaration": 1899, - "src": "2511:15:5", - "typeDescriptions": { - "typeIdentifier": "t_function_external_view$_t_address_$_t_address_$returns$_t_uint256_$", - "typeString": "function (address,address) view external returns (uint256)" - } - }, - "id": 2078, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "2511:39:5", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "VariableDeclarationStatement", - "src": "2488:62:5" - }, - { - "expression": { - "arguments": [ - { - "commonType": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "id": 2083, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "id": 2081, - "name": "oldAllowance", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2070, - "src": "2572:12:5", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "BinaryOperation", - "operator": ">=", - "rightExpression": { - "id": 2082, - "name": "value", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2066, - "src": "2588:5:5", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "src": "2572:21:5", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - { - "hexValue": "5361666545524332303a2064656372656173656420616c6c6f77616e63652062656c6f77207a65726f", - "id": 2084, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "string", - "lValueRequested": false, - "nodeType": "Literal", - "src": "2595:43:5", - "typeDescriptions": { - "typeIdentifier": "t_stringliteral_2c3af60974a758b7e72e108c9bf0943ecc9e4f2e8af4695da5f52fbf57a63d3a", - "typeString": "literal_string \"SafeERC20: decreased allowance below zero\"" - }, - "value": "SafeERC20: decreased allowance below zero" - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - { - "typeIdentifier": "t_stringliteral_2c3af60974a758b7e72e108c9bf0943ecc9e4f2e8af4695da5f52fbf57a63d3a", - "typeString": "literal_string \"SafeERC20: decreased allowance below zero\"" - } - ], - "id": 2080, - "name": "require", - "nodeType": "Identifier", - "overloadedDeclarations": [ - -18, - -18 - ], - "referencedDeclaration": -18, - "src": "2564:7:5", - "typeDescriptions": { - "typeIdentifier": "t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$", - "typeString": "function (bool,string memory) pure" - } - }, - "id": 2085, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "2564:75:5", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 2086, - "nodeType": "ExpressionStatement", - "src": "2564:75:5" - }, - { - "assignments": [ - 2088 - ], - "declarations": [ - { - "constant": false, - "id": 2088, - "mutability": "mutable", - "name": "newAllowance", - "nameLocation": "2661:12:5", - "nodeType": "VariableDeclaration", - "scope": 2105, - "src": "2653:20:5", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 2087, - "name": "uint256", - "nodeType": "ElementaryTypeName", - "src": "2653:7:5", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "visibility": "internal" - } - ], - "id": 2092, - "initialValue": { - "commonType": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "id": 2091, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "id": 2089, - "name": "oldAllowance", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2070, - "src": "2676:12:5", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "BinaryOperation", - "operator": "-", - "rightExpression": { - "id": 2090, - "name": "value", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2066, - "src": "2691:5:5", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "src": "2676:20:5", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "VariableDeclarationStatement", - "src": "2653:43:5" - }, - { - "expression": { - "arguments": [ - { - "id": 2094, - "name": "token", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2062, - "src": "2730:5:5", - "typeDescriptions": { - "typeIdentifier": "t_contract$_IERC20_$1922", - "typeString": "contract IERC20" - } - }, - { - "arguments": [ - { - "expression": { - "expression": { - "id": 2097, - "name": "token", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2062, - "src": "2760:5:5", - "typeDescriptions": { - "typeIdentifier": "t_contract$_IERC20_$1922", - "typeString": "contract IERC20" - } - }, - "id": 2098, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberName": "approve", - "nodeType": "MemberAccess", - "referencedDeclaration": 1909, - "src": "2760:13:5", - "typeDescriptions": { - "typeIdentifier": "t_function_external_nonpayable$_t_address_$_t_uint256_$returns$_t_bool_$", - "typeString": "function (address,uint256) external returns (bool)" - } - }, - "id": 2099, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberName": "selector", - "nodeType": "MemberAccess", - "src": "2760:22:5", - "typeDescriptions": { - "typeIdentifier": "t_bytes4", - "typeString": "bytes4" - } - }, - { - "id": 2100, - "name": "spender", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2064, - "src": "2784:7:5", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - { - "id": 2101, - "name": "newAllowance", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2088, - "src": "2793:12:5", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_bytes4", - "typeString": "bytes4" - }, - { - "typeIdentifier": "t_address", - "typeString": "address" - }, - { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - ], - "expression": { - "id": 2095, - "name": "abi", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": -1, - "src": "2737:3:5", - "typeDescriptions": { - "typeIdentifier": "t_magic_abi", - "typeString": "abi" - } - }, - "id": 2096, - "isConstant": false, - "isLValue": false, - "isPure": true, - "lValueRequested": false, - "memberName": "encodeWithSelector", - "nodeType": "MemberAccess", - "src": "2737:22:5", - "typeDescriptions": { - "typeIdentifier": "t_function_abiencodewithselector_pure$_t_bytes4_$returns$_t_bytes_memory_ptr_$", - "typeString": "function (bytes4) pure returns (bytes memory)" - } - }, - "id": 2102, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "2737:69:5", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes memory" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_contract$_IERC20_$1922", - "typeString": "contract IERC20" - }, - { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes memory" - } - ], - "id": 2093, - "name": "_callOptionalReturn", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2145, - "src": "2710:19:5", - "typeDescriptions": { - "typeIdentifier": "t_function_internal_nonpayable$_t_contract$_IERC20_$1922_$_t_bytes_memory_ptr_$returns$__$", - "typeString": "function (contract IERC20,bytes memory)" - } - }, - "id": 2103, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "2710:97:5", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 2104, - "nodeType": "ExpressionStatement", - "src": "2710:97:5" - } - ] - } - ] - }, - "implemented": true, - "kind": "function", - "modifiers": [], - "name": "safeDecreaseAllowance", - "nameLocation": "2347:21:5", - "parameters": { - "id": 2067, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 2062, - "mutability": "mutable", - "name": "token", - "nameLocation": "2385:5:5", - "nodeType": "VariableDeclaration", - "scope": 2107, - "src": "2378:12:5", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_contract$_IERC20_$1922", - "typeString": "contract IERC20" - }, - "typeName": { - "id": 2061, - "nodeType": "UserDefinedTypeName", - "pathNode": { - "id": 2060, - "name": "IERC20", - "nodeType": "IdentifierPath", - "referencedDeclaration": 1922, - "src": "2378:6:5" - }, - "referencedDeclaration": 1922, - "src": "2378:6:5", - "typeDescriptions": { - "typeIdentifier": "t_contract$_IERC20_$1922", - "typeString": "contract IERC20" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 2064, - "mutability": "mutable", - "name": "spender", - "nameLocation": "2408:7:5", - "nodeType": "VariableDeclaration", - "scope": 2107, - "src": "2400:15:5", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "typeName": { - "id": 2063, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "2400:7:5", - "stateMutability": "nonpayable", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 2066, - "mutability": "mutable", - "name": "value", - "nameLocation": "2433:5:5", - "nodeType": "VariableDeclaration", - "scope": 2107, - "src": "2425:13:5", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 2065, - "name": "uint256", - "nodeType": "ElementaryTypeName", - "src": "2425:7:5", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "visibility": "internal" - } - ], - "src": "2368:76:5" - }, - "returnParameters": { - "id": 2068, - "nodeType": "ParameterList", - "parameters": [], - "src": "2454:0:5" - }, - "scope": 2146, - "stateMutability": "nonpayable", - "virtual": false, - "visibility": "internal" - }, - { - "id": 2145, - "nodeType": "FunctionDefinition", - "src": "3207:706:5", - "body": { - "id": 2144, - "nodeType": "Block", - "src": "3277:636:5", - "statements": [ - { - "assignments": [ - 2117 - ], - "declarations": [ - { - "constant": false, - "id": 2117, - "mutability": "mutable", - "name": "returndata", - "nameLocation": "3639:10:5", - "nodeType": "VariableDeclaration", - "scope": 2144, - "src": "3626:23:5", - "stateVariable": false, - "storageLocation": "memory", - "typeDescriptions": { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes" - }, - "typeName": { - "id": 2116, - "name": "bytes", - "nodeType": "ElementaryTypeName", - "src": "3626:5:5", - "typeDescriptions": { - "typeIdentifier": "t_bytes_storage_ptr", - "typeString": "bytes" - } - }, - "visibility": "internal" - } - ], - "id": 2126, - "initialValue": { - "arguments": [ - { - "id": 2123, - "name": "data", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2113, - "src": "3680:4:5", - "typeDescriptions": { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes memory" - } - }, - { - "hexValue": "5361666545524332303a206c6f772d6c6576656c2063616c6c206661696c6564", - "id": 2124, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "string", - "lValueRequested": false, - "nodeType": "Literal", - "src": "3686:34:5", - "typeDescriptions": { - "typeIdentifier": "t_stringliteral_47fb62c2c272651d2f0f342bac006756b8ba07f21cc5cb87e0fbb9d50c0c585b", - "typeString": "literal_string \"SafeERC20: low-level call failed\"" - }, - "value": "SafeERC20: low-level call failed" - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes memory" - }, - { - "typeIdentifier": "t_stringliteral_47fb62c2c272651d2f0f342bac006756b8ba07f21cc5cb87e0fbb9d50c0c585b", - "typeString": "literal_string \"SafeERC20: low-level call failed\"" - } - ], - "expression": { - "arguments": [ - { - "id": 2120, - "name": "token", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2111, - "src": "3660:5:5", - "typeDescriptions": { - "typeIdentifier": "t_contract$_IERC20_$1922", - "typeString": "contract IERC20" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_contract$_IERC20_$1922", - "typeString": "contract IERC20" - } - ], - "id": 2119, - "isConstant": false, - "isLValue": false, - "isPure": true, - "lValueRequested": false, - "nodeType": "ElementaryTypeNameExpression", - "src": "3652:7:5", - "typeDescriptions": { - "typeIdentifier": "t_type$_t_address_$", - "typeString": "type(address)" - }, - "typeName": { - "id": 2118, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "3652:7:5", - "typeDescriptions": {} - } - }, - "id": 2121, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "typeConversion", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "3652:14:5", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "id": 2122, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberName": "functionCall", - "nodeType": "MemberAccess", - "referencedDeclaration": 2351, - "src": "3652:27:5", - "typeDescriptions": { - "typeIdentifier": "t_function_internal_nonpayable$_t_address_$_t_bytes_memory_ptr_$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$bound_to$_t_address_$", - "typeString": "function (address,bytes memory,string memory) returns (bytes memory)" - } - }, - "id": 2125, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "3652:69:5", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes memory" - } - }, - "nodeType": "VariableDeclarationStatement", - "src": "3626:95:5" - }, - { - "condition": { - "commonType": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "id": 2130, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "expression": { - "id": 2127, - "name": "returndata", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2117, - "src": "3735:10:5", - "typeDescriptions": { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes memory" - } - }, - "id": 2128, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberName": "length", - "nodeType": "MemberAccess", - "src": "3735:17:5", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "BinaryOperation", - "operator": ">", - "rightExpression": { - "hexValue": "30", - "id": 2129, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "number", - "lValueRequested": false, - "nodeType": "Literal", - "src": "3755:1:5", - "typeDescriptions": { - "typeIdentifier": "t_rational_0_by_1", - "typeString": "int_const 0" - }, - "value": "0" - }, - "src": "3735:21:5", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "id": 2143, - "nodeType": "IfStatement", - "src": "3731:176:5", - "trueBody": { - "id": 2142, - "nodeType": "Block", - "src": "3758:149:5", - "statements": [ - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "id": 2134, - "name": "returndata", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2117, - "src": "3830:10:5", - "typeDescriptions": { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes memory" - } - }, - { - "components": [ - { - "id": 2136, - "isConstant": false, - "isLValue": false, - "isPure": true, - "lValueRequested": false, - "nodeType": "ElementaryTypeNameExpression", - "src": "3843:4:5", - "typeDescriptions": { - "typeIdentifier": "t_type$_t_bool_$", - "typeString": "type(bool)" - }, - "typeName": { - "id": 2135, - "name": "bool", - "nodeType": "ElementaryTypeName", - "src": "3843:4:5", - "typeDescriptions": {} - } - } - ], - "id": 2137, - "isConstant": false, - "isInlineArray": false, - "isLValue": false, - "isPure": true, - "lValueRequested": false, - "nodeType": "TupleExpression", - "src": "3842:6:5", - "typeDescriptions": { - "typeIdentifier": "t_type$_t_bool_$", - "typeString": "type(bool)" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes memory" - }, - { - "typeIdentifier": "t_type$_t_bool_$", - "typeString": "type(bool)" - } - ], - "expression": { - "id": 2132, - "name": "abi", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": -1, - "src": "3819:3:5", - "typeDescriptions": { - "typeIdentifier": "t_magic_abi", - "typeString": "abi" - } - }, - "id": 2133, - "isConstant": false, - "isLValue": false, - "isPure": true, - "lValueRequested": false, - "memberName": "decode", - "nodeType": "MemberAccess", - "src": "3819:10:5", - "typeDescriptions": { - "typeIdentifier": "t_function_abidecode_pure$__$returns$__$", - "typeString": "function () pure" - } - }, - "id": 2138, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "3819:30:5", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - { - "hexValue": "5361666545524332303a204552433230206f7065726174696f6e20646964206e6f742073756363656564", - "id": 2139, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "string", - "lValueRequested": false, - "nodeType": "Literal", - "src": "3851:44:5", - "typeDescriptions": { - "typeIdentifier": "t_stringliteral_e11ad79d1e4a7f2e5f376964cb99e8e8f7904e3fc16a109f7a7ecb9aa7956dcd", - "typeString": "literal_string \"SafeERC20: ERC20 operation did not succeed\"" - }, - "value": "SafeERC20: ERC20 operation did not succeed" - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - { - "typeIdentifier": "t_stringliteral_e11ad79d1e4a7f2e5f376964cb99e8e8f7904e3fc16a109f7a7ecb9aa7956dcd", - "typeString": "literal_string \"SafeERC20: ERC20 operation did not succeed\"" - } - ], - "id": 2131, - "name": "require", - "nodeType": "Identifier", - "overloadedDeclarations": [ - -18, - -18 - ], - "referencedDeclaration": -18, - "src": "3811:7:5", - "typeDescriptions": { - "typeIdentifier": "t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$", - "typeString": "function (bool,string memory) pure" - } - }, - "id": 2140, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "3811:85:5", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 2141, - "nodeType": "ExpressionStatement", - "src": "3811:85:5" - } - ] - } - } - ] - }, - "documentation": { - "id": 2108, - "nodeType": "StructuredDocumentation", - "src": "2830:372:5", - "text": " @dev Imitates a Solidity high-level call (i.e. a regular function call to a contract), relaxing the requirement\n on the return value: the return value is optional (but if data is returned, it must not be false).\n @param token The token targeted by the call.\n @param data The call data (encoded using abi.encode or one of its variants)." - }, - "implemented": true, - "kind": "function", - "modifiers": [], - "name": "_callOptionalReturn", - "nameLocation": "3216:19:5", - "parameters": { - "id": 2114, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 2111, - "mutability": "mutable", - "name": "token", - "nameLocation": "3243:5:5", - "nodeType": "VariableDeclaration", - "scope": 2145, - "src": "3236:12:5", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_contract$_IERC20_$1922", - "typeString": "contract IERC20" - }, - "typeName": { - "id": 2110, - "nodeType": "UserDefinedTypeName", - "pathNode": { - "id": 2109, - "name": "IERC20", - "nodeType": "IdentifierPath", - "referencedDeclaration": 1922, - "src": "3236:6:5" - }, - "referencedDeclaration": 1922, - "src": "3236:6:5", - "typeDescriptions": { - "typeIdentifier": "t_contract$_IERC20_$1922", - "typeString": "contract IERC20" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 2113, - "mutability": "mutable", - "name": "data", - "nameLocation": "3263:4:5", - "nodeType": "VariableDeclaration", - "scope": 2145, - "src": "3250:17:5", - "stateVariable": false, - "storageLocation": "memory", - "typeDescriptions": { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes" - }, - "typeName": { - "id": 2112, - "name": "bytes", - "nodeType": "ElementaryTypeName", - "src": "3250:5:5", - "typeDescriptions": { - "typeIdentifier": "t_bytes_storage_ptr", - "typeString": "bytes" - } - }, - "visibility": "internal" - } - ], - "src": "3235:33:5" - }, - "returnParameters": { - "id": 2115, - "nodeType": "ParameterList", - "parameters": [], - "src": "3277:0:5" - }, - "scope": 2146, - "stateMutability": "nonpayable", - "virtual": false, - "visibility": "private" - } - ], - "abstract": false, - "baseContracts": [], - "canonicalName": "SafeERC20", - "contractDependencies": [], - "contractKind": "library", - "documentation": { - "id": 1927, - "nodeType": "StructuredDocumentation", - "src": "187:457:5", - "text": " @title SafeERC20\n @dev Wrappers around ERC20 operations that throw on failure (when the token\n contract returns false). Tokens that return no value (and instead revert or\n throw on failure) are also supported, non-reverting calls are assumed to be\n successful.\n To use this library you can add a `using SafeERC20 for IERC20;` statement to your contract,\n which allows you to call the safe operations as `token.safeTransfer(...)`, etc." - }, - "fullyImplemented": true, - "linearizedBaseContracts": [ - 2146 - ], - "name": "SafeERC20", - "nameLocation": "653:9:5", - "scope": 2147, - "usedErrors": [] - } - ], - "license": "MIT" - } -} \ No newline at end of file diff --git a/out/TokenTimelock.sol/TokenTimelock.json b/out/TokenTimelock.sol/TokenTimelock.json deleted file mode 100644 index 0f618eb..0000000 --- a/out/TokenTimelock.sol/TokenTimelock.json +++ /dev/null @@ -1,1522 +0,0 @@ -{ - "abi": [ - { - "inputs": [ - { - "internalType": "contract IERC20", - "name": "token_", - "type": "address" - }, - { - "internalType": "address", - "name": "beneficiary_", - "type": "address" - }, - { - "internalType": "uint256", - "name": "releaseTime_", - "type": "uint256" - } - ], - "stateMutability": "nonpayable", - "type": "constructor" - }, - { - "inputs": [], - "name": "beneficiary", - "outputs": [ - { - "internalType": "address", - "name": "", - "type": "address" - } - ], - "stateMutability": "view", - "type": "function" - }, - { - "inputs": [], - "name": "release", - "outputs": [], - "stateMutability": "nonpayable", - "type": "function" - }, - { - "inputs": [], - "name": "releaseTime", - "outputs": [ - { - "internalType": "uint256", - "name": "", - "type": "uint256" - } - ], - "stateMutability": "view", - "type": "function" - }, - { - "inputs": [], - "name": "token", - "outputs": [ - { - "internalType": "contract IERC20", - "name": "", - "type": "address" - } - ], - "stateMutability": "view", - "type": "function" - } - ], - "bytecode": { - "object": "0x60e060405234801561001057600080fd5b506040516107b63803806107b683398101604081905261002f916100d0565b42811161009d5760405162461bcd60e51b815260206004820152603260248201527f546f6b656e54696d656c6f636b3a2072656c656173652074696d65206973206260448201527165666f72652063757272656e742074696d6560701b606482015260840160405180910390fd5b6001600160a01b03928316608052911660a05260c052610113565b6001600160a01b03811681146100cd57600080fd5b50565b6000806000606084860312156100e557600080fd5b83516100f0816100b8565b6020850151909350610101816100b8565b80925050604084015190509250925092565b60805160a05160c05161065c61015a60003960008181609f015260f00152600081816053015261029801526000818160ca015281816101820152610276015261065c6000f3fe608060405234801561001057600080fd5b506004361061004c5760003560e01c806338af3eed1461005157806386d1a69f14610090578063b91d40011461009a578063fc0c546a146100c8575b600080fd5b7f00000000000000000000000000000000000000000000000000000000000000005b6040516001600160a01b0390911681526020015b60405180910390f35b6100986100ee565b005b6040517f00000000000000000000000000000000000000000000000000000000000000008152602001610087565b7f0000000000000000000000000000000000000000000000000000000000000000610073565b7f000000000000000000000000000000000000000000000000000000000000000042101561017e5760405162461bcd60e51b815260206004820152603260248201527f546f6b656e54696d656c6f636b3a2063757272656e742074696d65206973206260448201527165666f72652072656c656173652074696d6560701b60648201526084015b60405180910390fd5b60007f00000000000000000000000000000000000000000000000000000000000000006040516370a0823160e01b81523060048201526001600160a01b0391909116906370a0823190602401602060405180830381865afa1580156101e7573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061020b919061056c565b9050600081116102695760405162461bcd60e51b815260206004820152602360248201527f546f6b656e54696d656c6f636b3a206e6f20746f6b656e7320746f2072656c6560448201526261736560e81b6064820152608401610175565b6102bd6001600160a01b037f0000000000000000000000000000000000000000000000000000000000000000167f0000000000000000000000000000000000000000000000000000000000000000836102c0565b50565b604080516001600160a01b038416602482015260448082018490528251808303909101815260649091019091526020810180516001600160e01b031663a9059cbb60e01b179052610312908490610317565b505050565b600061036c826040518060400160405280602081526020017f5361666545524332303a206c6f772d6c6576656c2063616c6c206661696c6564815250856001600160a01b03166103e99092919063ffffffff16565b805190915015610312578080602001905181019061038a9190610585565b6103125760405162461bcd60e51b815260206004820152602a60248201527f5361666545524332303a204552433230206f7065726174696f6e20646964206e6044820152691bdd081cdd58d8d9595960b21b6064820152608401610175565b60606103f88484600085610402565b90505b9392505050565b6060824710156104635760405162461bcd60e51b815260206004820152602660248201527f416464726573733a20696e73756666696369656e742062616c616e636520666f6044820152651c8818d85b1b60d21b6064820152608401610175565b6001600160a01b0385163b6104ba5760405162461bcd60e51b815260206004820152601d60248201527f416464726573733a2063616c6c20746f206e6f6e2d636f6e74726163740000006044820152606401610175565b600080866001600160a01b031685876040516104d691906105d7565b60006040518083038185875af1925050503d8060008114610513576040519150601f19603f3d011682016040523d82523d6000602084013e610518565b606091505b5091509150610528828286610533565b979650505050505050565b606083156105425750816103fb565b8251156105525782518084602001fd5b8160405162461bcd60e51b815260040161017591906105f3565b60006020828403121561057e57600080fd5b5051919050565b60006020828403121561059757600080fd5b815180151581146103fb57600080fd5b60005b838110156105c25781810151838201526020016105aa565b838111156105d1576000848401525b50505050565b600082516105e98184602087016105a7565b9190910192915050565b60208152600082518060208401526106128160408501602087016105a7565b601f01601f1916919091016040019291505056fea2646970667358221220a6d50bd92be244b5ebe34cda117e246f11612a7913fff13aa82571a2fc392f6364736f6c634300080d0033", - "sourceMap": "393:1955:6:-:0;;;995:310;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;1129:15;1114:12;:30;1106:93;;;;-1:-1:-1;;;1106:93:6;;842:2:12;1106:93:6;;;824:21:12;881:2;861:18;;;854:30;920:34;900:18;;;893:62;-1:-1:-1;;;971:18:12;;;964:48;1029:19;;1106:93:6;;;;;;;;-1:-1:-1;;;;;1209:15:6;;;;;1234:27;;;;1271;;393:1955;;14:139:12;-1:-1:-1;;;;;97:31:12;;87:42;;77:70;;143:1;140;133:12;77:70;14:139;:::o;158:477::-;261:6;269;277;330:2;318:9;309:7;305:23;301:32;298:52;;;346:1;343;336:12;298:52;378:9;372:16;397:39;430:5;397:39;:::i;:::-;505:2;490:18;;484:25;455:5;;-1:-1:-1;518:41:12;484:25;518:41;:::i;:::-;578:7;568:17;;;625:2;614:9;610:18;604:25;594:35;;158:477;;;;;:::o;640:414::-;393:1955:6;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;", - "linkReferences": {} - }, - "deployedBytecode": { - "object": "0x608060405234801561001057600080fd5b506004361061004c5760003560e01c806338af3eed1461005157806386d1a69f14610090578063b91d40011461009a578063fc0c546a146100c8575b600080fd5b7f00000000000000000000000000000000000000000000000000000000000000005b6040516001600160a01b0390911681526020015b60405180910390f35b6100986100ee565b005b6040517f00000000000000000000000000000000000000000000000000000000000000008152602001610087565b7f0000000000000000000000000000000000000000000000000000000000000000610073565b7f000000000000000000000000000000000000000000000000000000000000000042101561017e5760405162461bcd60e51b815260206004820152603260248201527f546f6b656e54696d656c6f636b3a2063757272656e742074696d65206973206260448201527165666f72652072656c656173652074696d6560701b60648201526084015b60405180910390fd5b60007f00000000000000000000000000000000000000000000000000000000000000006040516370a0823160e01b81523060048201526001600160a01b0391909116906370a0823190602401602060405180830381865afa1580156101e7573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061020b919061056c565b9050600081116102695760405162461bcd60e51b815260206004820152602360248201527f546f6b656e54696d656c6f636b3a206e6f20746f6b656e7320746f2072656c6560448201526261736560e81b6064820152608401610175565b6102bd6001600160a01b037f0000000000000000000000000000000000000000000000000000000000000000167f0000000000000000000000000000000000000000000000000000000000000000836102c0565b50565b604080516001600160a01b038416602482015260448082018490528251808303909101815260649091019091526020810180516001600160e01b031663a9059cbb60e01b179052610312908490610317565b505050565b600061036c826040518060400160405280602081526020017f5361666545524332303a206c6f772d6c6576656c2063616c6c206661696c6564815250856001600160a01b03166103e99092919063ffffffff16565b805190915015610312578080602001905181019061038a9190610585565b6103125760405162461bcd60e51b815260206004820152602a60248201527f5361666545524332303a204552433230206f7065726174696f6e20646964206e6044820152691bdd081cdd58d8d9595960b21b6064820152608401610175565b60606103f88484600085610402565b90505b9392505050565b6060824710156104635760405162461bcd60e51b815260206004820152602660248201527f416464726573733a20696e73756666696369656e742062616c616e636520666f6044820152651c8818d85b1b60d21b6064820152608401610175565b6001600160a01b0385163b6104ba5760405162461bcd60e51b815260206004820152601d60248201527f416464726573733a2063616c6c20746f206e6f6e2d636f6e74726163740000006044820152606401610175565b600080866001600160a01b031685876040516104d691906105d7565b60006040518083038185875af1925050503d8060008114610513576040519150601f19603f3d011682016040523d82523d6000602084013e610518565b606091505b5091509150610528828286610533565b979650505050505050565b606083156105425750816103fb565b8251156105525782518084602001fd5b8160405162461bcd60e51b815260040161017591906105f3565b60006020828403121561057e57600080fd5b5051919050565b60006020828403121561059757600080fd5b815180151581146103fb57600080fd5b60005b838110156105c25781810151838201526020016105aa565b838111156105d1576000848401525b50505050565b600082516105e98184602087016105a7565b9190910192915050565b60208152600082518060208401526106128160408501602087016105a7565b601f01601f1916919091016040019291505056fea2646970667358221220a6d50bd92be244b5ebe34cda117e246f11612a7913fff13aa82571a2fc392f6364736f6c634300080d0033", - "sourceMap": "393:1955:6:-:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;1541:97;1619:12;1541:97;;;-1:-1:-1;;;;;178:32:12;;;160:51;;148:2;133:18;1541:97:6;;;;;;;;2018:328;;;:::i;:::-;;1769:97;;;1847:12;368:25:12;;356:2;341:18;1769:97:6;222:177:12;1369:84:6;1440:6;1369:84;;2018:328;1847:12;2070:15;:32;;2062:95;;;;-1:-1:-1;;;2062:95:6;;829:2:12;2062:95:6;;;811:21:12;868:2;848:18;;;841:30;907:34;887:18;;;880:62;-1:-1:-1;;;958:18:12;;;951:48;1016:19;;2062:95:6;;;;;;;;;2168:14;1440:6;2185:32;;-1:-1:-1;;;2185:32:6;;2211:4;2185:32;;;160:51:12;-1:-1:-1;;;;;2185:17:6;;;;;;;133:18:12;;2185:32:6;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;2168:49;;2244:1;2235:6;:10;2227:58;;;;-1:-1:-1;;;2227:58:6;;1437:2:12;2227:58:6;;;1419:21:12;1476:2;1456:18;;;1449:30;1515:34;1495:18;;;1488:62;-1:-1:-1;;;1566:18:12;;;1559:33;1609:19;;2227:58:6;1235:399:12;2227:58:6;2296:43;-1:-1:-1;;;;;1440:6:6;2296:20;1619:12;2332:6;2296:20;:43::i;:::-;2052:294;2018:328::o;701:205:5:-;840:58;;;-1:-1:-1;;;;;1831:32:12;;840:58:5;;;1813:51:12;1880:18;;;;1873:34;;;840:58:5;;;;;;;;;;1786:18:12;;;;840:58:5;;;;;;;;-1:-1:-1;;;;;840:58:5;-1:-1:-1;;;840:58:5;;;813:86;;833:5;;813:19;:86::i;:::-;701:205;;;:::o;3207:706::-;3626:23;3652:69;3680:4;3652:69;;;;;;;;;;;;;;;;;3660:5;-1:-1:-1;;;;;3652:27:5;;;:69;;;;;:::i;:::-;3735:17;;3626:95;;-1:-1:-1;3735:21:5;3731:176;;3830:10;3819:30;;;;;;;;;;;;:::i;:::-;3811:85;;;;-1:-1:-1;;;3811:85:5;;2402:2:12;3811:85:5;;;2384:21:12;2441:2;2421:18;;;2414:30;2480:34;2460:18;;;2453:62;-1:-1:-1;;;2531:18:12;;;2524:40;2581:19;;3811:85:5;2200:406:12;3861:223:7;3994:12;4025:52;4047:6;4055:4;4061:1;4064:12;4025:21;:52::i;:::-;4018:59;;3861:223;;;;;;:::o;4948:499::-;5113:12;5170:5;5145:21;:30;;5137:81;;;;-1:-1:-1;;;5137:81:7;;2813:2:12;5137:81:7;;;2795:21:12;2852:2;2832:18;;;2825:30;2891:34;2871:18;;;2864:62;-1:-1:-1;;;2942:18:12;;;2935:36;2988:19;;5137:81:7;2611:402:12;5137:81:7;-1:-1:-1;;;;;1465:19:7;;;5228:60;;;;-1:-1:-1;;;5228:60:7;;3220:2:12;5228:60:7;;;3202:21:12;3259:2;3239:18;;;3232:30;3298:31;3278:18;;;3271:59;3347:18;;5228:60:7;3018:353:12;5228:60:7;5300:12;5314:23;5341:6;-1:-1:-1;;;;;5341:11:7;5360:5;5367:4;5341:31;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;5299:73;;;;5389:51;5406:7;5415:10;5427:12;5389:16;:51::i;:::-;5382:58;4948:499;-1:-1:-1;;;;;;;4948:499:7:o;7561:742::-;7707:12;7735:7;7731:566;;;-1:-1:-1;7765:10:7;7758:17;;7731:566;7876:17;;:21;7872:415;;8120:10;8114:17;8180:15;8167:10;8163:2;8159:19;8152:44;7872:415;8259:12;8252:20;;-1:-1:-1;;;8252:20:7;;;;;;;;:::i;1046:184:12:-;1116:6;1169:2;1157:9;1148:7;1144:23;1140:32;1137:52;;;1185:1;1182;1175:12;1137:52;-1:-1:-1;1208:16:12;;1046:184;-1:-1:-1;1046:184:12:o;1918:277::-;1985:6;2038:2;2026:9;2017:7;2013:23;2009:32;2006:52;;;2054:1;2051;2044:12;2006:52;2086:9;2080:16;2139:5;2132:13;2125:21;2118:5;2115:32;2105:60;;2161:1;2158;2151:12;3376:258;3448:1;3458:113;3472:6;3469:1;3466:13;3458:113;;;3548:11;;;3542:18;3529:11;;;3522:39;3494:2;3487:10;3458:113;;;3589:6;3586:1;3583:13;3580:48;;;3624:1;3615:6;3610:3;3606:16;3599:27;3580:48;;3376:258;;;:::o;3639:274::-;3768:3;3806:6;3800:13;3822:53;3868:6;3863:3;3856:4;3848:6;3844:17;3822:53;:::i;:::-;3891:16;;;;;3639:274;-1:-1:-1;;3639:274:12:o;3918:383::-;4067:2;4056:9;4049:21;4030:4;4099:6;4093:13;4142:6;4137:2;4126:9;4122:18;4115:34;4158:66;4217:6;4212:2;4201:9;4197:18;4192:2;4184:6;4180:15;4158:66;:::i;:::-;4285:2;4264:15;-1:-1:-1;;4260:29:12;4245:45;;;;4292:2;4241:54;;3918:383;-1:-1:-1;;3918:383:12:o", - "linkReferences": {}, - "immutableReferences": { - "2157": [ - { - "start": 202, - "length": 32 - }, - { - "start": 386, - "length": 32 - }, - { - "start": 630, - "length": 32 - } - ], - "2159": [ - { - "start": 83, - "length": 32 - }, - { - "start": 664, - "length": 32 - } - ], - "2161": [ - { - "start": 159, - "length": 32 - }, - { - "start": 240, - "length": 32 - } - ] - } - }, - "ast": { - "absolutePath": "/mnt/c/Users/PizzaHi5/Documents/CreatorDAO/CreatorDAO/lib/openzeppelin-contracts/contracts/token/ERC20/utils/TokenTimelock.sol", - "id": 2263, - "exportedSymbols": { - "Address": [ - 2557 - ], - "IERC20": [ - 1922 - ], - "SafeERC20": [ - 2146 - ], - "TokenTimelock": [ - 2262 - ] - }, - "nodeType": "SourceUnit", - "src": "119:2230:6", - "nodes": [ - { - "id": 2148, - "nodeType": "PragmaDirective", - "src": "119:23:6", - "literals": [ - "solidity", - "^", - "0.8", - ".0" - ] - }, - { - "id": 2149, - "nodeType": "ImportDirective", - "src": "144:25:6", - "absolutePath": "/mnt/c/Users/PizzaHi5/Documents/CreatorDAO/CreatorDAO/lib/openzeppelin-contracts/contracts/token/ERC20/utils/SafeERC20.sol", - "file": "./SafeERC20.sol", - "nameLocation": "-1:-1:-1", - "scope": 2263, - "sourceUnit": 2147, - "symbolAliases": [], - "unitAlias": "" - }, - { - "id": 2262, - "nodeType": "ContractDefinition", - "src": "393:1955:6", - "nodes": [ - { - "id": 2154, - "nodeType": "UsingForDirective", - "src": "422:27:6", - "global": false, - "libraryName": { - "id": 2151, - "name": "SafeERC20", - "nodeType": "IdentifierPath", - "referencedDeclaration": 2146, - "src": "428:9:6" - }, - "typeName": { - "id": 2153, - "nodeType": "UserDefinedTypeName", - "pathNode": { - "id": 2152, - "name": "IERC20", - "nodeType": "IdentifierPath", - "referencedDeclaration": 1922, - "src": "442:6:6" - }, - "referencedDeclaration": 1922, - "src": "442:6:6", - "typeDescriptions": { - "typeIdentifier": "t_contract$_IERC20_$1922", - "typeString": "contract IERC20" - } - } - }, - { - "id": 2157, - "nodeType": "VariableDeclaration", - "src": "500:31:6", - "constant": false, - "mutability": "immutable", - "name": "_token", - "nameLocation": "525:6:6", - "scope": 2262, - "stateVariable": true, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_contract$_IERC20_$1922", - "typeString": "contract IERC20" - }, - "typeName": { - "id": 2156, - "nodeType": "UserDefinedTypeName", - "pathNode": { - "id": 2155, - "name": "IERC20", - "nodeType": "IdentifierPath", - "referencedDeclaration": 1922, - "src": "500:6:6" - }, - "referencedDeclaration": 1922, - "src": "500:6:6", - "typeDescriptions": { - "typeIdentifier": "t_contract$_IERC20_$1922", - "typeString": "contract IERC20" - } - }, - "visibility": "private" - }, - { - "id": 2159, - "nodeType": "VariableDeclaration", - "src": "591:38:6", - "constant": false, - "mutability": "immutable", - "name": "_beneficiary", - "nameLocation": "617:12:6", - "scope": 2262, - "stateVariable": true, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "typeName": { - "id": 2158, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "591:7:6", - "stateMutability": "nonpayable", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "visibility": "private" - }, - { - "id": 2161, - "nodeType": "VariableDeclaration", - "src": "683:38:6", - "constant": false, - "mutability": "immutable", - "name": "_releaseTime", - "nameLocation": "709:12:6", - "scope": 2262, - "stateVariable": true, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 2160, - "name": "uint256", - "nodeType": "ElementaryTypeName", - "src": "683:7:6", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "visibility": "private" - }, - { - "id": 2193, - "nodeType": "FunctionDefinition", - "src": "995:310:6", - "body": { - "id": 2192, - "nodeType": "Block", - "src": "1096:209:6", - "statements": [ - { - "expression": { - "arguments": [ - { - "commonType": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "id": 2176, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "id": 2173, - "name": "releaseTime_", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2169, - "src": "1114:12:6", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "BinaryOperation", - "operator": ">", - "rightExpression": { - "expression": { - "id": 2174, - "name": "block", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": -4, - "src": "1129:5:6", - "typeDescriptions": { - "typeIdentifier": "t_magic_block", - "typeString": "block" - } - }, - "id": 2175, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberName": "timestamp", - "nodeType": "MemberAccess", - "src": "1129:15:6", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "src": "1114:30:6", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - { - "hexValue": "546f6b656e54696d656c6f636b3a2072656c656173652074696d65206973206265666f72652063757272656e742074696d65", - "id": 2177, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "string", - "lValueRequested": false, - "nodeType": "Literal", - "src": "1146:52:6", - "typeDescriptions": { - "typeIdentifier": "t_stringliteral_e1658b776de3735ba90dc86438c12854f3617d6d488d64009fdab5928e27c313", - "typeString": "literal_string \"TokenTimelock: release time is before current time\"" - }, - "value": "TokenTimelock: release time is before current time" - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - { - "typeIdentifier": "t_stringliteral_e1658b776de3735ba90dc86438c12854f3617d6d488d64009fdab5928e27c313", - "typeString": "literal_string \"TokenTimelock: release time is before current time\"" - } - ], - "id": 2172, - "name": "require", - "nodeType": "Identifier", - "overloadedDeclarations": [ - -18, - -18 - ], - "referencedDeclaration": -18, - "src": "1106:7:6", - "typeDescriptions": { - "typeIdentifier": "t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$", - "typeString": "function (bool,string memory) pure" - } - }, - "id": 2178, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "1106:93:6", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 2179, - "nodeType": "ExpressionStatement", - "src": "1106:93:6" - }, - { - "expression": { - "id": 2182, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftHandSide": { - "id": 2180, - "name": "_token", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2157, - "src": "1209:6:6", - "typeDescriptions": { - "typeIdentifier": "t_contract$_IERC20_$1922", - "typeString": "contract IERC20" - } - }, - "nodeType": "Assignment", - "operator": "=", - "rightHandSide": { - "id": 2181, - "name": "token_", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2165, - "src": "1218:6:6", - "typeDescriptions": { - "typeIdentifier": "t_contract$_IERC20_$1922", - "typeString": "contract IERC20" - } - }, - "src": "1209:15:6", - "typeDescriptions": { - "typeIdentifier": "t_contract$_IERC20_$1922", - "typeString": "contract IERC20" - } - }, - "id": 2183, - "nodeType": "ExpressionStatement", - "src": "1209:15:6" - }, - { - "expression": { - "id": 2186, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftHandSide": { - "id": 2184, - "name": "_beneficiary", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2159, - "src": "1234:12:6", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "nodeType": "Assignment", - "operator": "=", - "rightHandSide": { - "id": 2185, - "name": "beneficiary_", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2167, - "src": "1249:12:6", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "src": "1234:27:6", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "id": 2187, - "nodeType": "ExpressionStatement", - "src": "1234:27:6" - }, - { - "expression": { - "id": 2190, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftHandSide": { - "id": 2188, - "name": "_releaseTime", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2161, - "src": "1271:12:6", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "Assignment", - "operator": "=", - "rightHandSide": { - "id": 2189, - "name": "releaseTime_", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2169, - "src": "1286:12:6", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "src": "1271:27:6", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "id": 2191, - "nodeType": "ExpressionStatement", - "src": "1271:27:6" - } - ] - }, - "documentation": { - "id": 2162, - "nodeType": "StructuredDocumentation", - "src": "728:262:6", - "text": " @dev Deploys a timelock instance that is able to hold the token specified, and will only release it to\n `beneficiary_` when {release} is invoked after `releaseTime_`. The release time is specified as a Unix timestamp\n (in seconds)." - }, - "implemented": true, - "kind": "constructor", - "modifiers": [], - "name": "", - "nameLocation": "-1:-1:-1", - "parameters": { - "id": 2170, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 2165, - "mutability": "mutable", - "name": "token_", - "nameLocation": "1023:6:6", - "nodeType": "VariableDeclaration", - "scope": 2193, - "src": "1016:13:6", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_contract$_IERC20_$1922", - "typeString": "contract IERC20" - }, - "typeName": { - "id": 2164, - "nodeType": "UserDefinedTypeName", - "pathNode": { - "id": 2163, - "name": "IERC20", - "nodeType": "IdentifierPath", - "referencedDeclaration": 1922, - "src": "1016:6:6" - }, - "referencedDeclaration": 1922, - "src": "1016:6:6", - "typeDescriptions": { - "typeIdentifier": "t_contract$_IERC20_$1922", - "typeString": "contract IERC20" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 2167, - "mutability": "mutable", - "name": "beneficiary_", - "nameLocation": "1047:12:6", - "nodeType": "VariableDeclaration", - "scope": 2193, - "src": "1039:20:6", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "typeName": { - "id": 2166, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "1039:7:6", - "stateMutability": "nonpayable", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 2169, - "mutability": "mutable", - "name": "releaseTime_", - "nameLocation": "1077:12:6", - "nodeType": "VariableDeclaration", - "scope": 2193, - "src": "1069:20:6", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 2168, - "name": "uint256", - "nodeType": "ElementaryTypeName", - "src": "1069:7:6", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "visibility": "internal" - } - ], - "src": "1006:89:6" - }, - "returnParameters": { - "id": 2171, - "nodeType": "ParameterList", - "parameters": [], - "src": "1096:0:6" - }, - "scope": 2262, - "stateMutability": "nonpayable", - "virtual": false, - "visibility": "public" - }, - { - "id": 2203, - "nodeType": "FunctionDefinition", - "src": "1369:84:6", - "body": { - "id": 2202, - "nodeType": "Block", - "src": "1423:30:6", - "statements": [ - { - "expression": { - "id": 2200, - "name": "_token", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2157, - "src": "1440:6:6", - "typeDescriptions": { - "typeIdentifier": "t_contract$_IERC20_$1922", - "typeString": "contract IERC20" - } - }, - "functionReturnParameters": 2199, - "id": 2201, - "nodeType": "Return", - "src": "1433:13:6" - } - ] - }, - "documentation": { - "id": 2194, - "nodeType": "StructuredDocumentation", - "src": "1311:53:6", - "text": " @dev Returns the token being held." - }, - "functionSelector": "fc0c546a", - "implemented": true, - "kind": "function", - "modifiers": [], - "name": "token", - "nameLocation": "1378:5:6", - "parameters": { - "id": 2195, - "nodeType": "ParameterList", - "parameters": [], - "src": "1383:2:6" - }, - "returnParameters": { - "id": 2199, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 2198, - "mutability": "mutable", - "name": "", - "nameLocation": "-1:-1:-1", - "nodeType": "VariableDeclaration", - "scope": 2203, - "src": "1415:6:6", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_contract$_IERC20_$1922", - "typeString": "contract IERC20" - }, - "typeName": { - "id": 2197, - "nodeType": "UserDefinedTypeName", - "pathNode": { - "id": 2196, - "name": "IERC20", - "nodeType": "IdentifierPath", - "referencedDeclaration": 1922, - "src": "1415:6:6" - }, - "referencedDeclaration": 1922, - "src": "1415:6:6", - "typeDescriptions": { - "typeIdentifier": "t_contract$_IERC20_$1922", - "typeString": "contract IERC20" - } - }, - "visibility": "internal" - } - ], - "src": "1414:8:6" - }, - "scope": 2262, - "stateMutability": "view", - "virtual": true, - "visibility": "public" - }, - { - "id": 2212, - "nodeType": "FunctionDefinition", - "src": "1541:97:6", - "body": { - "id": 2211, - "nodeType": "Block", - "src": "1602:36:6", - "statements": [ - { - "expression": { - "id": 2209, - "name": "_beneficiary", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2159, - "src": "1619:12:6", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "functionReturnParameters": 2208, - "id": 2210, - "nodeType": "Return", - "src": "1612:19:6" - } - ] - }, - "documentation": { - "id": 2204, - "nodeType": "StructuredDocumentation", - "src": "1459:77:6", - "text": " @dev Returns the beneficiary that will receive the tokens." - }, - "functionSelector": "38af3eed", - "implemented": true, - "kind": "function", - "modifiers": [], - "name": "beneficiary", - "nameLocation": "1550:11:6", - "parameters": { - "id": 2205, - "nodeType": "ParameterList", - "parameters": [], - "src": "1561:2:6" - }, - "returnParameters": { - "id": 2208, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 2207, - "mutability": "mutable", - "name": "", - "nameLocation": "-1:-1:-1", - "nodeType": "VariableDeclaration", - "scope": 2212, - "src": "1593:7:6", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "typeName": { - "id": 2206, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "1593:7:6", - "stateMutability": "nonpayable", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "visibility": "internal" - } - ], - "src": "1592:9:6" - }, - "scope": 2262, - "stateMutability": "view", - "virtual": true, - "visibility": "public" - }, - { - "id": 2221, - "nodeType": "FunctionDefinition", - "src": "1769:97:6", - "body": { - "id": 2220, - "nodeType": "Block", - "src": "1830:36:6", - "statements": [ - { - "expression": { - "id": 2218, - "name": "_releaseTime", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2161, - "src": "1847:12:6", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "functionReturnParameters": 2217, - "id": 2219, - "nodeType": "Return", - "src": "1840:19:6" - } - ] - }, - "documentation": { - "id": 2213, - "nodeType": "StructuredDocumentation", - "src": "1644:120:6", - "text": " @dev Returns the time when the tokens are released in seconds since Unix epoch (i.e. Unix timestamp)." - }, - "functionSelector": "b91d4001", - "implemented": true, - "kind": "function", - "modifiers": [], - "name": "releaseTime", - "nameLocation": "1778:11:6", - "parameters": { - "id": 2214, - "nodeType": "ParameterList", - "parameters": [], - "src": "1789:2:6" - }, - "returnParameters": { - "id": 2217, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 2216, - "mutability": "mutable", - "name": "", - "nameLocation": "-1:-1:-1", - "nodeType": "VariableDeclaration", - "scope": 2221, - "src": "1821:7:6", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 2215, - "name": "uint256", - "nodeType": "ElementaryTypeName", - "src": "1821:7:6", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "visibility": "internal" - } - ], - "src": "1820:9:6" - }, - "scope": 2262, - "stateMutability": "view", - "virtual": true, - "visibility": "public" - }, - { - "id": 2261, - "nodeType": "FunctionDefinition", - "src": "2018:328:6", - "body": { - "id": 2260, - "nodeType": "Block", - "src": "2052:294:6", - "statements": [ - { - "expression": { - "arguments": [ - { - "commonType": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "id": 2230, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "expression": { - "id": 2226, - "name": "block", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": -4, - "src": "2070:5:6", - "typeDescriptions": { - "typeIdentifier": "t_magic_block", - "typeString": "block" - } - }, - "id": 2227, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberName": "timestamp", - "nodeType": "MemberAccess", - "src": "2070:15:6", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "BinaryOperation", - "operator": ">=", - "rightExpression": { - "arguments": [], - "expression": { - "argumentTypes": [], - "id": 2228, - "name": "releaseTime", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2221, - "src": "2089:11:6", - "typeDescriptions": { - "typeIdentifier": "t_function_internal_view$__$returns$_t_uint256_$", - "typeString": "function () view returns (uint256)" - } - }, - "id": 2229, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "2089:13:6", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "src": "2070:32:6", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - { - "hexValue": "546f6b656e54696d656c6f636b3a2063757272656e742074696d65206973206265666f72652072656c656173652074696d65", - "id": 2231, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "string", - "lValueRequested": false, - "nodeType": "Literal", - "src": "2104:52:6", - "typeDescriptions": { - "typeIdentifier": "t_stringliteral_0345c6084b4d4be2f1249aa1f58ddc5a11b524aacb744b63dfad68c56d61fad0", - "typeString": "literal_string \"TokenTimelock: current time is before release time\"" - }, - "value": "TokenTimelock: current time is before release time" - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - { - "typeIdentifier": "t_stringliteral_0345c6084b4d4be2f1249aa1f58ddc5a11b524aacb744b63dfad68c56d61fad0", - "typeString": "literal_string \"TokenTimelock: current time is before release time\"" - } - ], - "id": 2225, - "name": "require", - "nodeType": "Identifier", - "overloadedDeclarations": [ - -18, - -18 - ], - "referencedDeclaration": -18, - "src": "2062:7:6", - "typeDescriptions": { - "typeIdentifier": "t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$", - "typeString": "function (bool,string memory) pure" - } - }, - "id": 2232, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "2062:95:6", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 2233, - "nodeType": "ExpressionStatement", - "src": "2062:95:6" - }, - { - "assignments": [ - 2235 - ], - "declarations": [ - { - "constant": false, - "id": 2235, - "mutability": "mutable", - "name": "amount", - "nameLocation": "2176:6:6", - "nodeType": "VariableDeclaration", - "scope": 2260, - "src": "2168:14:6", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 2234, - "name": "uint256", - "nodeType": "ElementaryTypeName", - "src": "2168:7:6", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "visibility": "internal" - } - ], - "id": 2244, - "initialValue": { - "arguments": [ - { - "arguments": [ - { - "id": 2241, - "name": "this", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": -28, - "src": "2211:4:6", - "typeDescriptions": { - "typeIdentifier": "t_contract$_TokenTimelock_$2262", - "typeString": "contract TokenTimelock" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_contract$_TokenTimelock_$2262", - "typeString": "contract TokenTimelock" - } - ], - "id": 2240, - "isConstant": false, - "isLValue": false, - "isPure": true, - "lValueRequested": false, - "nodeType": "ElementaryTypeNameExpression", - "src": "2203:7:6", - "typeDescriptions": { - "typeIdentifier": "t_type$_t_address_$", - "typeString": "type(address)" - }, - "typeName": { - "id": 2239, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "2203:7:6", - "typeDescriptions": {} - } - }, - "id": 2242, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "typeConversion", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "2203:13:6", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_address", - "typeString": "address" - } - ], - "expression": { - "arguments": [], - "expression": { - "argumentTypes": [], - "id": 2236, - "name": "token", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2203, - "src": "2185:5:6", - "typeDescriptions": { - "typeIdentifier": "t_function_internal_view$__$returns$_t_contract$_IERC20_$1922_$", - "typeString": "function () view returns (contract IERC20)" - } - }, - "id": 2237, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "2185:7:6", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_contract$_IERC20_$1922", - "typeString": "contract IERC20" - } - }, - "id": 2238, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberName": "balanceOf", - "nodeType": "MemberAccess", - "referencedDeclaration": 1879, - "src": "2185:17:6", - "typeDescriptions": { - "typeIdentifier": "t_function_external_view$_t_address_$returns$_t_uint256_$", - "typeString": "function (address) view external returns (uint256)" - } - }, - "id": 2243, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "2185:32:6", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "VariableDeclarationStatement", - "src": "2168:49:6" - }, - { - "expression": { - "arguments": [ - { - "commonType": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "id": 2248, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "id": 2246, - "name": "amount", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2235, - "src": "2235:6:6", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "BinaryOperation", - "operator": ">", - "rightExpression": { - "hexValue": "30", - "id": 2247, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "number", - "lValueRequested": false, - "nodeType": "Literal", - "src": "2244:1:6", - "typeDescriptions": { - "typeIdentifier": "t_rational_0_by_1", - "typeString": "int_const 0" - }, - "value": "0" - }, - "src": "2235:10:6", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - { - "hexValue": "546f6b656e54696d656c6f636b3a206e6f20746f6b656e7320746f2072656c65617365", - "id": 2249, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "string", - "lValueRequested": false, - "nodeType": "Literal", - "src": "2247:37:6", - "typeDescriptions": { - "typeIdentifier": "t_stringliteral_fd167cd15f7f49233a4aac5b2fadd1b9f782ba42f4eadaf31348954b9436eae8", - "typeString": "literal_string \"TokenTimelock: no tokens to release\"" - }, - "value": "TokenTimelock: no tokens to release" - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - { - "typeIdentifier": "t_stringliteral_fd167cd15f7f49233a4aac5b2fadd1b9f782ba42f4eadaf31348954b9436eae8", - "typeString": "literal_string \"TokenTimelock: no tokens to release\"" - } - ], - "id": 2245, - "name": "require", - "nodeType": "Identifier", - "overloadedDeclarations": [ - -18, - -18 - ], - "referencedDeclaration": -18, - "src": "2227:7:6", - "typeDescriptions": { - "typeIdentifier": "t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$", - "typeString": "function (bool,string memory) pure" - } - }, - "id": 2250, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "2227:58:6", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 2251, - "nodeType": "ExpressionStatement", - "src": "2227:58:6" - }, - { - "expression": { - "arguments": [ - { - "arguments": [], - "expression": { - "argumentTypes": [], - "id": 2255, - "name": "beneficiary", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2212, - "src": "2317:11:6", - "typeDescriptions": { - "typeIdentifier": "t_function_internal_view$__$returns$_t_address_$", - "typeString": "function () view returns (address)" - } - }, - "id": 2256, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "2317:13:6", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - { - "id": 2257, - "name": "amount", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2235, - "src": "2332:6:6", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_address", - "typeString": "address" - }, - { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - ], - "expression": { - "arguments": [], - "expression": { - "argumentTypes": [], - "id": 2252, - "name": "token", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2203, - "src": "2296:5:6", - "typeDescriptions": { - "typeIdentifier": "t_function_internal_view$__$returns$_t_contract$_IERC20_$1922_$", - "typeString": "function () view returns (contract IERC20)" - } - }, - "id": 2253, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "2296:7:6", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_contract$_IERC20_$1922", - "typeString": "contract IERC20" - } - }, - "id": 2254, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberName": "safeTransfer", - "nodeType": "MemberAccess", - "referencedDeclaration": 1953, - "src": "2296:20:6", - "typeDescriptions": { - "typeIdentifier": "t_function_internal_nonpayable$_t_contract$_IERC20_$1922_$_t_address_$_t_uint256_$returns$__$bound_to$_t_contract$_IERC20_$1922_$", - "typeString": "function (contract IERC20,address,uint256)" - } - }, - "id": 2258, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "2296:43:6", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 2259, - "nodeType": "ExpressionStatement", - "src": "2296:43:6" - } - ] - }, - "documentation": { - "id": 2222, - "nodeType": "StructuredDocumentation", - "src": "1872:141:6", - "text": " @dev Transfers tokens held by the timelock to the beneficiary. Will only succeed if invoked after the release\n time." - }, - "functionSelector": "86d1a69f", - "implemented": true, - "kind": "function", - "modifiers": [], - "name": "release", - "nameLocation": "2027:7:6", - "parameters": { - "id": 2223, - "nodeType": "ParameterList", - "parameters": [], - "src": "2034:2:6" - }, - "returnParameters": { - "id": 2224, - "nodeType": "ParameterList", - "parameters": [], - "src": "2052:0:6" - }, - "scope": 2262, - "stateMutability": "nonpayable", - "virtual": true, - "visibility": "public" - } - ], - "abstract": false, - "baseContracts": [], - "canonicalName": "TokenTimelock", - "contractDependencies": [], - "contractKind": "contract", - "documentation": { - "id": 2150, - "nodeType": "StructuredDocumentation", - "src": "171:221:6", - "text": " @dev A token holder contract that will allow a beneficiary to extract the\n tokens after a given release time.\n Useful for simple vesting schedules like \"advisors get all of their tokens\n after 1 year\"." - }, - "fullyImplemented": true, - "linearizedBaseContracts": [ - 2262 - ], - "name": "TokenTimelock", - "nameLocation": "402:13:6", - "scope": 2263, - "usedErrors": [] - } - ], - "license": "MIT" - } -} \ No newline at end of file diff --git a/out/figuredoutmapping.sol/AssetCreationMapping.json b/out/figuredoutmapping.sol/AssetCreationMapping.json deleted file mode 100644 index 63bd16d..0000000 --- a/out/figuredoutmapping.sol/AssetCreationMapping.json +++ /dev/null @@ -1,3816 +0,0 @@ -{ - "abi": [ - { - "inputs": [ - { - "internalType": "uint256", - "name": "amount", - "type": "uint256" - }, - { - "internalType": "uint256", - "name": "_raisedAmount", - "type": "uint256" - }, - { - "internalType": "address", - "name": "_user", - "type": "address" - } - ], - "stateMutability": "nonpayable", - "type": "constructor" - }, - { - "inputs": [], - "name": "_token", - "outputs": [ - { - "internalType": "contract IERC20", - "name": "", - "type": "address" - } - ], - "stateMutability": "view", - "type": "function" - }, - { - "inputs": [], - "name": "adding_value", - "outputs": [], - "stateMutability": "nonpayable", - "type": "function" - }, - { - "inputs": [], - "name": "callEndContract", - "outputs": [], - "stateMutability": "nonpayable", - "type": "function" - }, - { - "inputs": [ - { - "internalType": "address", - "name": "_userAddr", - "type": "address" - } - ], - "name": "checkIfUser", - "outputs": [ - { - "internalType": "bool", - "name": "", - "type": "bool" - } - ], - "stateMutability": "view", - "type": "function" - }, - { - "inputs": [], - "name": "checkTimeRemaining", - "outputs": [ - { - "internalType": "uint256", - "name": "", - "type": "uint256" - } - ], - "stateMutability": "view", - "type": "function" - }, - { - "inputs": [ - { - "internalType": "bytes", - "name": "", - "type": "bytes" - } - ], - "name": "checkUpkeep", - "outputs": [ - { - "internalType": "bool", - "name": "upkeepNeeded", - "type": "bool" - }, - { - "internalType": "bytes", - "name": "performData", - "type": "bytes" - } - ], - "stateMutability": "view", - "type": "function" - }, - { - "inputs": [ - { - "internalType": "address", - "name": "", - "type": "address" - } - ], - "name": "contractStats", - "outputs": [ - { - "internalType": "address", - "name": "assetCreator", - "type": "address" - }, - { - "internalType": "address", - "name": "assetUser", - "type": "address" - } - ], - "stateMutability": "view", - "type": "function" - }, - { - "inputs": [], - "name": "duration", - "outputs": [ - { - "internalType": "uint256", - "name": "", - "type": "uint256" - } - ], - "stateMutability": "view", - "type": "function" - }, - { - "inputs": [], - "name": "endBlock", - "outputs": [ - { - "internalType": "uint256", - "name": "", - "type": "uint256" - } - ], - "stateMutability": "view", - "type": "function" - }, - { - "inputs": [ - { - "internalType": "bytes", - "name": "", - "type": "bytes" - } - ], - "name": "performUpkeep", - "outputs": [], - "stateMutability": "nonpayable", - "type": "function" - }, - { - "inputs": [], - "name": "startBlock", - "outputs": [ - { - "internalType": "uint256", - "name": "", - "type": "uint256" - } - ], - "stateMutability": "view", - "type": "function" - }, - { - "inputs": [ - { - "internalType": "address", - "name": "_creatorAddr", - "type": "address" - }, - { - "internalType": "uint256", - "name": "_duration", - "type": "uint256" - } - ], - "name": "startContract", - "outputs": [], - "stateMutability": "nonpayable", - "type": "function" - } - ], - "bytecode": { - "object": "0x60a060405234801561001057600080fd5b50604051610ad8380380610ad883398101604081905261002f91610094565b73096f6a2b185d63d942750a2d961f7762401cba1760005260016020527fa312cf60d618bba269edc127421a8ea17f49a36216970ae288928192c4de952080546001600160a01b0319166001600160a01b0392909216919091179055608052506100da565b6000806000606084860312156100a957600080fd5b83516020850151604086015191945092506001600160a01b03811681146100cf57600080fd5b809150509250925092565b6080516109dc6100fc600039600081816103cc01526106dd01526109dc6000f3fe608060405234801561001057600080fd5b50600436106100b45760003560e01c80636e04ff0d116100715780636e04ff0d14610104578063c1d4f9571461012e578063c6c6d29214610182578063ecd0c0c314610195578063f65861c3146101c0578063facda813146101e357600080fd5b80630619a438146100b9578063083c6323146100bb5780630fb5a6b4146100d757806340c6ed97146100e05780634585e33b146100e857806348cd4cb1146100fb575b600080fd5b005b6100c460045481565b6040519081526020015b60405180910390f35b6100c460025481565b6100c46101ed565b6100b96100f63660046107cb565b610202565b6100c460035481565b6101206101123660046107cb565b505060045442101590606090565b6040516100ce92919061083d565b61016261013c3660046108b8565b600160208190526000918252604090912080549101546001600160a01b03918216911682565b604080516001600160a01b039384168152929091166020830152016100ce565b6100b96101903660046108da565b610217565b6005546101a8906001600160a01b031681565b6040516001600160a01b0390911681526020016100ce565b6101d36101ce3660046108b8565b61028b565b60405190151581526020016100ce565b6100b9610317565b565b6000426004546101fd919061091a565b905090565b600454421061021357610213610370565b5050565b73096f6a2b185d63d942750a2d961f7762401cba1760005260016020527fa312cf60d618bba269edc127421a8ea17f49a36216970ae288928192c4de951f80546001600160a01b0319166001600160a01b0384161790554260038190556002829055610284908290610931565b6004555050565b336000908152600160208190526040822001546001600160a01b0383811691161461030f5760405162461bcd60e51b815260206004820152602960248201527f596f7520617265206e6f7420726573706f6e7369626c6520666f7220746869736044820152680818dbdb9d1c9858dd60ba1b60648201526084015b60405180910390fd5b506001919050565b6103203361028b565b61036c5760405162461bcd60e51b815260206004820152601c60248201527f596f752063616e6e6f7420656e64207468697320636f6e7472616374000000006044820152606401610306565b6101eb5b6103793361028b565b1561076c576002805461038c9190610949565b600454610399919061091a565b4210610689576005546001600160a01b031663a9059cbb73ecf6d20544d0e84ca3ab683f0394158e6c75eaae6103f060027f0000000000000000000000000000000000000000000000000000000000000000610949565b6040516001600160e01b031960e085901b1681526001600160a01b03909216600483015260248201526044016020604051808303816000875af115801561043b573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061045f919061096b565b5060055433600090815260016020526040908190205490516370a0823160e01b815273096f6a2b185d63d942750a2d961f7762401cba1760048201526001600160a01b039283169263a9059cbb92169060029084906370a0823190602401602060405180830381865afa1580156104da573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906104fe919061098d565b6105089190610949565b6040516001600160e01b031960e085901b1681526001600160a01b03909216600483015260248201526044016020604051808303816000875af1158015610553573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610577919061096b565b5060055433600090815260016020819052604091829020015490516370a0823160e01b815273096f6a2b185d63d942750a2d961f7762401cba1760048201526001600160a01b039283169263a9059cbb92169083906370a08231906024015b602060405180830381865afa1580156105f3573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610617919061098d565b6040516001600160e01b031960e085901b1681526001600160a01b03909216600483015260248201526044016020604051808303816000875af1158015610662573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610686919061096b565b50565b6005546040516370a0823160e01b815273096f6a2b185d63d942750a2d961f7762401cba1760048201526001600160a01b039091169063a9059cbb9073ecf6d20544d0e84ca3ab683f0394158e6c75eaae907f000000000000000000000000000000000000000000000000000000000000000090600a90829086906370a0823190602401602060405180830381865afa15801561072a573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061074e919061098d565b610758919061091a565b6107629190610949565b6105089190610931565b60055433600090815260016020526040908190205490516370a0823160e01b815273096f6a2b185d63d942750a2d961f7762401cba1760048201526001600160a01b039283169263a9059cbb92169083906370a08231906024016105d6565b600080602083850312156107de57600080fd5b823567ffffffffffffffff808211156107f657600080fd5b818501915085601f83011261080a57600080fd5b81358181111561081957600080fd5b86602082850101111561082b57600080fd5b60209290920196919550909350505050565b821515815260006020604081840152835180604085015260005b8181101561087357858101830151858201606001528201610857565b81811115610885576000606083870101525b50601f01601f191692909201606001949350505050565b80356001600160a01b03811681146108b357600080fd5b919050565b6000602082840312156108ca57600080fd5b6108d38261089c565b9392505050565b600080604083850312156108ed57600080fd5b6108f68361089c565b946020939093013593505050565b634e487b7160e01b600052601160045260246000fd5b60008282101561092c5761092c610904565b500390565b6000821982111561094457610944610904565b500190565b60008261096657634e487b7160e01b600052601260045260246000fd5b500490565b60006020828403121561097d57600080fd5b815180151581146108d357600080fd5b60006020828403121561099f57600080fd5b505191905056fea2646970667358221220279080a73f02b01988fbc0c8841a2a6dda48221b0b10a410bec1a0a756bfa82264736f6c634300080d0033", - "sourceMap": "317:3651:10:-:0;;;1216:408;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;877:42;1431:21;;:13;:21;;:31;:39;;-1:-1:-1;;;;;;1431:39:10;-1:-1:-1;;;;;1431:39:10;;;;;;;;;;1480:30;;-1:-1:-1;317:3651:10;;14:412:12;102:6;110;118;171:2;159:9;150:7;146:23;142:32;139:52;;;187:1;184;177:12;139:52;210:16;;266:2;251:18;;245:25;313:2;298:18;;292:25;210:16;;-1:-1:-1;245:25:12;-1:-1:-1;;;;;;346:31:12;;336:42;;326:70;;392:1;389;382:12;326:70;415:5;405:15;;;14:412;;;;;:::o;:::-;317:3651:10;;;;;;;;;;;;;;;;;", - "linkReferences": {} - }, - "deployedBytecode": { - "object": "0x608060405234801561001057600080fd5b50600436106100b45760003560e01c80636e04ff0d116100715780636e04ff0d14610104578063c1d4f9571461012e578063c6c6d29214610182578063ecd0c0c314610195578063f65861c3146101c0578063facda813146101e357600080fd5b80630619a438146100b9578063083c6323146100bb5780630fb5a6b4146100d757806340c6ed97146100e05780634585e33b146100e857806348cd4cb1146100fb575b600080fd5b005b6100c460045481565b6040519081526020015b60405180910390f35b6100c460025481565b6100c46101ed565b6100b96100f63660046107cb565b610202565b6100c460035481565b6101206101123660046107cb565b505060045442101590606090565b6040516100ce92919061083d565b61016261013c3660046108b8565b600160208190526000918252604090912080549101546001600160a01b03918216911682565b604080516001600160a01b039384168152929091166020830152016100ce565b6100b96101903660046108da565b610217565b6005546101a8906001600160a01b031681565b6040516001600160a01b0390911681526020016100ce565b6101d36101ce3660046108b8565b61028b565b60405190151581526020016100ce565b6100b9610317565b565b6000426004546101fd919061091a565b905090565b600454421061021357610213610370565b5050565b73096f6a2b185d63d942750a2d961f7762401cba1760005260016020527fa312cf60d618bba269edc127421a8ea17f49a36216970ae288928192c4de951f80546001600160a01b0319166001600160a01b0384161790554260038190556002829055610284908290610931565b6004555050565b336000908152600160208190526040822001546001600160a01b0383811691161461030f5760405162461bcd60e51b815260206004820152602960248201527f596f7520617265206e6f7420726573706f6e7369626c6520666f7220746869736044820152680818dbdb9d1c9858dd60ba1b60648201526084015b60405180910390fd5b506001919050565b6103203361028b565b61036c5760405162461bcd60e51b815260206004820152601c60248201527f596f752063616e6e6f7420656e64207468697320636f6e7472616374000000006044820152606401610306565b6101eb5b6103793361028b565b1561076c576002805461038c9190610949565b600454610399919061091a565b4210610689576005546001600160a01b031663a9059cbb73ecf6d20544d0e84ca3ab683f0394158e6c75eaae6103f060027f0000000000000000000000000000000000000000000000000000000000000000610949565b6040516001600160e01b031960e085901b1681526001600160a01b03909216600483015260248201526044016020604051808303816000875af115801561043b573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061045f919061096b565b5060055433600090815260016020526040908190205490516370a0823160e01b815273096f6a2b185d63d942750a2d961f7762401cba1760048201526001600160a01b039283169263a9059cbb92169060029084906370a0823190602401602060405180830381865afa1580156104da573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906104fe919061098d565b6105089190610949565b6040516001600160e01b031960e085901b1681526001600160a01b03909216600483015260248201526044016020604051808303816000875af1158015610553573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610577919061096b565b5060055433600090815260016020819052604091829020015490516370a0823160e01b815273096f6a2b185d63d942750a2d961f7762401cba1760048201526001600160a01b039283169263a9059cbb92169083906370a08231906024015b602060405180830381865afa1580156105f3573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610617919061098d565b6040516001600160e01b031960e085901b1681526001600160a01b03909216600483015260248201526044016020604051808303816000875af1158015610662573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610686919061096b565b50565b6005546040516370a0823160e01b815273096f6a2b185d63d942750a2d961f7762401cba1760048201526001600160a01b039091169063a9059cbb9073ecf6d20544d0e84ca3ab683f0394158e6c75eaae907f000000000000000000000000000000000000000000000000000000000000000090600a90829086906370a0823190602401602060405180830381865afa15801561072a573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061074e919061098d565b610758919061091a565b6107629190610949565b6105089190610931565b60055433600090815260016020526040908190205490516370a0823160e01b815273096f6a2b185d63d942750a2d961f7762401cba1760048201526001600160a01b039283169263a9059cbb92169083906370a08231906024016105d6565b600080602083850312156107de57600080fd5b823567ffffffffffffffff808211156107f657600080fd5b818501915085601f83011261080a57600080fd5b81358181111561081957600080fd5b86602082850101111561082b57600080fd5b60209290920196919550909350505050565b821515815260006020604081840152835180604085015260005b8181101561087357858101830151858201606001528201610857565b81811115610885576000606083870101525b50601f01601f191692909201606001949350505050565b80356001600160a01b03811681146108b357600080fd5b919050565b6000602082840312156108ca57600080fd5b6108d38261089c565b9392505050565b600080604083850312156108ed57600080fd5b6108f68361089c565b946020939093013593505050565b634e487b7160e01b600052601160045260246000fd5b60008282101561092c5761092c610904565b500390565b6000821982111561094457610944610904565b500190565b60008261096657634e487b7160e01b600052601260045260246000fd5b500490565b60006020828403121561097d57600080fd5b815180151581146108d357600080fd5b60006020828403121561099f57600080fd5b505191905056fea2646970667358221220279080a73f02b01988fbc0c8841a2a6dda48221b0b10a410bec1a0a756bfa82264736f6c634300080d0033", - "sourceMap": "317:3651:10:-:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;3919:47;;712:23;;;;;;;;;160:25:12;;;148:2;133:18;712:23:10;;;;;;;;652;;;;;;2330:111;;;:::i;2869:142::-;;;;;;:::i;:::-;;:::i;681:25::-;;;;;;2659:176;;;;;;:::i;:::-;-1:-1:-1;;2819:8:10;;2800:15;:27;;;2748:24;;2659:176;;;;;;;;;:::i;573:47::-;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;;;573:47:10;;;;;;;;;;;-1:-1:-1;;;;;2072:15:12;;;2054:34;;2124:15;;;;2119:2;2104:18;;2097:43;1989:18;573:47:10;1842:304:12;1652:457:10;;;;;;:::i;:::-;;:::i;1140:20::-;;;;;-1:-1:-1;;;;;1140:20:10;;;;;;-1:-1:-1;;;;;2589:32:12;;;2571:51;;2559:2;2544:18;1140:20:10;2410:218:12;2115:209:10;;;;;;:::i;:::-;;:::i;:::-;;;2798:14:12;;2791:22;2773:41;;2761:2;2746:18;2115:209:10;2633:187:12;2472:139:10;;;:::i;3919:47::-;:::o;2330:111::-;2382:7;2419:15;2408:8;;:26;;;;:::i;:::-;2401:33;;2330:111;:::o;2869:142::-;2958:8;;2939:15;:27;2936:69;;2981:13;:11;:13::i;:::-;2869:142;;:::o;1652:457::-;877:42;1838:21;;:13;:21;;;:49;;-1:-1:-1;;;;;;1838:49:10;-1:-1:-1;;;;;1838:49:10;;;;;1910:15;1897:10;:28;;;1935:8;:20;;;1976:22;;1935:20;;1976:22;:::i;:::-;1965:8;:33;-1:-1:-1;;1652:457:10:o;2115:209::-;2229:10;2177:4;2215:25;;;:13;:25;;;;;;;:35;;-1:-1:-1;;;;;2202:48:10;;;2215:35;;2202:48;2193:103;;;;-1:-1:-1;;;2193:103:10;;3422:2:12;2193:103:10;;;3404:21:12;3461:2;3441:18;;;3434:30;3500:34;3480:18;;;3473:62;-1:-1:-1;;;3551:18:12;;;3544:39;3600:19;;2193:103:10;;;;;;;;;-1:-1:-1;2313:4:10;;2115:209;-1:-1:-1;2115:209:10:o;2472:139::-;2525:23;2537:10;2525:11;:23::i;:::-;2516:65;;;;-1:-1:-1;;;2516:65:10;;3832:2:12;2516:65:10;;;3814:21:12;3871:2;3851:18;;;3844:30;3910;3890:18;;;3883:58;3958:18;;2516:65:10;3630:352:12;2516:65:10;2591:13;3017:896;3071:23;3083:10;3071:11;:23::i;:::-;3068:839;;;3199:1;3190:8;;:10;;;;:::i;:::-;3178:8;;:23;;;;:::i;:::-;3159:15;:42;3155:567;;3222:6;;-1:-1:-1;;;;;3222:6:10;:15;999:42;3248:16;3263:1;3248:14;:16;:::i;:::-;3222:43;;-1:-1:-1;;;;;;3222:43:10;;;;;;;-1:-1:-1;;;;;4401:32:12;;;3222:43:10;;;4383:51:12;4450:18;;;4443:34;4356:18;;3222:43:10;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;-1:-1:-1;3284:6:10;;3314:10;3284:6;3300:25;;;3284:6;3300:25;;;;;;;:38;3340:24;;-1:-1:-1;;;3340:24:10;;877:42;3340:24;;;2571:51:12;-1:-1:-1;;;;;3284:6:10;;;;:15;;3300:38;;3365:1;;3284:6;;3340:16;;2544:18:12;;3340:24:10;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;:26;;;;:::i;:::-;3284:83;;-1:-1:-1;;;;;;3284:83:10;;;;;;;-1:-1:-1;;;;;4401:32:12;;;3284:83:10;;;4383:51:12;4450:18;;;4443:34;4356:18;;3284:83:10;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;-1:-1:-1;3386:6:10;;3416:10;3386:6;3402:25;;;3386:6;3402:25;;;;;;;;;:35;;3439:24;;-1:-1:-1;;;3439:24:10;;877:42;3439:24;;;2571:51:12;-1:-1:-1;;;;;3386:6:10;;;;:15;;3402:35;;3386:6;;3439:16;;2544:18:12;;3439:24:10;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;3386:78;;-1:-1:-1;;;;;;3386:78:10;;;;;;;-1:-1:-1;;;;;4401:32:12;;;3386:78:10;;;4383:51:12;4450:18;;;4443:34;4356:18;;3386:78:10;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;3919:47::o;3155:567::-;3505:6;;3533:24;;-1:-1:-1;;;3533:24:10;;877:42;3533:24;;;2571:51:12;-1:-1:-1;;;;;3505:6:10;;;;:15;;999:42;;3594:14;;773:2;;3594:14;;3505:6;;3533:16;;2544:18:12;;3533:24:10;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;:41;;;;:::i;:::-;3532:58;;;;:::i;:::-;3531:77;;;;:::i;3068:839::-;3815:6;;3845:10;3815:6;3831:25;;;3815:6;3831:25;;;;;;;:38;3871:24;;-1:-1:-1;;;3871:24:10;;877:42;3871:24;;;2571:51:12;-1:-1:-1;;;;;3815:6:10;;;;:15;;3831:38;;3815:6;;3871:16;;2544:18:12;;3871:24:10;2410:218:12;196:591;266:6;274;327:2;315:9;306:7;302:23;298:32;295:52;;;343:1;340;333:12;295:52;383:9;370:23;412:18;453:2;445:6;442:14;439:34;;;469:1;466;459:12;439:34;507:6;496:9;492:22;482:32;;552:7;545:4;541:2;537:13;533:27;523:55;;574:1;571;564:12;523:55;614:2;601:16;640:2;632:6;629:14;626:34;;;656:1;653;646:12;626:34;701:7;696:2;687:6;683:2;679:15;675:24;672:37;669:57;;;722:1;719;712:12;669:57;753:2;745:11;;;;;775:6;;-1:-1:-1;196:591:12;;-1:-1:-1;;;;196:591:12:o;792:676::-;975:6;968:14;961:22;950:9;943:41;924:4;1003:2;1041;1036;1025:9;1021:18;1014:30;1073:6;1067:13;1116:6;1111:2;1100:9;1096:18;1089:34;1141:1;1151:140;1165:6;1162:1;1159:13;1151:140;;;1260:14;;;1256:23;;1250:30;1226:17;;;1245:2;1222:26;1215:66;1180:10;;1151:140;;;1309:6;1306:1;1303:13;1300:91;;;1379:1;1374:2;1365:6;1354:9;1350:22;1346:31;1339:42;1300:91;-1:-1:-1;1452:2:12;1431:15;-1:-1:-1;;1427:29:12;1412:45;;;;1459:2;1408:54;;792:676;-1:-1:-1;;;;792:676:12:o;1473:173::-;1541:20;;-1:-1:-1;;;;;1590:31:12;;1580:42;;1570:70;;1636:1;1633;1626:12;1570:70;1473:173;;;:::o;1651:186::-;1710:6;1763:2;1751:9;1742:7;1738:23;1734:32;1731:52;;;1779:1;1776;1769:12;1731:52;1802:29;1821:9;1802:29;:::i;:::-;1792:39;1651:186;-1:-1:-1;;;1651:186:12:o;2151:254::-;2219:6;2227;2280:2;2268:9;2259:7;2255:23;2251:32;2248:52;;;2296:1;2293;2286:12;2248:52;2319:29;2338:9;2319:29;:::i;:::-;2309:39;2395:2;2380:18;;;;2367:32;;-1:-1:-1;;;2151:254:12:o;2825:127::-;2886:10;2881:3;2877:20;2874:1;2867:31;2917:4;2914:1;2907:15;2941:4;2938:1;2931:15;2957:125;2997:4;3025:1;3022;3019:8;3016:34;;;3030:18;;:::i;:::-;-1:-1:-1;3067:9:12;;2957:125::o;3087:128::-;3127:3;3158:1;3154:6;3151:1;3148:13;3145:39;;;3164:18;;:::i;:::-;-1:-1:-1;3200:9:12;;3087:128::o;3987:217::-;4027:1;4053;4043:132;;4097:10;4092:3;4088:20;4085:1;4078:31;4132:4;4129:1;4122:15;4160:4;4157:1;4150:15;4043:132;-1:-1:-1;4189:9:12;;3987:217::o;4488:277::-;4555:6;4608:2;4596:9;4587:7;4583:23;4579:32;4576:52;;;4624:1;4621;4614:12;4576:52;4656:9;4650:16;4709:5;4702:13;4695:21;4688:5;4685:32;4675:60;;4731:1;4728;4721:12;4978:184;5048:6;5101:2;5089:9;5080:7;5076:23;5072:32;5069:52;;;5117:1;5114;5107:12;5069:52;-1:-1:-1;5140:16:12;;4978:184;-1:-1:-1;4978:184:12:o", - "linkReferences": {}, - "immutableReferences": { - "3075": [ - { - "start": 972, - "length": 32 - }, - { - "start": 1757, - "length": 32 - } - ] - } - }, - "ast": { - "absolutePath": "/mnt/c/Users/PizzaHi5/Documents/CreatorDAO/CreatorDAO/src/figuredoutmapping.sol", - "id": 3330, - "exportedSymbols": { - "Address": [ - 2557 - ], - "AssetCreationMapping": [ - 3329 - ], - "IERC20": [ - 1922 - ], - "KeeperBase": [ - 29 - ], - "KeeperCompatible": [ - 38 - ], - "KeeperCompatibleInterface": [ - 57 - ], - "SafeERC20": [ - 2146 - ], - "TokenTimelock": [ - 2262 - ] - }, - "nodeType": "SourceUnit", - "src": "32:3936:10", - "nodes": [ - { - "id": 3046, - "nodeType": "PragmaDirective", - "src": "32:23:10", - "literals": [ - "solidity", - "^", - "0.8", - ".0" - ] - }, - { - "id": 3047, - "nodeType": "ImportDirective", - "src": "57:56:10", - "absolutePath": "/mnt/c/Users/PizzaHi5/Documents/CreatorDAO/CreatorDAO/lib/openzeppelin-contracts/contracts/token/ERC20/IERC20.sol", - "file": "@openzeppelin/contracts/token/ERC20/IERC20.sol", - "nameLocation": "-1:-1:-1", - "scope": 3330, - "sourceUnit": 1923, - "symbolAliases": [], - "unitAlias": "" - }, - { - "id": 3048, - "nodeType": "ImportDirective", - "src": "114:69:10", - "absolutePath": "/mnt/c/Users/PizzaHi5/Documents/CreatorDAO/CreatorDAO/lib/openzeppelin-contracts/contracts/token/ERC20/utils/TokenTimelock.sol", - "file": "@openzeppelin/contracts/token/ERC20/utils/TokenTimelock.sol", - "nameLocation": "-1:-1:-1", - "scope": 3330, - "sourceUnit": 2263, - "symbolAliases": [], - "unitAlias": "" - }, - { - "id": 3049, - "nodeType": "ImportDirective", - "src": "184:60:10", - "absolutePath": "/mnt/c/Users/PizzaHi5/Documents/CreatorDAO/CreatorDAO/lib/chainlink/contracts/src/v0.8/KeeperCompatible.sol", - "file": "@chainlink/contracts/src/v0.8/KeeperCompatible.sol", - "nameLocation": "-1:-1:-1", - "scope": 3330, - "sourceUnit": 39, - "symbolAliases": [], - "unitAlias": "" - }, - { - "id": 3329, - "nodeType": "ContractDefinition", - "src": "317:3651:10", - "nodes": [ - { - "id": 3054, - "nodeType": "VariableDeclaration", - "src": "383:36:10", - "constant": false, - "mutability": "mutable", - "name": "_tokenTimeLock", - "nameLocation": "405:14:10", - "scope": 3329, - "stateVariable": true, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_contract$_TokenTimelock_$2262", - "typeString": "contract TokenTimelock" - }, - "typeName": { - "id": 3053, - "nodeType": "UserDefinedTypeName", - "pathNode": { - "id": 3052, - "name": "TokenTimelock", - "nodeType": "IdentifierPath", - "referencedDeclaration": 2262, - "src": "383:13:10" - }, - "referencedDeclaration": 2262, - "src": "383:13:10", - "typeDescriptions": { - "typeIdentifier": "t_contract$_TokenTimelock_$2262", - "typeString": "contract TokenTimelock" - } - }, - "visibility": "private" - }, - { - "id": 3059, - "nodeType": "StructDefinition", - "src": "492:76:10", - "canonicalName": "AssetCreationMapping.Stats", - "members": [ - { - "constant": false, - "id": 3056, - "mutability": "mutable", - "name": "assetCreator", - "nameLocation": "522:12:10", - "nodeType": "VariableDeclaration", - "scope": 3059, - "src": "514:20:10", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "typeName": { - "id": 3055, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "514:7:10", - "stateMutability": "nonpayable", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 3058, - "mutability": "mutable", - "name": "assetUser", - "nameLocation": "552:9:10", - "nodeType": "VariableDeclaration", - "scope": 3059, - "src": "544:17:10", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "typeName": { - "id": 3057, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "544:7:10", - "stateMutability": "nonpayable", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "visibility": "internal" - } - ], - "name": "Stats", - "nameLocation": "499:5:10", - "scope": 3329, - "visibility": "public" - }, - { - "id": 3064, - "nodeType": "VariableDeclaration", - "src": "573:47:10", - "constant": false, - "functionSelector": "c1d4f957", - "mutability": "mutable", - "name": "contractStats", - "nameLocation": "607:13:10", - "scope": 3329, - "stateVariable": true, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_address_$_t_struct$_Stats_$3059_storage_$", - "typeString": "mapping(address => struct AssetCreationMapping.Stats)" - }, - "typeName": { - "id": 3063, - "keyType": { - "id": 3060, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "582:7:10", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "nodeType": "Mapping", - "src": "573:26:10", - "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_address_$_t_struct$_Stats_$3059_storage_$", - "typeString": "mapping(address => struct AssetCreationMapping.Stats)" - }, - "valueType": { - "id": 3062, - "nodeType": "UserDefinedTypeName", - "pathNode": { - "id": 3061, - "name": "Stats", - "nodeType": "IdentifierPath", - "referencedDeclaration": 3059, - "src": "593:5:10" - }, - "referencedDeclaration": 3059, - "src": "593:5:10", - "typeDescriptions": { - "typeIdentifier": "t_struct$_Stats_$3059_storage_ptr", - "typeString": "struct AssetCreationMapping.Stats" - } - } - }, - "visibility": "public" - }, - { - "id": 3066, - "nodeType": "VariableDeclaration", - "src": "652:23:10", - "constant": false, - "functionSelector": "0fb5a6b4", - "mutability": "mutable", - "name": "duration", - "nameLocation": "667:8:10", - "scope": 3329, - "stateVariable": true, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 3065, - "name": "uint256", - "nodeType": "ElementaryTypeName", - "src": "652:7:10", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "visibility": "public" - }, - { - "id": 3068, - "nodeType": "VariableDeclaration", - "src": "681:25:10", - "constant": false, - "functionSelector": "48cd4cb1", - "mutability": "mutable", - "name": "startBlock", - "nameLocation": "696:10:10", - "scope": 3329, - "stateVariable": true, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 3067, - "name": "uint256", - "nodeType": "ElementaryTypeName", - "src": "681:7:10", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "visibility": "public" - }, - { - "id": 3070, - "nodeType": "VariableDeclaration", - "src": "712:23:10", - "constant": false, - "functionSelector": "083c6323", - "mutability": "mutable", - "name": "endBlock", - "nameLocation": "727:8:10", - "scope": 3329, - "stateVariable": true, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 3069, - "name": "uint256", - "nodeType": "ElementaryTypeName", - "src": "712:7:10", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "visibility": "public" - }, - { - "id": 3073, - "nodeType": "VariableDeclaration", - "src": "741:34:10", - "constant": true, - "mutability": "constant", - "name": "USER_PENALTY", - "nameLocation": "758:12:10", - "scope": 3329, - "stateVariable": true, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 3071, - "name": "uint256", - "nodeType": "ElementaryTypeName", - "src": "741:7:10", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "value": { - "hexValue": "3130", - "id": 3072, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "number", - "lValueRequested": false, - "nodeType": "Literal", - "src": "773:2:10", - "typeDescriptions": { - "typeIdentifier": "t_rational_10_by_1", - "typeString": "int_const 10" - }, - "value": "10" - }, - "visibility": "internal" - }, - { - "id": 3075, - "nodeType": "VariableDeclaration", - "src": "804:40:10", - "constant": false, - "mutability": "immutable", - "name": "i_raisedAmount", - "nameLocation": "830:14:10", - "scope": 3329, - "stateVariable": true, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 3074, - "name": "uint256", - "nodeType": "ElementaryTypeName", - "src": "804:7:10", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "visibility": "private" - }, - { - "id": 3078, - "nodeType": "VariableDeclaration", - "src": "851:68:10", - "constant": true, - "mutability": "constant", - "name": "tokens", - "nameLocation": "868:6:10", - "scope": 3329, - "stateVariable": true, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "typeName": { - "id": 3076, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "851:7:10", - "stateMutability": "nonpayable", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "value": { - "hexValue": "307830393666364132623138356436334439343237353041324439363166373736323430316362413137", - "id": 3077, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "number", - "lValueRequested": false, - "nodeType": "Literal", - "src": "877:42:10", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "value": "0x096f6A2b185d63D942750A2D961f7762401cbA17" - }, - "visibility": "internal" - }, - { - "id": 3081, - "nodeType": "VariableDeclaration", - "src": "971:70:10", - "constant": true, - "mutability": "constant", - "name": "vaultDAO", - "nameLocation": "988:8:10", - "scope": 3329, - "stateVariable": true, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "typeName": { - "id": 3079, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "971:7:10", - "stateMutability": "nonpayable", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "value": { - "hexValue": "307865436636643230353434443065383463613341623638334630333934313538453663373565416145", - "id": 3080, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "number", - "lValueRequested": false, - "nodeType": "Literal", - "src": "999:42:10", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "value": "0xeCf6d20544D0e84ca3Ab683F0394158E6c75eAaE" - }, - "visibility": "internal" - }, - { - "id": 3084, - "nodeType": "VariableDeclaration", - "src": "1140:20:10", - "constant": false, - "functionSelector": "ecd0c0c3", - "mutability": "mutable", - "name": "_token", - "nameLocation": "1154:6:10", - "scope": 3329, - "stateVariable": true, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_contract$_IERC20_$1922", - "typeString": "contract IERC20" - }, - "typeName": { - "id": 3083, - "nodeType": "UserDefinedTypeName", - "pathNode": { - "id": 3082, - "name": "IERC20", - "nodeType": "IdentifierPath", - "referencedDeclaration": 1922, - "src": "1140:6:10" - }, - "referencedDeclaration": 1922, - "src": "1140:6:10", - "typeDescriptions": { - "typeIdentifier": "t_contract$_IERC20_$1922", - "typeString": "contract IERC20" - } - }, - "visibility": "public" - }, - { - "id": 3105, - "nodeType": "FunctionDefinition", - "src": "1216:408:10", - "body": { - "id": 3104, - "nodeType": "Block", - "src": "1313:311:10", - "statements": [ - { - "expression": { - "id": 3098, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftHandSide": { - "expression": { - "baseExpression": { - "id": 3093, - "name": "contractStats", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 3064, - "src": "1431:13:10", - "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_address_$_t_struct$_Stats_$3059_storage_$", - "typeString": "mapping(address => struct AssetCreationMapping.Stats storage ref)" - } - }, - "id": 3095, - "indexExpression": { - "id": 3094, - "name": "tokens", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 3078, - "src": "1445:6:10", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "nodeType": "IndexAccess", - "src": "1431:21:10", - "typeDescriptions": { - "typeIdentifier": "t_struct$_Stats_$3059_storage", - "typeString": "struct AssetCreationMapping.Stats storage ref" - } - }, - "id": 3096, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": true, - "memberName": "assetUser", - "nodeType": "MemberAccess", - "referencedDeclaration": 3058, - "src": "1431:31:10", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "nodeType": "Assignment", - "operator": "=", - "rightHandSide": { - "id": 3097, - "name": "_user", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 3090, - "src": "1465:5:10", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "src": "1431:39:10", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "id": 3099, - "nodeType": "ExpressionStatement", - "src": "1431:39:10" - }, - { - "expression": { - "id": 3102, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftHandSide": { - "id": 3100, - "name": "i_raisedAmount", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 3075, - "src": "1480:14:10", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "Assignment", - "operator": "=", - "rightHandSide": { - "id": 3101, - "name": "_raisedAmount", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 3088, - "src": "1497:13:10", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "src": "1480:30:10", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "id": 3103, - "nodeType": "ExpressionStatement", - "src": "1480:30:10" - } - ] - }, - "implemented": true, - "kind": "constructor", - "modifiers": [], - "name": "", - "nameLocation": "-1:-1:-1", - "parameters": { - "id": 3091, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 3086, - "mutability": "mutable", - "name": "amount", - "nameLocation": "1246:6:10", - "nodeType": "VariableDeclaration", - "scope": 3105, - "src": "1238:14:10", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 3085, - "name": "uint256", - "nodeType": "ElementaryTypeName", - "src": "1238:7:10", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 3088, - "mutability": "mutable", - "name": "_raisedAmount", - "nameLocation": "1270:13:10", - "nodeType": "VariableDeclaration", - "scope": 3105, - "src": "1262:21:10", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 3087, - "name": "uint256", - "nodeType": "ElementaryTypeName", - "src": "1262:7:10", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 3090, - "mutability": "mutable", - "name": "_user", - "nameLocation": "1301:5:10", - "nodeType": "VariableDeclaration", - "scope": 3105, - "src": "1293:13:10", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "typeName": { - "id": 3089, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "1293:7:10", - "stateMutability": "nonpayable", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "visibility": "internal" - } - ], - "src": "1228:84:10" - }, - "returnParameters": { - "id": 3092, - "nodeType": "ParameterList", - "parameters": [], - "src": "1313:0:10" - }, - "scope": 3329, - "stateMutability": "nonpayable", - "virtual": false, - "visibility": "public" - }, - { - "id": 3135, - "nodeType": "FunctionDefinition", - "src": "1652:457:10", - "body": { - "id": 3134, - "nodeType": "Block", - "src": "1724:385:10", - "statements": [ - { - "expression": { - "id": 3117, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftHandSide": { - "expression": { - "baseExpression": { - "id": 3112, - "name": "contractStats", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 3064, - "src": "1838:13:10", - "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_address_$_t_struct$_Stats_$3059_storage_$", - "typeString": "mapping(address => struct AssetCreationMapping.Stats storage ref)" - } - }, - "id": 3114, - "indexExpression": { - "id": 3113, - "name": "tokens", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 3078, - "src": "1852:6:10", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "nodeType": "IndexAccess", - "src": "1838:21:10", - "typeDescriptions": { - "typeIdentifier": "t_struct$_Stats_$3059_storage", - "typeString": "struct AssetCreationMapping.Stats storage ref" - } - }, - "id": 3115, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": true, - "memberName": "assetCreator", - "nodeType": "MemberAccess", - "referencedDeclaration": 3056, - "src": "1838:34:10", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "nodeType": "Assignment", - "operator": "=", - "rightHandSide": { - "id": 3116, - "name": "_creatorAddr", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 3107, - "src": "1875:12:10", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "src": "1838:49:10", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "id": 3118, - "nodeType": "ExpressionStatement", - "src": "1838:49:10" - }, - { - "expression": { - "id": 3122, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftHandSide": { - "id": 3119, - "name": "startBlock", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 3068, - "src": "1897:10:10", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "Assignment", - "operator": "=", - "rightHandSide": { - "expression": { - "id": 3120, - "name": "block", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": -4, - "src": "1910:5:10", - "typeDescriptions": { - "typeIdentifier": "t_magic_block", - "typeString": "block" - } - }, - "id": 3121, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberName": "timestamp", - "nodeType": "MemberAccess", - "src": "1910:15:10", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "src": "1897:28:10", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "id": 3123, - "nodeType": "ExpressionStatement", - "src": "1897:28:10" - }, - { - "expression": { - "id": 3126, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftHandSide": { - "id": 3124, - "name": "duration", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 3066, - "src": "1935:8:10", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "Assignment", - "operator": "=", - "rightHandSide": { - "id": 3125, - "name": "_duration", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 3109, - "src": "1946:9:10", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "src": "1935:20:10", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "id": 3127, - "nodeType": "ExpressionStatement", - "src": "1935:20:10" - }, - { - "expression": { - "id": 3132, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftHandSide": { - "id": 3128, - "name": "endBlock", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 3070, - "src": "1965:8:10", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "Assignment", - "operator": "=", - "rightHandSide": { - "commonType": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "id": 3131, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "id": 3129, - "name": "startBlock", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 3068, - "src": "1976:10:10", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "BinaryOperation", - "operator": "+", - "rightExpression": { - "id": 3130, - "name": "_duration", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 3109, - "src": "1989:9:10", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "src": "1976:22:10", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "src": "1965:33:10", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "id": 3133, - "nodeType": "ExpressionStatement", - "src": "1965:33:10" - } - ] - }, - "functionSelector": "c6c6d292", - "implemented": true, - "kind": "function", - "modifiers": [], - "name": "startContract", - "nameLocation": "1661:13:10", - "parameters": { - "id": 3110, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 3107, - "mutability": "mutable", - "name": "_creatorAddr", - "nameLocation": "1684:12:10", - "nodeType": "VariableDeclaration", - "scope": 3135, - "src": "1676:20:10", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "typeName": { - "id": 3106, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "1676:7:10", - "stateMutability": "nonpayable", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 3109, - "mutability": "mutable", - "name": "_duration", - "nameLocation": "1706:9:10", - "nodeType": "VariableDeclaration", - "scope": 3135, - "src": "1698:17:10", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 3108, - "name": "uint256", - "nodeType": "ElementaryTypeName", - "src": "1698:7:10", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "visibility": "internal" - } - ], - "src": "1675:41:10" - }, - "returnParameters": { - "id": 3111, - "nodeType": "ParameterList", - "parameters": [], - "src": "1724:0:10" - }, - "scope": 3329, - "stateMutability": "nonpayable", - "virtual": false, - "visibility": "public" - }, - { - "id": 3156, - "nodeType": "FunctionDefinition", - "src": "2115:209:10", - "body": { - "id": 3155, - "nodeType": "Block", - "src": "2183:141:10", - "statements": [ - { - "expression": { - "arguments": [ - { - "commonType": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "id": 3149, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "id": 3143, - "name": "_userAddr", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 3137, - "src": "2202:9:10", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "nodeType": "BinaryOperation", - "operator": "==", - "rightExpression": { - "expression": { - "baseExpression": { - "id": 3144, - "name": "contractStats", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 3064, - "src": "2215:13:10", - "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_address_$_t_struct$_Stats_$3059_storage_$", - "typeString": "mapping(address => struct AssetCreationMapping.Stats storage ref)" - } - }, - "id": 3147, - "indexExpression": { - "expression": { - "id": 3145, - "name": "msg", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": -15, - "src": "2229:3:10", - "typeDescriptions": { - "typeIdentifier": "t_magic_message", - "typeString": "msg" - } - }, - "id": 3146, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberName": "sender", - "nodeType": "MemberAccess", - "src": "2229:10:10", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "nodeType": "IndexAccess", - "src": "2215:25:10", - "typeDescriptions": { - "typeIdentifier": "t_struct$_Stats_$3059_storage", - "typeString": "struct AssetCreationMapping.Stats storage ref" - } - }, - "id": 3148, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "memberName": "assetUser", - "nodeType": "MemberAccess", - "referencedDeclaration": 3058, - "src": "2215:35:10", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "src": "2202:48:10", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - { - "hexValue": "596f7520617265206e6f7420726573706f6e7369626c6520666f72207468697320636f6e7472616374", - "id": 3150, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "string", - "lValueRequested": false, - "nodeType": "Literal", - "src": "2252:43:10", - "typeDescriptions": { - "typeIdentifier": "t_stringliteral_ae9ceee99be42500451da715b37452214c44b5b1288b1821a7f5e0ee8c4b918e", - "typeString": "literal_string \"You are not responsible for this contract\"" - }, - "value": "You are not responsible for this contract" - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - { - "typeIdentifier": "t_stringliteral_ae9ceee99be42500451da715b37452214c44b5b1288b1821a7f5e0ee8c4b918e", - "typeString": "literal_string \"You are not responsible for this contract\"" - } - ], - "id": 3142, - "name": "require", - "nodeType": "Identifier", - "overloadedDeclarations": [ - -18, - -18 - ], - "referencedDeclaration": -18, - "src": "2193:7:10", - "typeDescriptions": { - "typeIdentifier": "t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$", - "typeString": "function (bool,string memory) pure" - } - }, - "id": 3151, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "2193:103:10", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 3152, - "nodeType": "ExpressionStatement", - "src": "2193:103:10" - }, - { - "expression": { - "hexValue": "74727565", - "id": 3153, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "bool", - "lValueRequested": false, - "nodeType": "Literal", - "src": "2313:4:10", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - "value": "true" - }, - "functionReturnParameters": 3141, - "id": 3154, - "nodeType": "Return", - "src": "2306:11:10" - } - ] - }, - "functionSelector": "f65861c3", - "implemented": true, - "kind": "function", - "modifiers": [], - "name": "checkIfUser", - "nameLocation": "2124:11:10", - "parameters": { - "id": 3138, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 3137, - "mutability": "mutable", - "name": "_userAddr", - "nameLocation": "2145:9:10", - "nodeType": "VariableDeclaration", - "scope": 3156, - "src": "2137:17:10", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "typeName": { - "id": 3136, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "2137:7:10", - "stateMutability": "nonpayable", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "visibility": "internal" - } - ], - "src": "2136:19:10" - }, - "returnParameters": { - "id": 3141, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 3140, - "mutability": "mutable", - "name": "", - "nameLocation": "-1:-1:-1", - "nodeType": "VariableDeclaration", - "scope": 3156, - "src": "2177:4:10", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - "typeName": { - "id": 3139, - "name": "bool", - "nodeType": "ElementaryTypeName", - "src": "2177:4:10", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "visibility": "internal" - } - ], - "src": "2176:6:10" - }, - "scope": 3329, - "stateMutability": "view", - "virtual": false, - "visibility": "public" - }, - { - "id": 3167, - "nodeType": "FunctionDefinition", - "src": "2330:111:10", - "body": { - "id": 3166, - "nodeType": "Block", - "src": "2391:50:10", - "statements": [ - { - "expression": { - "commonType": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "id": 3164, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "id": 3161, - "name": "endBlock", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 3070, - "src": "2408:8:10", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "BinaryOperation", - "operator": "-", - "rightExpression": { - "expression": { - "id": 3162, - "name": "block", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": -4, - "src": "2419:5:10", - "typeDescriptions": { - "typeIdentifier": "t_magic_block", - "typeString": "block" - } - }, - "id": 3163, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberName": "timestamp", - "nodeType": "MemberAccess", - "src": "2419:15:10", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "src": "2408:26:10", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "functionReturnParameters": 3160, - "id": 3165, - "nodeType": "Return", - "src": "2401:33:10" - } - ] - }, - "functionSelector": "40c6ed97", - "implemented": true, - "kind": "function", - "modifiers": [], - "name": "checkTimeRemaining", - "nameLocation": "2339:18:10", - "parameters": { - "id": 3157, - "nodeType": "ParameterList", - "parameters": [], - "src": "2358:2:10" - }, - "returnParameters": { - "id": 3160, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 3159, - "mutability": "mutable", - "name": "", - "nameLocation": "-1:-1:-1", - "nodeType": "VariableDeclaration", - "scope": 3167, - "src": "2382:7:10", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 3158, - "name": "uint256", - "nodeType": "ElementaryTypeName", - "src": "2382:7:10", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "visibility": "internal" - } - ], - "src": "2381:9:10" - }, - "scope": 3329, - "stateMutability": "view", - "virtual": false, - "visibility": "public" - }, - { - "id": 3182, - "nodeType": "FunctionDefinition", - "src": "2472:139:10", - "body": { - "id": 3181, - "nodeType": "Block", - "src": "2506:105:10", - "statements": [ - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "expression": { - "id": 3172, - "name": "msg", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": -15, - "src": "2537:3:10", - "typeDescriptions": { - "typeIdentifier": "t_magic_message", - "typeString": "msg" - } - }, - "id": 3173, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberName": "sender", - "nodeType": "MemberAccess", - "src": "2537:10:10", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_address", - "typeString": "address" - } - ], - "id": 3171, - "name": "checkIfUser", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 3156, - "src": "2525:11:10", - "typeDescriptions": { - "typeIdentifier": "t_function_internal_view$_t_address_$returns$_t_bool_$", - "typeString": "function (address) view returns (bool)" - } - }, - "id": 3174, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "2525:23:10", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - { - "hexValue": "596f752063616e6e6f7420656e64207468697320636f6e7472616374", - "id": 3175, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "string", - "lValueRequested": false, - "nodeType": "Literal", - "src": "2550:30:10", - "typeDescriptions": { - "typeIdentifier": "t_stringliteral_b05e687dced7a3196251141bf0691f21754b9ac08907237cdc0d34727c48043a", - "typeString": "literal_string \"You cannot end this contract\"" - }, - "value": "You cannot end this contract" - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - { - "typeIdentifier": "t_stringliteral_b05e687dced7a3196251141bf0691f21754b9ac08907237cdc0d34727c48043a", - "typeString": "literal_string \"You cannot end this contract\"" - } - ], - "id": 3170, - "name": "require", - "nodeType": "Identifier", - "overloadedDeclarations": [ - -18, - -18 - ], - "referencedDeclaration": -18, - "src": "2516:7:10", - "typeDescriptions": { - "typeIdentifier": "t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$", - "typeString": "function (bool,string memory) pure" - } - }, - "id": 3176, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "2516:65:10", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 3177, - "nodeType": "ExpressionStatement", - "src": "2516:65:10" - }, - { - "expression": { - "arguments": [], - "expression": { - "argumentTypes": [], - "id": 3178, - "name": "endContract", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 3324, - "src": "2591:11:10", - "typeDescriptions": { - "typeIdentifier": "t_function_internal_nonpayable$__$returns$__$", - "typeString": "function ()" - } - }, - "id": 3179, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "2591:13:10", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 3180, - "nodeType": "ExpressionStatement", - "src": "2591:13:10" - } - ] - }, - "functionSelector": "facda813", - "implemented": true, - "kind": "function", - "modifiers": [], - "name": "callEndContract", - "nameLocation": "2481:15:10", - "parameters": { - "id": 3168, - "nodeType": "ParameterList", - "parameters": [], - "src": "2496:2:10" - }, - "returnParameters": { - "id": 3169, - "nodeType": "ParameterList", - "parameters": [], - "src": "2506:0:10" - }, - "scope": 3329, - "stateMutability": "nonpayable", - "virtual": false, - "visibility": "public" - }, - { - "id": 3200, - "nodeType": "FunctionDefinition", - "src": "2659:176:10", - "baseFunctions": [ - 50 - ], - "body": { - "id": 3199, - "nodeType": "Block", - "src": "2774:61:10", - "statements": [ - { - "expression": { - "id": 3197, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftHandSide": { - "id": 3191, - "name": "upkeepNeeded", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 3187, - "src": "2784:12:10", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "nodeType": "Assignment", - "operator": "=", - "rightHandSide": { - "components": [ - { - "commonType": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "id": 3195, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "expression": { - "id": 3192, - "name": "block", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": -4, - "src": "2800:5:10", - "typeDescriptions": { - "typeIdentifier": "t_magic_block", - "typeString": "block" - } - }, - "id": 3193, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberName": "timestamp", - "nodeType": "MemberAccess", - "src": "2800:15:10", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "BinaryOperation", - "operator": ">=", - "rightExpression": { - "id": 3194, - "name": "endBlock", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 3070, - "src": "2819:8:10", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "src": "2800:27:10", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - } - ], - "id": 3196, - "isConstant": false, - "isInlineArray": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "nodeType": "TupleExpression", - "src": "2799:29:10", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "src": "2784:44:10", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "id": 3198, - "nodeType": "ExpressionStatement", - "src": "2784:44:10" - } - ] - }, - "functionSelector": "6e04ff0d", - "implemented": true, - "kind": "function", - "modifiers": [], - "name": "checkUpkeep", - "nameLocation": "2668:11:10", - "parameters": { - "id": 3185, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 3184, - "mutability": "mutable", - "name": "", - "nameLocation": "-1:-1:-1", - "nodeType": "VariableDeclaration", - "scope": 3200, - "src": "2681:14:10", - "stateVariable": false, - "storageLocation": "calldata", - "typeDescriptions": { - "typeIdentifier": "t_bytes_calldata_ptr", - "typeString": "bytes" - }, - "typeName": { - "id": 3183, - "name": "bytes", - "nodeType": "ElementaryTypeName", - "src": "2681:5:10", - "typeDescriptions": { - "typeIdentifier": "t_bytes_storage_ptr", - "typeString": "bytes" - } - }, - "visibility": "internal" - } - ], - "src": "2680:16:10" - }, - "returnParameters": { - "id": 3190, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 3187, - "mutability": "mutable", - "name": "upkeepNeeded", - "nameLocation": "2734:12:10", - "nodeType": "VariableDeclaration", - "scope": 3200, - "src": "2729:17:10", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - "typeName": { - "id": 3186, - "name": "bool", - "nodeType": "ElementaryTypeName", - "src": "2729:4:10", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 3189, - "mutability": "mutable", - "name": "performData", - "nameLocation": "2761:11:10", - "nodeType": "VariableDeclaration", - "scope": 3200, - "src": "2748:24:10", - "stateVariable": false, - "storageLocation": "memory", - "typeDescriptions": { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes" - }, - "typeName": { - "id": 3188, - "name": "bytes", - "nodeType": "ElementaryTypeName", - "src": "2748:5:10", - "typeDescriptions": { - "typeIdentifier": "t_bytes_storage_ptr", - "typeString": "bytes" - } - }, - "visibility": "internal" - } - ], - "src": "2719:54:10" - }, - "scope": 3329, - "stateMutability": "view", - "virtual": false, - "visibility": "external" - }, - { - "id": 3216, - "nodeType": "FunctionDefinition", - "src": "2869:142:10", - "baseFunctions": [ - 56 - ], - "body": { - "id": 3215, - "nodeType": "Block", - "src": "2926:85:10", - "statements": [ - { - "condition": { - "commonType": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "id": 3209, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "expression": { - "id": 3206, - "name": "block", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": -4, - "src": "2939:5:10", - "typeDescriptions": { - "typeIdentifier": "t_magic_block", - "typeString": "block" - } - }, - "id": 3207, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberName": "timestamp", - "nodeType": "MemberAccess", - "src": "2939:15:10", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "BinaryOperation", - "operator": ">=", - "rightExpression": { - "id": 3208, - "name": "endBlock", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 3070, - "src": "2958:8:10", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "src": "2939:27:10", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "id": 3214, - "nodeType": "IfStatement", - "src": "2936:69:10", - "trueBody": { - "id": 3213, - "nodeType": "Block", - "src": "2967:38:10", - "statements": [ - { - "expression": { - "arguments": [], - "expression": { - "argumentTypes": [], - "id": 3210, - "name": "endContract", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 3324, - "src": "2981:11:10", - "typeDescriptions": { - "typeIdentifier": "t_function_internal_nonpayable$__$returns$__$", - "typeString": "function ()" - } - }, - "id": 3211, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "2981:13:10", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 3212, - "nodeType": "ExpressionStatement", - "src": "2981:13:10" - } - ] - } - } - ] - }, - "functionSelector": "4585e33b", - "implemented": true, - "kind": "function", - "modifiers": [], - "name": "performUpkeep", - "nameLocation": "2878:13:10", - "overrides": { - "id": 3204, - "nodeType": "OverrideSpecifier", - "overrides": [], - "src": "2917:8:10" - }, - "parameters": { - "id": 3203, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 3202, - "mutability": "mutable", - "name": "", - "nameLocation": "-1:-1:-1", - "nodeType": "VariableDeclaration", - "scope": 3216, - "src": "2892:14:10", - "stateVariable": false, - "storageLocation": "calldata", - "typeDescriptions": { - "typeIdentifier": "t_bytes_calldata_ptr", - "typeString": "bytes" - }, - "typeName": { - "id": 3201, - "name": "bytes", - "nodeType": "ElementaryTypeName", - "src": "2892:5:10", - "typeDescriptions": { - "typeIdentifier": "t_bytes_storage_ptr", - "typeString": "bytes" - } - }, - "visibility": "internal" - } - ], - "src": "2891:16:10" - }, - "returnParameters": { - "id": 3205, - "nodeType": "ParameterList", - "parameters": [], - "src": "2926:0:10" - }, - "scope": 3329, - "stateMutability": "nonpayable", - "virtual": false, - "visibility": "external" - }, - { - "id": 3324, - "nodeType": "FunctionDefinition", - "src": "3017:896:10", - "body": { - "id": 3323, - "nodeType": "Block", - "src": "3057:856:10", - "statements": [ - { - "condition": { - "arguments": [ - { - "expression": { - "id": 3220, - "name": "msg", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": -15, - "src": "3083:3:10", - "typeDescriptions": { - "typeIdentifier": "t_magic_message", - "typeString": "msg" - } - }, - "id": 3221, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberName": "sender", - "nodeType": "MemberAccess", - "src": "3083:10:10", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_address", - "typeString": "address" - } - ], - "id": 3219, - "name": "checkIfUser", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 3156, - "src": "3071:11:10", - "typeDescriptions": { - "typeIdentifier": "t_function_internal_view$_t_address_$returns$_t_bool_$", - "typeString": "function (address) view returns (bool)" - } - }, - "id": 3222, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "3071:23:10", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "falseBody": { - "id": 3321, - "nodeType": "Block", - "src": "3738:169:10", - "statements": [ - { - "expression": { - "arguments": [ - { - "expression": { - "baseExpression": { - "id": 3310, - "name": "contractStats", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 3064, - "src": "3831:13:10", - "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_address_$_t_struct$_Stats_$3059_storage_$", - "typeString": "mapping(address => struct AssetCreationMapping.Stats storage ref)" - } - }, - "id": 3313, - "indexExpression": { - "expression": { - "id": 3311, - "name": "msg", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": -15, - "src": "3845:3:10", - "typeDescriptions": { - "typeIdentifier": "t_magic_message", - "typeString": "msg" - } - }, - "id": 3312, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberName": "sender", - "nodeType": "MemberAccess", - "src": "3845:10:10", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "nodeType": "IndexAccess", - "src": "3831:25:10", - "typeDescriptions": { - "typeIdentifier": "t_struct$_Stats_$3059_storage", - "typeString": "struct AssetCreationMapping.Stats storage ref" - } - }, - "id": 3314, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "memberName": "assetCreator", - "nodeType": "MemberAccess", - "referencedDeclaration": 3056, - "src": "3831:38:10", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - { - "arguments": [ - { - "id": 3317, - "name": "tokens", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 3078, - "src": "3888:6:10", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_address", - "typeString": "address" - } - ], - "expression": { - "id": 3315, - "name": "_token", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 3084, - "src": "3871:6:10", - "typeDescriptions": { - "typeIdentifier": "t_contract$_IERC20_$1922", - "typeString": "contract IERC20" - } - }, - "id": 3316, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberName": "balanceOf", - "nodeType": "MemberAccess", - "referencedDeclaration": 1879, - "src": "3871:16:10", - "typeDescriptions": { - "typeIdentifier": "t_function_external_view$_t_address_$returns$_t_uint256_$", - "typeString": "function (address) view external returns (uint256)" - } - }, - "id": 3318, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "3871:24:10", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_address", - "typeString": "address" - }, - { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - ], - "expression": { - "id": 3307, - "name": "_token", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 3084, - "src": "3815:6:10", - "typeDescriptions": { - "typeIdentifier": "t_contract$_IERC20_$1922", - "typeString": "contract IERC20" - } - }, - "id": 3309, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberName": "transfer", - "nodeType": "MemberAccess", - "referencedDeclaration": 1889, - "src": "3815:15:10", - "typeDescriptions": { - "typeIdentifier": "t_function_external_nonpayable$_t_address_$_t_uint256_$returns$_t_bool_$", - "typeString": "function (address,uint256) external returns (bool)" - } - }, - "id": 3319, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "3815:81:10", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "id": 3320, - "nodeType": "ExpressionStatement", - "src": "3815:81:10" - } - ] - }, - "id": 3322, - "nodeType": "IfStatement", - "src": "3068:839:10", - "trueBody": { - "id": 3306, - "nodeType": "Block", - "src": "3095:637:10", - "statements": [ - { - "condition": { - "commonType": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "id": 3231, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "expression": { - "id": 3223, - "name": "block", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": -4, - "src": "3159:5:10", - "typeDescriptions": { - "typeIdentifier": "t_magic_block", - "typeString": "block" - } - }, - "id": 3224, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberName": "timestamp", - "nodeType": "MemberAccess", - "src": "3159:15:10", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "BinaryOperation", - "operator": ">=", - "rightExpression": { - "commonType": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "id": 3230, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "id": 3225, - "name": "endBlock", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 3070, - "src": "3178:8:10", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "BinaryOperation", - "operator": "-", - "rightExpression": { - "components": [ - { - "commonType": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "id": 3228, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "id": 3226, - "name": "duration", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 3066, - "src": "3190:8:10", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "BinaryOperation", - "operator": "/", - "rightExpression": { - "hexValue": "32", - "id": 3227, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "number", - "lValueRequested": false, - "nodeType": "Literal", - "src": "3199:1:10", - "typeDescriptions": { - "typeIdentifier": "t_rational_2_by_1", - "typeString": "int_const 2" - }, - "value": "2" - }, - "src": "3190:10:10", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - } - ], - "id": 3229, - "isConstant": false, - "isInlineArray": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "nodeType": "TupleExpression", - "src": "3189:12:10", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "src": "3178:23:10", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "src": "3159:42:10", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "falseBody": { - "id": 3304, - "nodeType": "Block", - "src": "3486:236:10", - "statements": [ - { - "expression": { - "arguments": [ - { - "id": 3275, - "name": "vaultDAO", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 3081, - "src": "3521:8:10", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - { - "commonType": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "id": 3287, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "components": [ - { - "commonType": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "id": 3284, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "components": [ - { - "commonType": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "id": 3281, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "arguments": [ - { - "id": 3278, - "name": "tokens", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 3078, - "src": "3550:6:10", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_address", - "typeString": "address" - } - ], - "expression": { - "id": 3276, - "name": "_token", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 3084, - "src": "3533:6:10", - "typeDescriptions": { - "typeIdentifier": "t_contract$_IERC20_$1922", - "typeString": "contract IERC20" - } - }, - "id": 3277, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberName": "balanceOf", - "nodeType": "MemberAccess", - "referencedDeclaration": 1879, - "src": "3533:16:10", - "typeDescriptions": { - "typeIdentifier": "t_function_external_view$_t_address_$returns$_t_uint256_$", - "typeString": "function (address) view external returns (uint256)" - } - }, - "id": 3279, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "3533:24:10", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "BinaryOperation", - "operator": "-", - "rightExpression": { - "id": 3280, - "name": "i_raisedAmount", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 3075, - "src": "3560:14:10", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "src": "3533:41:10", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - } - ], - "id": 3282, - "isConstant": false, - "isInlineArray": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "nodeType": "TupleExpression", - "src": "3532:43:10", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "BinaryOperation", - "operator": "/", - "rightExpression": { - "id": 3283, - "name": "USER_PENALTY", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 3073, - "src": "3578:12:10", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "src": "3532:58:10", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - } - ], - "id": 3285, - "isConstant": false, - "isInlineArray": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "nodeType": "TupleExpression", - "src": "3531:60:10", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "BinaryOperation", - "operator": "+", - "rightExpression": { - "id": 3286, - "name": "i_raisedAmount", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 3075, - "src": "3594:14:10", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "src": "3531:77:10", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_address", - "typeString": "address" - }, - { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - ], - "expression": { - "id": 3272, - "name": "_token", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 3084, - "src": "3505:6:10", - "typeDescriptions": { - "typeIdentifier": "t_contract$_IERC20_$1922", - "typeString": "contract IERC20" - } - }, - "id": 3274, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberName": "transfer", - "nodeType": "MemberAccess", - "referencedDeclaration": 1889, - "src": "3505:15:10", - "typeDescriptions": { - "typeIdentifier": "t_function_external_nonpayable$_t_address_$_t_uint256_$returns$_t_bool_$", - "typeString": "function (address,uint256) external returns (bool)" - } - }, - "id": 3288, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "3505:104:10", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "id": 3289, - "nodeType": "ExpressionStatement", - "src": "3505:104:10" - }, - { - "expression": { - "arguments": [ - { - "expression": { - "baseExpression": { - "id": 3293, - "name": "contractStats", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 3064, - "src": "3644:13:10", - "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_address_$_t_struct$_Stats_$3059_storage_$", - "typeString": "mapping(address => struct AssetCreationMapping.Stats storage ref)" - } - }, - "id": 3296, - "indexExpression": { - "expression": { - "id": 3294, - "name": "msg", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": -15, - "src": "3658:3:10", - "typeDescriptions": { - "typeIdentifier": "t_magic_message", - "typeString": "msg" - } - }, - "id": 3295, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberName": "sender", - "nodeType": "MemberAccess", - "src": "3658:10:10", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "nodeType": "IndexAccess", - "src": "3644:25:10", - "typeDescriptions": { - "typeIdentifier": "t_struct$_Stats_$3059_storage", - "typeString": "struct AssetCreationMapping.Stats storage ref" - } - }, - "id": 3297, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "memberName": "assetUser", - "nodeType": "MemberAccess", - "referencedDeclaration": 3058, - "src": "3644:35:10", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - { - "arguments": [ - { - "id": 3300, - "name": "tokens", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 3078, - "src": "3698:6:10", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_address", - "typeString": "address" - } - ], - "expression": { - "id": 3298, - "name": "_token", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 3084, - "src": "3681:6:10", - "typeDescriptions": { - "typeIdentifier": "t_contract$_IERC20_$1922", - "typeString": "contract IERC20" - } - }, - "id": 3299, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberName": "balanceOf", - "nodeType": "MemberAccess", - "referencedDeclaration": 1879, - "src": "3681:16:10", - "typeDescriptions": { - "typeIdentifier": "t_function_external_view$_t_address_$returns$_t_uint256_$", - "typeString": "function (address) view external returns (uint256)" - } - }, - "id": 3301, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "3681:24:10", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_address", - "typeString": "address" - }, - { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - ], - "expression": { - "id": 3290, - "name": "_token", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 3084, - "src": "3628:6:10", - "typeDescriptions": { - "typeIdentifier": "t_contract$_IERC20_$1922", - "typeString": "contract IERC20" - } - }, - "id": 3292, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberName": "transfer", - "nodeType": "MemberAccess", - "referencedDeclaration": 1889, - "src": "3628:15:10", - "typeDescriptions": { - "typeIdentifier": "t_function_external_nonpayable$_t_address_$_t_uint256_$returns$_t_bool_$", - "typeString": "function (address,uint256) external returns (bool)" - } - }, - "id": 3302, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "3628:78:10", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "id": 3303, - "nodeType": "ExpressionStatement", - "src": "3628:78:10" - } - ] - }, - "id": 3305, - "nodeType": "IfStatement", - "src": "3155:567:10", - "trueBody": { - "id": 3271, - "nodeType": "Block", - "src": "3203:277:10", - "statements": [ - { - "expression": { - "arguments": [ - { - "id": 3235, - "name": "vaultDAO", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 3081, - "src": "3238:8:10", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - { - "commonType": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "id": 3238, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "id": 3236, - "name": "i_raisedAmount", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 3075, - "src": "3248:14:10", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "BinaryOperation", - "operator": "/", - "rightExpression": { - "hexValue": "32", - "id": 3237, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "number", - "lValueRequested": false, - "nodeType": "Literal", - "src": "3263:1:10", - "typeDescriptions": { - "typeIdentifier": "t_rational_2_by_1", - "typeString": "int_const 2" - }, - "value": "2" - }, - "src": "3248:16:10", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_address", - "typeString": "address" - }, - { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - ], - "expression": { - "id": 3232, - "name": "_token", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 3084, - "src": "3222:6:10", - "typeDescriptions": { - "typeIdentifier": "t_contract$_IERC20_$1922", - "typeString": "contract IERC20" - } - }, - "id": 3234, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberName": "transfer", - "nodeType": "MemberAccess", - "referencedDeclaration": 1889, - "src": "3222:15:10", - "typeDescriptions": { - "typeIdentifier": "t_function_external_nonpayable$_t_address_$_t_uint256_$returns$_t_bool_$", - "typeString": "function (address,uint256) external returns (bool)" - } - }, - "id": 3239, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "3222:43:10", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "id": 3240, - "nodeType": "ExpressionStatement", - "src": "3222:43:10" - }, - { - "expression": { - "arguments": [ - { - "expression": { - "baseExpression": { - "id": 3244, - "name": "contractStats", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 3064, - "src": "3300:13:10", - "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_address_$_t_struct$_Stats_$3059_storage_$", - "typeString": "mapping(address => struct AssetCreationMapping.Stats storage ref)" - } - }, - "id": 3247, - "indexExpression": { - "expression": { - "id": 3245, - "name": "msg", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": -15, - "src": "3314:3:10", - "typeDescriptions": { - "typeIdentifier": "t_magic_message", - "typeString": "msg" - } - }, - "id": 3246, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberName": "sender", - "nodeType": "MemberAccess", - "src": "3314:10:10", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "nodeType": "IndexAccess", - "src": "3300:25:10", - "typeDescriptions": { - "typeIdentifier": "t_struct$_Stats_$3059_storage", - "typeString": "struct AssetCreationMapping.Stats storage ref" - } - }, - "id": 3248, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "memberName": "assetCreator", - "nodeType": "MemberAccess", - "referencedDeclaration": 3056, - "src": "3300:38:10", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - { - "commonType": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "id": 3254, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "arguments": [ - { - "id": 3251, - "name": "tokens", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 3078, - "src": "3357:6:10", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_address", - "typeString": "address" - } - ], - "expression": { - "id": 3249, - "name": "_token", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 3084, - "src": "3340:6:10", - "typeDescriptions": { - "typeIdentifier": "t_contract$_IERC20_$1922", - "typeString": "contract IERC20" - } - }, - "id": 3250, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberName": "balanceOf", - "nodeType": "MemberAccess", - "referencedDeclaration": 1879, - "src": "3340:16:10", - "typeDescriptions": { - "typeIdentifier": "t_function_external_view$_t_address_$returns$_t_uint256_$", - "typeString": "function (address) view external returns (uint256)" - } - }, - "id": 3252, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "3340:24:10", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "BinaryOperation", - "operator": "/", - "rightExpression": { - "hexValue": "32", - "id": 3253, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "number", - "lValueRequested": false, - "nodeType": "Literal", - "src": "3365:1:10", - "typeDescriptions": { - "typeIdentifier": "t_rational_2_by_1", - "typeString": "int_const 2" - }, - "value": "2" - }, - "src": "3340:26:10", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_address", - "typeString": "address" - }, - { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - ], - "expression": { - "id": 3241, - "name": "_token", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 3084, - "src": "3284:6:10", - "typeDescriptions": { - "typeIdentifier": "t_contract$_IERC20_$1922", - "typeString": "contract IERC20" - } - }, - "id": 3243, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberName": "transfer", - "nodeType": "MemberAccess", - "referencedDeclaration": 1889, - "src": "3284:15:10", - "typeDescriptions": { - "typeIdentifier": "t_function_external_nonpayable$_t_address_$_t_uint256_$returns$_t_bool_$", - "typeString": "function (address,uint256) external returns (bool)" - } - }, - "id": 3255, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "3284:83:10", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "id": 3256, - "nodeType": "ExpressionStatement", - "src": "3284:83:10" - }, - { - "expression": { - "arguments": [ - { - "expression": { - "baseExpression": { - "id": 3260, - "name": "contractStats", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 3064, - "src": "3402:13:10", - "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_address_$_t_struct$_Stats_$3059_storage_$", - "typeString": "mapping(address => struct AssetCreationMapping.Stats storage ref)" - } - }, - "id": 3263, - "indexExpression": { - "expression": { - "id": 3261, - "name": "msg", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": -15, - "src": "3416:3:10", - "typeDescriptions": { - "typeIdentifier": "t_magic_message", - "typeString": "msg" - } - }, - "id": 3262, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberName": "sender", - "nodeType": "MemberAccess", - "src": "3416:10:10", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "nodeType": "IndexAccess", - "src": "3402:25:10", - "typeDescriptions": { - "typeIdentifier": "t_struct$_Stats_$3059_storage", - "typeString": "struct AssetCreationMapping.Stats storage ref" - } - }, - "id": 3264, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "memberName": "assetUser", - "nodeType": "MemberAccess", - "referencedDeclaration": 3058, - "src": "3402:35:10", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - { - "arguments": [ - { - "id": 3267, - "name": "tokens", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 3078, - "src": "3456:6:10", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_address", - "typeString": "address" - } - ], - "expression": { - "id": 3265, - "name": "_token", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 3084, - "src": "3439:6:10", - "typeDescriptions": { - "typeIdentifier": "t_contract$_IERC20_$1922", - "typeString": "contract IERC20" - } - }, - "id": 3266, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberName": "balanceOf", - "nodeType": "MemberAccess", - "referencedDeclaration": 1879, - "src": "3439:16:10", - "typeDescriptions": { - "typeIdentifier": "t_function_external_view$_t_address_$returns$_t_uint256_$", - "typeString": "function (address) view external returns (uint256)" - } - }, - "id": 3268, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "3439:24:10", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_address", - "typeString": "address" - }, - { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - ], - "expression": { - "id": 3257, - "name": "_token", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 3084, - "src": "3386:6:10", - "typeDescriptions": { - "typeIdentifier": "t_contract$_IERC20_$1922", - "typeString": "contract IERC20" - } - }, - "id": 3259, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberName": "transfer", - "nodeType": "MemberAccess", - "referencedDeclaration": 1889, - "src": "3386:15:10", - "typeDescriptions": { - "typeIdentifier": "t_function_external_nonpayable$_t_address_$_t_uint256_$returns$_t_bool_$", - "typeString": "function (address,uint256) external returns (bool)" - } - }, - "id": 3269, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "3386:78:10", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "id": 3270, - "nodeType": "ExpressionStatement", - "src": "3386:78:10" - } - ] - } - } - ] - } - } - ] - }, - "implemented": true, - "kind": "function", - "modifiers": [], - "name": "endContract", - "nameLocation": "3026:11:10", - "parameters": { - "id": 3217, - "nodeType": "ParameterList", - "parameters": [], - "src": "3037:2:10" - }, - "returnParameters": { - "id": 3218, - "nodeType": "ParameterList", - "parameters": [], - "src": "3057:0:10" - }, - "scope": 3329, - "stateMutability": "nonpayable", - "virtual": true, - "visibility": "internal" - }, - { - "id": 3328, - "nodeType": "FunctionDefinition", - "src": "3919:47:10", - "body": { - "id": 3327, - "nodeType": "Block", - "src": "3950:16:10", - "statements": [] - }, - "functionSelector": "0619a438", - "implemented": true, - "kind": "function", - "modifiers": [], - "name": "adding_value", - "nameLocation": "3928:12:10", - "parameters": { - "id": 3325, - "nodeType": "ParameterList", - "parameters": [], - "src": "3940:2:10" - }, - "returnParameters": { - "id": 3326, - "nodeType": "ParameterList", - "parameters": [], - "src": "3950:0:10" - }, - "scope": 3329, - "stateMutability": "nonpayable", - "virtual": false, - "visibility": "public" - } - ], - "abstract": false, - "baseContracts": [ - { - "baseName": { - "id": 3050, - "name": "KeeperCompatibleInterface", - "nodeType": "IdentifierPath", - "referencedDeclaration": 57, - "src": "350:25:10" - }, - "id": 3051, - "nodeType": "InheritanceSpecifier", - "src": "350:25:10" - } - ], - "canonicalName": "AssetCreationMapping", - "contractDependencies": [], - "contractKind": "contract", - "fullyImplemented": true, - "linearizedBaseContracts": [ - 3329, - 57 - ], - "name": "AssetCreationMapping", - "nameLocation": "326:20:10", - "scope": 3330, - "usedErrors": [] - } - ] - } -} \ No newline at end of file diff --git a/out/test.sol/DSTest.json b/out/test.sol/DSTest.json deleted file mode 100644 index 39de201..0000000 --- a/out/test.sol/DSTest.json +++ /dev/null @@ -1,23166 +0,0 @@ -{ - "abi": [ - { - "anonymous": false, - "inputs": [ - { - "indexed": false, - "internalType": "string", - "name": "", - "type": "string" - } - ], - "name": "log", - "type": "event" - }, - { - "anonymous": false, - "inputs": [ - { - "indexed": false, - "internalType": "address", - "name": "", - "type": "address" - } - ], - "name": "log_address", - "type": "event" - }, - { - "anonymous": false, - "inputs": [ - { - "indexed": false, - "internalType": "bytes", - "name": "", - "type": "bytes" - } - ], - "name": "log_bytes", - "type": "event" - }, - { - "anonymous": false, - "inputs": [ - { - "indexed": false, - "internalType": "bytes32", - "name": "", - "type": "bytes32" - } - ], - "name": "log_bytes32", - "type": "event" - }, - { - "anonymous": false, - "inputs": [ - { - "indexed": false, - "internalType": "int256", - "name": "", - "type": "int256" - } - ], - "name": "log_int", - "type": "event" - }, - { - "anonymous": false, - "inputs": [ - { - "indexed": false, - "internalType": "string", - "name": "key", - "type": "string" - }, - { - "indexed": false, - "internalType": "address", - "name": "val", - "type": "address" - } - ], - "name": "log_named_address", - "type": "event" - }, - { - "anonymous": false, - "inputs": [ - { - "indexed": false, - "internalType": "string", - "name": "key", - "type": "string" - }, - { - "indexed": false, - "internalType": "bytes", - "name": "val", - "type": "bytes" - } - ], - "name": "log_named_bytes", - "type": "event" - }, - { - "anonymous": false, - "inputs": [ - { - "indexed": false, - "internalType": "string", - "name": "key", - "type": "string" - }, - { - "indexed": false, - "internalType": "bytes32", - "name": "val", - "type": "bytes32" - } - ], - "name": "log_named_bytes32", - "type": "event" - }, - { - "anonymous": false, - "inputs": [ - { - "indexed": false, - "internalType": "string", - "name": "key", - "type": "string" - }, - { - "indexed": false, - "internalType": "int256", - "name": "val", - "type": "int256" - }, - { - "indexed": false, - "internalType": "uint256", - "name": "decimals", - "type": "uint256" - } - ], - "name": "log_named_decimal_int", - "type": "event" - }, - { - "anonymous": false, - "inputs": [ - { - "indexed": false, - "internalType": "string", - "name": "key", - "type": "string" - }, - { - "indexed": false, - "internalType": "uint256", - "name": "val", - "type": "uint256" - }, - { - "indexed": false, - "internalType": "uint256", - "name": "decimals", - "type": "uint256" - } - ], - "name": "log_named_decimal_uint", - "type": "event" - }, - { - "anonymous": false, - "inputs": [ - { - "indexed": false, - "internalType": "string", - "name": "key", - "type": "string" - }, - { - "indexed": false, - "internalType": "int256", - "name": "val", - "type": "int256" - } - ], - "name": "log_named_int", - "type": "event" - }, - { - "anonymous": false, - "inputs": [ - { - "indexed": false, - "internalType": "string", - "name": "key", - "type": "string" - }, - { - "indexed": false, - "internalType": "string", - "name": "val", - "type": "string" - } - ], - "name": "log_named_string", - "type": "event" - }, - { - "anonymous": false, - "inputs": [ - { - "indexed": false, - "internalType": "string", - "name": "key", - "type": "string" - }, - { - "indexed": false, - "internalType": "uint256", - "name": "val", - "type": "uint256" - } - ], - "name": "log_named_uint", - "type": "event" - }, - { - "anonymous": false, - "inputs": [ - { - "indexed": false, - "internalType": "string", - "name": "", - "type": "string" - } - ], - "name": "log_string", - "type": "event" - }, - { - "anonymous": false, - "inputs": [ - { - "indexed": false, - "internalType": "uint256", - "name": "", - "type": "uint256" - } - ], - "name": "log_uint", - "type": "event" - }, - { - "anonymous": false, - "inputs": [ - { - "indexed": false, - "internalType": "bytes", - "name": "", - "type": "bytes" - } - ], - "name": "logs", - "type": "event" - }, - { - "inputs": [], - "name": "IS_TEST", - "outputs": [ - { - "internalType": "bool", - "name": "", - "type": "bool" - } - ], - "stateMutability": "view", - "type": "function" - }, - { - "inputs": [], - "name": "failed", - "outputs": [ - { - "internalType": "bool", - "name": "", - "type": "bool" - } - ], - "stateMutability": "nonpayable", - "type": "function" - } - ], - "bytecode": { - "object": "0x60806040526000805460ff1916600117905534801561001d57600080fd5b506102598061002d6000396000f3fe608060405234801561001057600080fd5b50600436106100365760003560e01c8063ba414fa61461003b578063fa7626d414610057575b600080fd5b610043610064565b604051901515815260200160405180910390f35b6000546100439060ff1681565b60008054610100900460ff16156100845750600054610100900460ff1690565b6000737109709ecfa91a80626ff3989d68f67f5b1dd12d3b1561018a5760408051737109709ecfa91a80626ff3989d68f67f5b1dd12d602082018190526519985a5b195960d21b82840152825180830384018152606083019093526000929091610112917f667f9d70ca411d70ead50d8d5c22070dafc36ad75f3dcf5e7237b22ade9aecc4916080016101ca565b60408051601f198184030181529082905261012c916101ee565b6000604051808303816000865af19150503d8060008114610169576040519150601f19603f3d011682016040523d82523d6000602084013e61016e565b606091505b50915050808060200190518101906101869190610201565b9150505b919050565b6000815160005b818110156101b05760208185018101518683015201610196565b818111156101bf576000828601525b509290920192915050565b6001600160e01b03198316815260006101e6600483018461018f565b949350505050565b60006101fa828461018f565b9392505050565b60006020828403121561021357600080fd5b815180151581146101fa57600080fdfea26469706673582212209903bb2fddfa532ee4b4e29831642b71475393b3112c48b4f8d41c695c6006a164736f6c634300080d0033", - "sourceMap": "715:15435:3:-:0;;;1572:26;;;-1:-1:-1;;1572:26:3;1594:4;1572:26;;;715:15435;;;;;;;;;;;;;;;;", - "linkReferences": {} - }, - "deployedBytecode": { - "object": "0x608060405234801561001057600080fd5b50600436106100365760003560e01c8063ba414fa61461003b578063fa7626d414610057575b600080fd5b610043610064565b604051901515815260200160405180910390f35b6000546100439060ff1681565b60008054610100900460ff16156100845750600054610100900460ff1690565b6000737109709ecfa91a80626ff3989d68f67f5b1dd12d3b1561018a5760408051737109709ecfa91a80626ff3989d68f67f5b1dd12d602082018190526519985a5b195960d21b82840152825180830384018152606083019093526000929091610112917f667f9d70ca411d70ead50d8d5c22070dafc36ad75f3dcf5e7237b22ade9aecc4916080016101ca565b60408051601f198184030181529082905261012c916101ee565b6000604051808303816000865af19150503d8060008114610169576040519150601f19603f3d011682016040523d82523d6000602084013e61016e565b606091505b50915050808060200190518101906101869190610201565b9150505b919050565b6000815160005b818110156101b05760208185018101518683015201610196565b818111156101bf576000828601525b509290920192915050565b6001600160e01b03198316815260006101e6600483018461018f565b949350505050565b60006101fa828461018f565b9392505050565b60006020828403121561021357600080fd5b815180151581146101fa57600080fdfea26469706673582212209903bb2fddfa532ee4b4e29831642b71475393b3112c48b4f8d41c695c6006a164736f6c634300080d0033", - "sourceMap": "715:15435:3:-:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;1819:584;;;:::i;:::-;;;179:14:12;;172:22;154:41;;142:2;127:18;1819:584:3;;;;;;;1572:26;;;;;;;;;1819:584;1853:4;1873:7;;;;;;;1869:528;;;-1:-1:-1;1903:7:3;;;;;;;;1819:584::o;1869:528::-;1941:17;2990:42;2978:55;3059:16;1980:374;;2196:43;;;1671:64;2196:43;;;380:51:12;;;-1:-1:-1;;;447:18:12;;;440:34;2196:43:3;;;;;;;;;353:18:12;;;2196:43:3;;;-1:-1:-1;;1671:64:3;;2086:175;;2135:34;;2086:175;;;:::i;:::-;;;;-1:-1:-1;;2086:175:3;;;;;;;;;;2047:232;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;2020:259;;;2323:7;2312:27;;;;;;;;;;;;:::i;:::-;2297:42;;2002:352;1980:374;2374:12;1819:584;-1:-1:-1;1819:584:3:o;485:336:12:-;526:3;564:5;558:12;588:1;598:128;612:6;609:1;606:13;598:128;;;709:4;694:13;;;690:24;;684:31;671:11;;;664:52;627:12;598:128;;;744:6;741:1;738:13;735:48;;;779:1;770:6;765:3;761:16;754:27;735:48;-1:-1:-1;799:16:12;;;;;485:336;-1:-1:-1;;485:336:12:o;826:278::-;-1:-1:-1;;;;;;1011:33:12;;999:46;;981:3;1061:37;1095:1;1086:11;;1078:6;1061:37;:::i;:::-;1054:44;826:278;-1:-1:-1;;;;826:278:12:o;1109:189::-;1238:3;1263:29;1288:3;1280:6;1263:29;:::i;:::-;1256:36;1109:189;-1:-1:-1;;;1109:189:12:o;1303:277::-;1370:6;1423:2;1411:9;1402:7;1398:23;1394:32;1391:52;;;1439:1;1436;1429:12;1391:52;1471:9;1465:16;1524:5;1517:13;1510:21;1503:5;1500:32;1490:60;;1546:1;1543;1536:12", - "linkReferences": {} - }, - "ast": { - "absolutePath": "/mnt/c/Users/PizzaHi5/Documents/CreatorDAO/CreatorDAO/lib/forge-std/lib/ds-test/src/test.sol", - "id": 1845, - "exportedSymbols": { - "DSTest": [ - 1844 - ] - }, - "nodeType": "SourceUnit", - "src": "689:15462:3", - "nodes": [ - { - "id": 59, - "nodeType": "PragmaDirective", - "src": "689:24:3", - "literals": [ - "solidity", - ">=", - "0.5", - ".0" - ] - }, - { - "id": 1844, - "nodeType": "ContractDefinition", - "src": "715:15435:3", - "nodes": [ - { - "id": 63, - "nodeType": "EventDefinition", - "src": "737:38:3", - "anonymous": false, - "eventSelector": "41304facd9323d75b11bcdd609cb38effffdb05710f7caf0e9b16c6d9d709f50", - "name": "log", - "nameLocation": "743:3:3", - "parameters": { - "id": 62, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 61, - "indexed": false, - "mutability": "mutable", - "name": "", - "nameLocation": "-1:-1:-1", - "nodeType": "VariableDeclaration", - "scope": 63, - "src": "767:6:3", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string" - }, - "typeName": { - "id": 60, - "name": "string", - "nodeType": "ElementaryTypeName", - "src": "767:6:3", - "typeDescriptions": { - "typeIdentifier": "t_string_storage_ptr", - "typeString": "string" - } - }, - "visibility": "internal" - } - ], - "src": "766:8:3" - } - }, - { - "id": 67, - "nodeType": "EventDefinition", - "src": "780:37:3", - "anonymous": false, - "eventSelector": "e7950ede0394b9f2ce4a5a1bf5a7e1852411f7e6661b4308c913c4bfd11027e4", - "name": "logs", - "nameLocation": "786:4:3", - "parameters": { - "id": 66, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 65, - "indexed": false, - "mutability": "mutable", - "name": "", - "nameLocation": "-1:-1:-1", - "nodeType": "VariableDeclaration", - "scope": 67, - "src": "810:5:3", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes" - }, - "typeName": { - "id": 64, - "name": "bytes", - "nodeType": "ElementaryTypeName", - "src": "810:5:3", - "typeDescriptions": { - "typeIdentifier": "t_bytes_storage_ptr", - "typeString": "bytes" - } - }, - "visibility": "internal" - } - ], - "src": "809:7:3" - } - }, - { - "id": 71, - "nodeType": "EventDefinition", - "src": "823:39:3", - "anonymous": false, - "eventSelector": "7ae74c527414ae135fd97047b12921a5ec3911b804197855d67e25c7b75ee6f3", - "name": "log_address", - "nameLocation": "829:11:3", - "parameters": { - "id": 70, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 69, - "indexed": false, - "mutability": "mutable", - "name": "", - "nameLocation": "-1:-1:-1", - "nodeType": "VariableDeclaration", - "scope": 71, - "src": "853:7:3", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "typeName": { - "id": 68, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "853:7:3", - "stateMutability": "nonpayable", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "visibility": "internal" - } - ], - "src": "852:9:3" - } - }, - { - "id": 75, - "nodeType": "EventDefinition", - "src": "867:39:3", - "anonymous": false, - "eventSelector": "e81699b85113eea1c73e10588b2b035e55893369632173afd43feb192fac64e3", - "name": "log_bytes32", - "nameLocation": "873:11:3", - "parameters": { - "id": 74, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 73, - "indexed": false, - "mutability": "mutable", - "name": "", - "nameLocation": "-1:-1:-1", - "nodeType": "VariableDeclaration", - "scope": 75, - "src": "897:7:3", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - }, - "typeName": { - "id": 72, - "name": "bytes32", - "nodeType": "ElementaryTypeName", - "src": "897:7:3", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - }, - "visibility": "internal" - } - ], - "src": "896:9:3" - } - }, - { - "id": 79, - "nodeType": "EventDefinition", - "src": "911:35:3", - "anonymous": false, - "eventSelector": "0eb5d52624c8d28ada9fc55a8c502ed5aa3fbe2fb6e91b71b5f376882b1d2fb8", - "name": "log_int", - "nameLocation": "917:7:3", - "parameters": { - "id": 78, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 77, - "indexed": false, - "mutability": "mutable", - "name": "", - "nameLocation": "-1:-1:-1", - "nodeType": "VariableDeclaration", - "scope": 79, - "src": "941:3:3", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_int256", - "typeString": "int256" - }, - "typeName": { - "id": 76, - "name": "int", - "nodeType": "ElementaryTypeName", - "src": "941:3:3", - "typeDescriptions": { - "typeIdentifier": "t_int256", - "typeString": "int256" - } - }, - "visibility": "internal" - } - ], - "src": "940:5:3" - } - }, - { - "id": 83, - "nodeType": "EventDefinition", - "src": "951:36:3", - "anonymous": false, - "eventSelector": "2cab9790510fd8bdfbd2115288db33fec66691d476efc5427cfd4c0969301755", - "name": "log_uint", - "nameLocation": "957:8:3", - "parameters": { - "id": 82, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 81, - "indexed": false, - "mutability": "mutable", - "name": "", - "nameLocation": "-1:-1:-1", - "nodeType": "VariableDeclaration", - "scope": 83, - "src": "981:4:3", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 80, - "name": "uint", - "nodeType": "ElementaryTypeName", - "src": "981:4:3", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "visibility": "internal" - } - ], - "src": "980:6:3" - } - }, - { - "id": 87, - "nodeType": "EventDefinition", - "src": "992:37:3", - "anonymous": false, - "eventSelector": "23b62ad0584d24a75f0bf3560391ef5659ec6db1269c56e11aa241d637f19b20", - "name": "log_bytes", - "nameLocation": "998:9:3", - "parameters": { - "id": 86, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 85, - "indexed": false, - "mutability": "mutable", - "name": "", - "nameLocation": "-1:-1:-1", - "nodeType": "VariableDeclaration", - "scope": 87, - "src": "1022:5:3", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes" - }, - "typeName": { - "id": 84, - "name": "bytes", - "nodeType": "ElementaryTypeName", - "src": "1022:5:3", - "typeDescriptions": { - "typeIdentifier": "t_bytes_storage_ptr", - "typeString": "bytes" - } - }, - "visibility": "internal" - } - ], - "src": "1021:7:3" - } - }, - { - "id": 91, - "nodeType": "EventDefinition", - "src": "1034:38:3", - "anonymous": false, - "eventSelector": "0b2e13ff20ac7b474198655583edf70dedd2c1dc980e329c4fbb2fc0748b796b", - "name": "log_string", - "nameLocation": "1040:10:3", - "parameters": { - "id": 90, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 89, - "indexed": false, - "mutability": "mutable", - "name": "", - "nameLocation": "-1:-1:-1", - "nodeType": "VariableDeclaration", - "scope": 91, - "src": "1064:6:3", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string" - }, - "typeName": { - "id": 88, - "name": "string", - "nodeType": "ElementaryTypeName", - "src": "1064:6:3", - "typeDescriptions": { - "typeIdentifier": "t_string_storage_ptr", - "typeString": "string" - } - }, - "visibility": "internal" - } - ], - "src": "1063:8:3" - } - }, - { - "id": 97, - "nodeType": "EventDefinition", - "src": "1078:55:3", - "anonymous": false, - "eventSelector": "9c4e8541ca8f0dc1c413f9108f66d82d3cecb1bddbce437a61caa3175c4cc96f", - "name": "log_named_address", - "nameLocation": "1084:17:3", - "parameters": { - "id": 96, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 93, - "indexed": false, - "mutability": "mutable", - "name": "key", - "nameLocation": "1115:3:3", - "nodeType": "VariableDeclaration", - "scope": 97, - "src": "1108:10:3", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string" - }, - "typeName": { - "id": 92, - "name": "string", - "nodeType": "ElementaryTypeName", - "src": "1108:6:3", - "typeDescriptions": { - "typeIdentifier": "t_string_storage_ptr", - "typeString": "string" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 95, - "indexed": false, - "mutability": "mutable", - "name": "val", - "nameLocation": "1128:3:3", - "nodeType": "VariableDeclaration", - "scope": 97, - "src": "1120:11:3", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "typeName": { - "id": 94, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "1120:7:3", - "stateMutability": "nonpayable", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "visibility": "internal" - } - ], - "src": "1107:25:3" - } - }, - { - "id": 103, - "nodeType": "EventDefinition", - "src": "1138:55:3", - "anonymous": false, - "eventSelector": "afb795c9c61e4fe7468c386f925d7a5429ecad9c0495ddb8d38d690614d32f99", - "name": "log_named_bytes32", - "nameLocation": "1144:17:3", - "parameters": { - "id": 102, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 99, - "indexed": false, - "mutability": "mutable", - "name": "key", - "nameLocation": "1175:3:3", - "nodeType": "VariableDeclaration", - "scope": 103, - "src": "1168:10:3", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string" - }, - "typeName": { - "id": 98, - "name": "string", - "nodeType": "ElementaryTypeName", - "src": "1168:6:3", - "typeDescriptions": { - "typeIdentifier": "t_string_storage_ptr", - "typeString": "string" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 101, - "indexed": false, - "mutability": "mutable", - "name": "val", - "nameLocation": "1188:3:3", - "nodeType": "VariableDeclaration", - "scope": 103, - "src": "1180:11:3", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - }, - "typeName": { - "id": 100, - "name": "bytes32", - "nodeType": "ElementaryTypeName", - "src": "1180:7:3", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - }, - "visibility": "internal" - } - ], - "src": "1167:25:3" - } - }, - { - "id": 111, - "nodeType": "EventDefinition", - "src": "1198:66:3", - "anonymous": false, - "eventSelector": "5da6ce9d51151ba10c09a559ef24d520b9dac5c5b8810ae8434e4d0d86411a95", - "name": "log_named_decimal_int", - "nameLocation": "1204:21:3", - "parameters": { - "id": 110, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 105, - "indexed": false, - "mutability": "mutable", - "name": "key", - "nameLocation": "1235:3:3", - "nodeType": "VariableDeclaration", - "scope": 111, - "src": "1228:10:3", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string" - }, - "typeName": { - "id": 104, - "name": "string", - "nodeType": "ElementaryTypeName", - "src": "1228:6:3", - "typeDescriptions": { - "typeIdentifier": "t_string_storage_ptr", - "typeString": "string" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 107, - "indexed": false, - "mutability": "mutable", - "name": "val", - "nameLocation": "1244:3:3", - "nodeType": "VariableDeclaration", - "scope": 111, - "src": "1240:7:3", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_int256", - "typeString": "int256" - }, - "typeName": { - "id": 106, - "name": "int", - "nodeType": "ElementaryTypeName", - "src": "1240:3:3", - "typeDescriptions": { - "typeIdentifier": "t_int256", - "typeString": "int256" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 109, - "indexed": false, - "mutability": "mutable", - "name": "decimals", - "nameLocation": "1254:8:3", - "nodeType": "VariableDeclaration", - "scope": 111, - "src": "1249:13:3", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 108, - "name": "uint", - "nodeType": "ElementaryTypeName", - "src": "1249:4:3", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "visibility": "internal" - } - ], - "src": "1227:36:3" - } - }, - { - "id": 119, - "nodeType": "EventDefinition", - "src": "1269:67:3", - "anonymous": false, - "eventSelector": "eb8ba43ced7537421946bd43e828b8b2b8428927aa8f801c13d934bf11aca57b", - "name": "log_named_decimal_uint", - "nameLocation": "1275:22:3", - "parameters": { - "id": 118, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 113, - "indexed": false, - "mutability": "mutable", - "name": "key", - "nameLocation": "1306:3:3", - "nodeType": "VariableDeclaration", - "scope": 119, - "src": "1299:10:3", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string" - }, - "typeName": { - "id": 112, - "name": "string", - "nodeType": "ElementaryTypeName", - "src": "1299:6:3", - "typeDescriptions": { - "typeIdentifier": "t_string_storage_ptr", - "typeString": "string" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 115, - "indexed": false, - "mutability": "mutable", - "name": "val", - "nameLocation": "1316:3:3", - "nodeType": "VariableDeclaration", - "scope": 119, - "src": "1311:8:3", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 114, - "name": "uint", - "nodeType": "ElementaryTypeName", - "src": "1311:4:3", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 117, - "indexed": false, - "mutability": "mutable", - "name": "decimals", - "nameLocation": "1326:8:3", - "nodeType": "VariableDeclaration", - "scope": 119, - "src": "1321:13:3", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 116, - "name": "uint", - "nodeType": "ElementaryTypeName", - "src": "1321:4:3", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "visibility": "internal" - } - ], - "src": "1298:37:3" - } - }, - { - "id": 125, - "nodeType": "EventDefinition", - "src": "1341:51:3", - "anonymous": false, - "eventSelector": "2fe632779174374378442a8e978bccfbdcc1d6b2b0d81f7e8eb776ab2286f168", - "name": "log_named_int", - "nameLocation": "1347:13:3", - "parameters": { - "id": 124, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 121, - "indexed": false, - "mutability": "mutable", - "name": "key", - "nameLocation": "1378:3:3", - "nodeType": "VariableDeclaration", - "scope": 125, - "src": "1371:10:3", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string" - }, - "typeName": { - "id": 120, - "name": "string", - "nodeType": "ElementaryTypeName", - "src": "1371:6:3", - "typeDescriptions": { - "typeIdentifier": "t_string_storage_ptr", - "typeString": "string" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 123, - "indexed": false, - "mutability": "mutable", - "name": "val", - "nameLocation": "1387:3:3", - "nodeType": "VariableDeclaration", - "scope": 125, - "src": "1383:7:3", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_int256", - "typeString": "int256" - }, - "typeName": { - "id": 122, - "name": "int", - "nodeType": "ElementaryTypeName", - "src": "1383:3:3", - "typeDescriptions": { - "typeIdentifier": "t_int256", - "typeString": "int256" - } - }, - "visibility": "internal" - } - ], - "src": "1370:21:3" - } - }, - { - "id": 131, - "nodeType": "EventDefinition", - "src": "1397:52:3", - "anonymous": false, - "eventSelector": "b2de2fbe801a0df6c0cbddfd448ba3c41d48a040ca35c56c8196ef0fcae721a8", - "name": "log_named_uint", - "nameLocation": "1403:14:3", - "parameters": { - "id": 130, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 127, - "indexed": false, - "mutability": "mutable", - "name": "key", - "nameLocation": "1434:3:3", - "nodeType": "VariableDeclaration", - "scope": 131, - "src": "1427:10:3", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string" - }, - "typeName": { - "id": 126, - "name": "string", - "nodeType": "ElementaryTypeName", - "src": "1427:6:3", - "typeDescriptions": { - "typeIdentifier": "t_string_storage_ptr", - "typeString": "string" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 129, - "indexed": false, - "mutability": "mutable", - "name": "val", - "nameLocation": "1444:3:3", - "nodeType": "VariableDeclaration", - "scope": 131, - "src": "1439:8:3", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 128, - "name": "uint", - "nodeType": "ElementaryTypeName", - "src": "1439:4:3", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "visibility": "internal" - } - ], - "src": "1426:22:3" - } - }, - { - "id": 137, - "nodeType": "EventDefinition", - "src": "1454:53:3", - "anonymous": false, - "eventSelector": "d26e16cad4548705e4c9e2d94f98ee91c289085ee425594fd5635fa2964ccf18", - "name": "log_named_bytes", - "nameLocation": "1460:15:3", - "parameters": { - "id": 136, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 133, - "indexed": false, - "mutability": "mutable", - "name": "key", - "nameLocation": "1491:3:3", - "nodeType": "VariableDeclaration", - "scope": 137, - "src": "1484:10:3", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string" - }, - "typeName": { - "id": 132, - "name": "string", - "nodeType": "ElementaryTypeName", - "src": "1484:6:3", - "typeDescriptions": { - "typeIdentifier": "t_string_storage_ptr", - "typeString": "string" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 135, - "indexed": false, - "mutability": "mutable", - "name": "val", - "nameLocation": "1502:3:3", - "nodeType": "VariableDeclaration", - "scope": 137, - "src": "1496:9:3", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes" - }, - "typeName": { - "id": 134, - "name": "bytes", - "nodeType": "ElementaryTypeName", - "src": "1496:5:3", - "typeDescriptions": { - "typeIdentifier": "t_bytes_storage_ptr", - "typeString": "bytes" - } - }, - "visibility": "internal" - } - ], - "src": "1483:23:3" - } - }, - { - "id": 143, - "nodeType": "EventDefinition", - "src": "1512:54:3", - "anonymous": false, - "eventSelector": "280f4446b28a1372417dda658d30b95b2992b12ac9c7f378535f29a97acf3583", - "name": "log_named_string", - "nameLocation": "1518:16:3", - "parameters": { - "id": 142, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 139, - "indexed": false, - "mutability": "mutable", - "name": "key", - "nameLocation": "1549:3:3", - "nodeType": "VariableDeclaration", - "scope": 143, - "src": "1542:10:3", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string" - }, - "typeName": { - "id": 138, - "name": "string", - "nodeType": "ElementaryTypeName", - "src": "1542:6:3", - "typeDescriptions": { - "typeIdentifier": "t_string_storage_ptr", - "typeString": "string" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 141, - "indexed": false, - "mutability": "mutable", - "name": "val", - "nameLocation": "1561:3:3", - "nodeType": "VariableDeclaration", - "scope": 143, - "src": "1554:10:3", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string" - }, - "typeName": { - "id": 140, - "name": "string", - "nodeType": "ElementaryTypeName", - "src": "1554:6:3", - "typeDescriptions": { - "typeIdentifier": "t_string_storage_ptr", - "typeString": "string" - } - }, - "visibility": "internal" - } - ], - "src": "1541:24:3" - } - }, - { - "id": 146, - "nodeType": "VariableDeclaration", - "src": "1572:26:3", - "constant": false, - "functionSelector": "fa7626d4", - "mutability": "mutable", - "name": "IS_TEST", - "nameLocation": "1584:7:3", - "scope": 1844, - "stateVariable": true, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - "typeName": { - "id": 144, - "name": "bool", - "nodeType": "ElementaryTypeName", - "src": "1572:4:3", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "value": { - "hexValue": "74727565", - "id": 145, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "bool", - "lValueRequested": false, - "nodeType": "Literal", - "src": "1594:4:3", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - "value": "true" - }, - "visibility": "public" - }, - { - "id": 148, - "nodeType": "VariableDeclaration", - "src": "1604:20:3", - "constant": false, - "mutability": "mutable", - "name": "_failed", - "nameLocation": "1617:7:3", - "scope": 1844, - "stateVariable": true, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - "typeName": { - "id": 147, - "name": "bool", - "nodeType": "ElementaryTypeName", - "src": "1604:4:3", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "visibility": "private" - }, - { - "id": 165, - "nodeType": "VariableDeclaration", - "src": "1631:104:3", - "constant": true, - "mutability": "constant", - "name": "HEVM_ADDRESS", - "nameLocation": "1648:12:3", - "scope": 1844, - "stateVariable": true, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "typeName": { - "id": 149, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "1631:7:3", - "stateMutability": "nonpayable", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "value": { - "arguments": [ - { - "arguments": [ - { - "arguments": [ - { - "arguments": [ - { - "arguments": [ - { - "hexValue": "6865766d20636865617420636f6465", - "id": 159, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "string", - "lValueRequested": false, - "nodeType": "Literal", - "src": "1713:17:3", - "typeDescriptions": { - "typeIdentifier": "t_stringliteral_885cb69240a935d632d79c317109709ecfa91a80626ff3989d68f67f5b1dd12d", - "typeString": "literal_string \"hevm cheat code\"" - }, - "value": "hevm cheat code" - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_stringliteral_885cb69240a935d632d79c317109709ecfa91a80626ff3989d68f67f5b1dd12d", - "typeString": "literal_string \"hevm cheat code\"" - } - ], - "id": 158, - "name": "keccak256", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": -8, - "src": "1703:9:3", - "typeDescriptions": { - "typeIdentifier": "t_function_keccak256_pure$_t_bytes_memory_ptr_$returns$_t_bytes32_$", - "typeString": "function (bytes memory) pure returns (bytes32)" - } - }, - "id": 160, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "1703:28:3", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - ], - "id": 157, - "isConstant": false, - "isLValue": false, - "isPure": true, - "lValueRequested": false, - "nodeType": "ElementaryTypeNameExpression", - "src": "1695:7:3", - "typeDescriptions": { - "typeIdentifier": "t_type$_t_uint256_$", - "typeString": "type(uint256)" - }, - "typeName": { - "id": 156, - "name": "uint256", - "nodeType": "ElementaryTypeName", - "src": "1695:7:3", - "typeDescriptions": {} - } - }, - "id": 161, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "typeConversion", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "1695:37:3", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - ], - "id": 155, - "isConstant": false, - "isLValue": false, - "isPure": true, - "lValueRequested": false, - "nodeType": "ElementaryTypeNameExpression", - "src": "1687:7:3", - "typeDescriptions": { - "typeIdentifier": "t_type$_t_uint160_$", - "typeString": "type(uint160)" - }, - "typeName": { - "id": 154, - "name": "uint160", - "nodeType": "ElementaryTypeName", - "src": "1687:7:3", - "typeDescriptions": {} - } - }, - "id": 162, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "typeConversion", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "1687:46:3", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_uint160", - "typeString": "uint160" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_uint160", - "typeString": "uint160" - } - ], - "id": 153, - "isConstant": false, - "isLValue": false, - "isPure": true, - "lValueRequested": false, - "nodeType": "ElementaryTypeNameExpression", - "src": "1679:7:3", - "typeDescriptions": { - "typeIdentifier": "t_type$_t_bytes20_$", - "typeString": "type(bytes20)" - }, - "typeName": { - "id": 152, - "name": "bytes20", - "nodeType": "ElementaryTypeName", - "src": "1679:7:3", - "typeDescriptions": {} - } - }, - "id": 163, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "typeConversion", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "1679:55:3", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_bytes20", - "typeString": "bytes20" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_bytes20", - "typeString": "bytes20" - } - ], - "id": 151, - "isConstant": false, - "isLValue": false, - "isPure": true, - "lValueRequested": false, - "nodeType": "ElementaryTypeNameExpression", - "src": "1671:7:3", - "typeDescriptions": { - "typeIdentifier": "t_type$_t_address_$", - "typeString": "type(address)" - }, - "typeName": { - "id": 150, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "1671:7:3", - "typeDescriptions": {} - } - }, - "id": 164, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "typeConversion", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "1671:64:3", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "visibility": "internal" - }, - { - "id": 169, - "nodeType": "ModifierDefinition", - "src": "1742:27:3", - "body": { - "id": 168, - "nodeType": "Block", - "src": "1763:6:3", - "statements": [ - { - "id": 167, - "nodeType": "PlaceholderStatement", - "src": "1765:1:3" - } - ] - }, - "name": "mayRevert", - "nameLocation": "1751:9:3", - "parameters": { - "id": 166, - "nodeType": "ParameterList", - "parameters": [], - "src": "1760:2:3" - }, - "virtual": false, - "visibility": "internal" - }, - { - "id": 175, - "nodeType": "ModifierDefinition", - "src": "1774:39:3", - "body": { - "id": 174, - "nodeType": "Block", - "src": "1807:6:3", - "statements": [ - { - "id": 173, - "nodeType": "PlaceholderStatement", - "src": "1809:1:3" - } - ] - }, - "name": "testopts", - "nameLocation": "1783:8:3", - "parameters": { - "id": 172, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 171, - "mutability": "mutable", - "name": "", - "nameLocation": "-1:-1:-1", - "nodeType": "VariableDeclaration", - "scope": 175, - "src": "1792:13:3", - "stateVariable": false, - "storageLocation": "memory", - "typeDescriptions": { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string" - }, - "typeName": { - "id": 170, - "name": "string", - "nodeType": "ElementaryTypeName", - "src": "1792:6:3", - "typeDescriptions": { - "typeIdentifier": "t_string_storage_ptr", - "typeString": "string" - } - }, - "visibility": "internal" - } - ], - "src": "1791:15:3" - }, - "virtual": false, - "visibility": "internal" - }, - { - "id": 230, - "nodeType": "FunctionDefinition", - "src": "1819:584:3", - "body": { - "id": 229, - "nodeType": "Block", - "src": "1859:544:3", - "statements": [ - { - "condition": { - "id": 180, - "name": "_failed", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 148, - "src": "1873:7:3", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "falseBody": { - "id": 227, - "nodeType": "Block", - "src": "1927:470:3", - "statements": [ - { - "assignments": [ - 185 - ], - "declarations": [ - { - "constant": false, - "id": 185, - "mutability": "mutable", - "name": "globalFailed", - "nameLocation": "1946:12:3", - "nodeType": "VariableDeclaration", - "scope": 227, - "src": "1941:17:3", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - "typeName": { - "id": 184, - "name": "bool", - "nodeType": "ElementaryTypeName", - "src": "1941:4:3", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "visibility": "internal" - } - ], - "id": 187, - "initialValue": { - "hexValue": "66616c7365", - "id": 186, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "bool", - "lValueRequested": false, - "nodeType": "Literal", - "src": "1961:5:3", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - "value": "false" - }, - "nodeType": "VariableDeclarationStatement", - "src": "1941:25:3" - }, - { - "condition": { - "arguments": [], - "expression": { - "argumentTypes": [], - "id": 188, - "name": "hasHEVMContext", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 289, - "src": "1984:14:3", - "typeDescriptions": { - "typeIdentifier": "t_function_internal_view$__$returns$_t_bool_$", - "typeString": "function () view returns (bool)" - } - }, - "id": 189, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "1984:16:3", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "id": 224, - "nodeType": "IfStatement", - "src": "1980:374:3", - "trueBody": { - "id": 223, - "nodeType": "Block", - "src": "2002:352:3", - "statements": [ - { - "assignments": [ - null, - 191 - ], - "declarations": [ - null, - { - "constant": false, - "id": 191, - "mutability": "mutable", - "name": "retdata", - "nameLocation": "2036:7:3", - "nodeType": "VariableDeclaration", - "scope": 223, - "src": "2023:20:3", - "stateVariable": false, - "storageLocation": "memory", - "typeDescriptions": { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes" - }, - "typeName": { - "id": 190, - "name": "bytes", - "nodeType": "ElementaryTypeName", - "src": "2023:5:3", - "typeDescriptions": { - "typeIdentifier": "t_bytes_storage_ptr", - "typeString": "bytes" - } - }, - "visibility": "internal" - } - ], - "id": 212, - "initialValue": { - "arguments": [ - { - "arguments": [ - { - "arguments": [ - { - "arguments": [ - { - "hexValue": "6c6f616428616464726573732c6279746573333229", - "id": 199, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "string", - "lValueRequested": false, - "nodeType": "Literal", - "src": "2145:23:3", - "typeDescriptions": { - "typeIdentifier": "t_stringliteral_667f9d70ca411d70ead50d8d5c22070dafc36ad75f3dcf5e7237b22ade9aecc4", - "typeString": "literal_string \"load(address,bytes32)\"" - }, - "value": "load(address,bytes32)" - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_stringliteral_667f9d70ca411d70ead50d8d5c22070dafc36ad75f3dcf5e7237b22ade9aecc4", - "typeString": "literal_string \"load(address,bytes32)\"" - } - ], - "id": 198, - "name": "keccak256", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": -8, - "src": "2135:9:3", - "typeDescriptions": { - "typeIdentifier": "t_function_keccak256_pure$_t_bytes_memory_ptr_$returns$_t_bytes32_$", - "typeString": "function (bytes memory) pure returns (bytes32)" - } - }, - "id": 200, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "2135:34:3", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - ], - "id": 197, - "isConstant": false, - "isLValue": false, - "isPure": true, - "lValueRequested": false, - "nodeType": "ElementaryTypeNameExpression", - "src": "2128:6:3", - "typeDescriptions": { - "typeIdentifier": "t_type$_t_bytes4_$", - "typeString": "type(bytes4)" - }, - "typeName": { - "id": 196, - "name": "bytes4", - "nodeType": "ElementaryTypeName", - "src": "2128:6:3", - "typeDescriptions": {} - } - }, - "id": 201, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "typeConversion", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "2128:42:3", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_bytes4", - "typeString": "bytes4" - } - }, - { - "arguments": [ - { - "id": 204, - "name": "HEVM_ADDRESS", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 165, - "src": "2207:12:3", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - { - "arguments": [ - { - "hexValue": "6661696c6564", - "id": 207, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "string", - "lValueRequested": false, - "nodeType": "Literal", - "src": "2229:8:3", - "typeDescriptions": { - "typeIdentifier": "t_stringliteral_8f44d68b1a26169d304522fa2f95aa938d98120d628d1db5726120ca84e53b43", - "typeString": "literal_string \"failed\"" - }, - "value": "failed" - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_stringliteral_8f44d68b1a26169d304522fa2f95aa938d98120d628d1db5726120ca84e53b43", - "typeString": "literal_string \"failed\"" - } - ], - "id": 206, - "isConstant": false, - "isLValue": false, - "isPure": true, - "lValueRequested": false, - "nodeType": "ElementaryTypeNameExpression", - "src": "2221:7:3", - "typeDescriptions": { - "typeIdentifier": "t_type$_t_bytes32_$", - "typeString": "type(bytes32)" - }, - "typeName": { - "id": 205, - "name": "bytes32", - "nodeType": "ElementaryTypeName", - "src": "2221:7:3", - "typeDescriptions": {} - } - }, - "id": 208, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "typeConversion", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "2221:17:3", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_address", - "typeString": "address" - }, - { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - ], - "expression": { - "id": 202, - "name": "abi", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": -1, - "src": "2196:3:3", - "typeDescriptions": { - "typeIdentifier": "t_magic_abi", - "typeString": "abi" - } - }, - "id": 203, - "isConstant": false, - "isLValue": false, - "isPure": true, - "lValueRequested": false, - "memberName": "encode", - "nodeType": "MemberAccess", - "src": "2196:10:3", - "typeDescriptions": { - "typeIdentifier": "t_function_abiencode_pure$__$returns$_t_bytes_memory_ptr_$", - "typeString": "function () pure returns (bytes memory)" - } - }, - "id": 209, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "2196:43:3", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes memory" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_bytes4", - "typeString": "bytes4" - }, - { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes memory" - } - ], - "expression": { - "id": 194, - "name": "abi", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": -1, - "src": "2086:3:3", - "typeDescriptions": { - "typeIdentifier": "t_magic_abi", - "typeString": "abi" - } - }, - "id": 195, - "isConstant": false, - "isLValue": false, - "isPure": true, - "lValueRequested": false, - "memberName": "encodePacked", - "nodeType": "MemberAccess", - "src": "2086:16:3", - "typeDescriptions": { - "typeIdentifier": "t_function_abiencodepacked_pure$__$returns$_t_bytes_memory_ptr_$", - "typeString": "function () pure returns (bytes memory)" - } - }, - "id": 210, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "2086:175:3", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes memory" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes memory" - } - ], - "expression": { - "id": 192, - "name": "HEVM_ADDRESS", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 165, - "src": "2047:12:3", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "id": 193, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberName": "call", - "nodeType": "MemberAccess", - "src": "2047:17:3", - "typeDescriptions": { - "typeIdentifier": "t_function_barecall_payable$_t_bytes_memory_ptr_$returns$_t_bool_$_t_bytes_memory_ptr_$", - "typeString": "function (bytes memory) payable returns (bool,bytes memory)" - } - }, - "id": 211, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "2047:232:3", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_tuple$_t_bool_$_t_bytes_memory_ptr_$", - "typeString": "tuple(bool,bytes memory)" - } - }, - "nodeType": "VariableDeclarationStatement", - "src": "2020:259:3" - }, - { - "expression": { - "id": 221, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftHandSide": { - "id": 213, - "name": "globalFailed", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 185, - "src": "2297:12:3", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "nodeType": "Assignment", - "operator": "=", - "rightHandSide": { - "arguments": [ - { - "id": 216, - "name": "retdata", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 191, - "src": "2323:7:3", - "typeDescriptions": { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes memory" - } - }, - { - "components": [ - { - "id": 218, - "isConstant": false, - "isLValue": false, - "isPure": true, - "lValueRequested": false, - "nodeType": "ElementaryTypeNameExpression", - "src": "2333:4:3", - "typeDescriptions": { - "typeIdentifier": "t_type$_t_bool_$", - "typeString": "type(bool)" - }, - "typeName": { - "id": 217, - "name": "bool", - "nodeType": "ElementaryTypeName", - "src": "2333:4:3", - "typeDescriptions": {} - } - } - ], - "id": 219, - "isConstant": false, - "isInlineArray": false, - "isLValue": false, - "isPure": true, - "lValueRequested": false, - "nodeType": "TupleExpression", - "src": "2332:6:3", - "typeDescriptions": { - "typeIdentifier": "t_type$_t_bool_$", - "typeString": "type(bool)" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes memory" - }, - { - "typeIdentifier": "t_type$_t_bool_$", - "typeString": "type(bool)" - } - ], - "expression": { - "id": 214, - "name": "abi", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": -1, - "src": "2312:3:3", - "typeDescriptions": { - "typeIdentifier": "t_magic_abi", - "typeString": "abi" - } - }, - "id": 215, - "isConstant": false, - "isLValue": false, - "isPure": true, - "lValueRequested": false, - "memberName": "decode", - "nodeType": "MemberAccess", - "src": "2312:10:3", - "typeDescriptions": { - "typeIdentifier": "t_function_abidecode_pure$__$returns$__$", - "typeString": "function () pure" - } - }, - "id": 220, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "2312:27:3", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "src": "2297:42:3", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "id": 222, - "nodeType": "ExpressionStatement", - "src": "2297:42:3" - } - ] - } - }, - { - "expression": { - "id": 225, - "name": "globalFailed", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 185, - "src": "2374:12:3", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "functionReturnParameters": 179, - "id": 226, - "nodeType": "Return", - "src": "2367:19:3" - } - ] - }, - "id": 228, - "nodeType": "IfStatement", - "src": "1869:528:3", - "trueBody": { - "id": 183, - "nodeType": "Block", - "src": "1882:39:3", - "statements": [ - { - "expression": { - "id": 181, - "name": "_failed", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 148, - "src": "1903:7:3", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "functionReturnParameters": 179, - "id": 182, - "nodeType": "Return", - "src": "1896:14:3" - } - ] - } - } - ] - }, - "functionSelector": "ba414fa6", - "implemented": true, - "kind": "function", - "modifiers": [], - "name": "failed", - "nameLocation": "1828:6:3", - "parameters": { - "id": 176, - "nodeType": "ParameterList", - "parameters": [], - "src": "1834:2:3" - }, - "returnParameters": { - "id": 179, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 178, - "mutability": "mutable", - "name": "", - "nameLocation": "-1:-1:-1", - "nodeType": "VariableDeclaration", - "scope": 230, - "src": "1853:4:3", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - "typeName": { - "id": 177, - "name": "bool", - "nodeType": "ElementaryTypeName", - "src": "1853:4:3", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "visibility": "internal" - } - ], - "src": "1852:6:3" - }, - "scope": 1844, - "stateMutability": "nonpayable", - "virtual": false, - "visibility": "public" - }, - { - "id": 274, - "nodeType": "FunctionDefinition", - "src": "2410:424:3", - "body": { - "id": 273, - "nodeType": "Block", - "src": "2435:399:3", - "statements": [ - { - "condition": { - "arguments": [], - "expression": { - "argumentTypes": [], - "id": 233, - "name": "hasHEVMContext", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 289, - "src": "2449:14:3", - "typeDescriptions": { - "typeIdentifier": "t_function_internal_view$__$returns$_t_bool_$", - "typeString": "function () view returns (bool)" - } - }, - "id": 234, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "2449:16:3", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "id": 268, - "nodeType": "IfStatement", - "src": "2445:359:3", - "trueBody": { - "id": 267, - "nodeType": "Block", - "src": "2467:337:3", - "statements": [ - { - "assignments": [ - 236, - null - ], - "declarations": [ - { - "constant": false, - "id": 236, - "mutability": "mutable", - "name": "status", - "nameLocation": "2487:6:3", - "nodeType": "VariableDeclaration", - "scope": 267, - "src": "2482:11:3", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - "typeName": { - "id": 235, - "name": "bool", - "nodeType": "ElementaryTypeName", - "src": "2482:4:3", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "visibility": "internal" - }, - null - ], - "id": 264, - "initialValue": { - "arguments": [ - { - "arguments": [ - { - "arguments": [ - { - "arguments": [ - { - "hexValue": "73746f726528616464726573732c627974657333322c6279746573333229", - "id": 244, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "string", - "lValueRequested": false, - "nodeType": "Literal", - "src": "2589:32:3", - "typeDescriptions": { - "typeIdentifier": "t_stringliteral_70ca10bbd0dbfd9020a9f4b13402c16cb120705e0d1c0aeab10fa353ae586fc4", - "typeString": "literal_string \"store(address,bytes32,bytes32)\"" - }, - "value": "store(address,bytes32,bytes32)" - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_stringliteral_70ca10bbd0dbfd9020a9f4b13402c16cb120705e0d1c0aeab10fa353ae586fc4", - "typeString": "literal_string \"store(address,bytes32,bytes32)\"" - } - ], - "id": 243, - "name": "keccak256", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": -8, - "src": "2579:9:3", - "typeDescriptions": { - "typeIdentifier": "t_function_keccak256_pure$_t_bytes_memory_ptr_$returns$_t_bytes32_$", - "typeString": "function (bytes memory) pure returns (bytes32)" - } - }, - "id": 245, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "2579:43:3", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - ], - "id": 242, - "isConstant": false, - "isLValue": false, - "isPure": true, - "lValueRequested": false, - "nodeType": "ElementaryTypeNameExpression", - "src": "2572:6:3", - "typeDescriptions": { - "typeIdentifier": "t_type$_t_bytes4_$", - "typeString": "type(bytes4)" - }, - "typeName": { - "id": 241, - "name": "bytes4", - "nodeType": "ElementaryTypeName", - "src": "2572:6:3", - "typeDescriptions": {} - } - }, - "id": 246, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "typeConversion", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "2572:51:3", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_bytes4", - "typeString": "bytes4" - } - }, - { - "arguments": [ - { - "id": 249, - "name": "HEVM_ADDRESS", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 165, - "src": "2656:12:3", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - { - "arguments": [ - { - "hexValue": "6661696c6564", - "id": 252, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "string", - "lValueRequested": false, - "nodeType": "Literal", - "src": "2678:8:3", - "typeDescriptions": { - "typeIdentifier": "t_stringliteral_8f44d68b1a26169d304522fa2f95aa938d98120d628d1db5726120ca84e53b43", - "typeString": "literal_string \"failed\"" - }, - "value": "failed" - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_stringliteral_8f44d68b1a26169d304522fa2f95aa938d98120d628d1db5726120ca84e53b43", - "typeString": "literal_string \"failed\"" - } - ], - "id": 251, - "isConstant": false, - "isLValue": false, - "isPure": true, - "lValueRequested": false, - "nodeType": "ElementaryTypeNameExpression", - "src": "2670:7:3", - "typeDescriptions": { - "typeIdentifier": "t_type$_t_bytes32_$", - "typeString": "type(bytes32)" - }, - "typeName": { - "id": 250, - "name": "bytes32", - "nodeType": "ElementaryTypeName", - "src": "2670:7:3", - "typeDescriptions": {} - } - }, - "id": 253, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "typeConversion", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "2670:17:3", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - }, - { - "arguments": [ - { - "arguments": [ - { - "hexValue": "30783031", - "id": 258, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "number", - "lValueRequested": false, - "nodeType": "Literal", - "src": "2705:4:3", - "typeDescriptions": { - "typeIdentifier": "t_rational_1_by_1", - "typeString": "int_const 1" - }, - "value": "0x01" - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_rational_1_by_1", - "typeString": "int_const 1" - } - ], - "id": 257, - "isConstant": false, - "isLValue": false, - "isPure": true, - "lValueRequested": false, - "nodeType": "ElementaryTypeNameExpression", - "src": "2697:7:3", - "typeDescriptions": { - "typeIdentifier": "t_type$_t_uint256_$", - "typeString": "type(uint256)" - }, - "typeName": { - "id": 256, - "name": "uint256", - "nodeType": "ElementaryTypeName", - "src": "2697:7:3", - "typeDescriptions": {} - } - }, - "id": 259, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "typeConversion", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "2697:13:3", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - ], - "id": 255, - "isConstant": false, - "isLValue": false, - "isPure": true, - "lValueRequested": false, - "nodeType": "ElementaryTypeNameExpression", - "src": "2689:7:3", - "typeDescriptions": { - "typeIdentifier": "t_type$_t_bytes32_$", - "typeString": "type(bytes32)" - }, - "typeName": { - "id": 254, - "name": "bytes32", - "nodeType": "ElementaryTypeName", - "src": "2689:7:3", - "typeDescriptions": {} - } - }, - "id": 260, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "typeConversion", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "2689:22:3", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_address", - "typeString": "address" - }, - { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - }, - { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - ], - "expression": { - "id": 247, - "name": "abi", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": -1, - "src": "2645:3:3", - "typeDescriptions": { - "typeIdentifier": "t_magic_abi", - "typeString": "abi" - } - }, - "id": 248, - "isConstant": false, - "isLValue": false, - "isPure": true, - "lValueRequested": false, - "memberName": "encode", - "nodeType": "MemberAccess", - "src": "2645:10:3", - "typeDescriptions": { - "typeIdentifier": "t_function_abiencode_pure$__$returns$_t_bytes_memory_ptr_$", - "typeString": "function () pure returns (bytes memory)" - } - }, - "id": 261, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "2645:67:3", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes memory" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_bytes4", - "typeString": "bytes4" - }, - { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes memory" - } - ], - "expression": { - "id": 239, - "name": "abi", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": -1, - "src": "2534:3:3", - "typeDescriptions": { - "typeIdentifier": "t_magic_abi", - "typeString": "abi" - } - }, - "id": 240, - "isConstant": false, - "isLValue": false, - "isPure": true, - "lValueRequested": false, - "memberName": "encodePacked", - "nodeType": "MemberAccess", - "src": "2534:16:3", - "typeDescriptions": { - "typeIdentifier": "t_function_abiencodepacked_pure$__$returns$_t_bytes_memory_ptr_$", - "typeString": "function () pure returns (bytes memory)" - } - }, - "id": 262, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "2534:196:3", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes memory" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes memory" - } - ], - "expression": { - "id": 237, - "name": "HEVM_ADDRESS", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 165, - "src": "2499:12:3", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "id": 238, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberName": "call", - "nodeType": "MemberAccess", - "src": "2499:17:3", - "typeDescriptions": { - "typeIdentifier": "t_function_barecall_payable$_t_bytes_memory_ptr_$returns$_t_bool_$_t_bytes_memory_ptr_$", - "typeString": "function (bytes memory) payable returns (bool,bytes memory)" - } - }, - "id": 263, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "2499:245:3", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_tuple$_t_bool_$_t_bytes_memory_ptr_$", - "typeString": "tuple(bool,bytes memory)" - } - }, - "nodeType": "VariableDeclarationStatement", - "src": "2481:263:3" - }, - { - "expression": { - "id": 265, - "name": "status", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 236, - "src": "2758:6:3", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "id": 266, - "nodeType": "ExpressionStatement", - "src": "2758:6:3" - } - ] - } - }, - { - "expression": { - "id": 271, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftHandSide": { - "id": 269, - "name": "_failed", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 148, - "src": "2813:7:3", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "nodeType": "Assignment", - "operator": "=", - "rightHandSide": { - "hexValue": "74727565", - "id": 270, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "bool", - "lValueRequested": false, - "nodeType": "Literal", - "src": "2823:4:3", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - "value": "true" - }, - "src": "2813:14:3", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "id": 272, - "nodeType": "ExpressionStatement", - "src": "2813:14:3" - } - ] - }, - "implemented": true, - "kind": "function", - "modifiers": [], - "name": "fail", - "nameLocation": "2419:4:3", - "parameters": { - "id": 231, - "nodeType": "ParameterList", - "parameters": [], - "src": "2423:2:3" - }, - "returnParameters": { - "id": 232, - "nodeType": "ParameterList", - "parameters": [], - "src": "2435:0:3" - }, - "scope": 1844, - "stateMutability": "nonpayable", - "virtual": false, - "visibility": "internal" - }, - { - "id": 289, - "nodeType": "FunctionDefinition", - "src": "2840:242:3", - "body": { - "id": 288, - "nodeType": "Block", - "src": "2895:187:3", - "statements": [ - { - "assignments": [ - 280 - ], - "declarations": [ - { - "constant": false, - "id": 280, - "mutability": "mutable", - "name": "hevmCodeSize", - "nameLocation": "2913:12:3", - "nodeType": "VariableDeclaration", - "scope": 288, - "src": "2905:20:3", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 279, - "name": "uint256", - "nodeType": "ElementaryTypeName", - "src": "2905:7:3", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "visibility": "internal" - } - ], - "id": 282, - "initialValue": { - "hexValue": "30", - "id": 281, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "number", - "lValueRequested": false, - "nodeType": "Literal", - "src": "2928:1:3", - "typeDescriptions": { - "typeIdentifier": "t_rational_0_by_1", - "typeString": "int_const 0" - }, - "value": "0" - }, - "nodeType": "VariableDeclarationStatement", - "src": "2905:24:3" - }, - { - "AST": { - "nodeType": "YulBlock", - "src": "2948:95:3", - "statements": [ - { - "nodeType": "YulAssignment", - "src": "2962:71:3", - "value": { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "2990:42:3", - "type": "", - "value": "0x7109709ECfa91a80626fF3989D68f67F5b1DD12D" - } - ], - "functionName": { - "name": "extcodesize", - "nodeType": "YulIdentifier", - "src": "2978:11:3" - }, - "nodeType": "YulFunctionCall", - "src": "2978:55:3" - }, - "variableNames": [ - { - "name": "hevmCodeSize", - "nodeType": "YulIdentifier", - "src": "2962:12:3" - } - ] - } - ] - }, - "evmVersion": "london", - "externalReferences": [ - { - "declaration": 280, - "isOffset": false, - "isSlot": false, - "src": "2962:12:3", - "valueSize": 1 - } - ], - "id": 283, - "nodeType": "InlineAssembly", - "src": "2939:104:3" - }, - { - "expression": { - "commonType": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "id": 286, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "id": 284, - "name": "hevmCodeSize", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 280, - "src": "3059:12:3", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "BinaryOperation", - "operator": ">", - "rightExpression": { - "hexValue": "30", - "id": 285, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "number", - "lValueRequested": false, - "nodeType": "Literal", - "src": "3074:1:3", - "typeDescriptions": { - "typeIdentifier": "t_rational_0_by_1", - "typeString": "int_const 0" - }, - "value": "0" - }, - "src": "3059:16:3", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "functionReturnParameters": 278, - "id": 287, - "nodeType": "Return", - "src": "3052:23:3" - } - ] - }, - "implemented": true, - "kind": "function", - "modifiers": [], - "name": "hasHEVMContext", - "nameLocation": "2849:14:3", - "parameters": { - "id": 275, - "nodeType": "ParameterList", - "parameters": [], - "src": "2863:2:3" - }, - "returnParameters": { - "id": 278, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 277, - "mutability": "mutable", - "name": "", - "nameLocation": "-1:-1:-1", - "nodeType": "VariableDeclaration", - "scope": 289, - "src": "2889:4:3", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - "typeName": { - "id": 276, - "name": "bool", - "nodeType": "ElementaryTypeName", - "src": "2889:4:3", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "visibility": "internal" - } - ], - "src": "2888:6:3" - }, - "scope": 1844, - "stateMutability": "view", - "virtual": false, - "visibility": "internal" - }, - { - "id": 310, - "nodeType": "ModifierDefinition", - "src": "3088:161:3", - "body": { - "id": 309, - "nodeType": "Block", - "src": "3108:141:3", - "statements": [ - { - "assignments": [ - 292 - ], - "declarations": [ - { - "constant": false, - "id": 292, - "mutability": "mutable", - "name": "startGas", - "nameLocation": "3123:8:3", - "nodeType": "VariableDeclaration", - "scope": 309, - "src": "3118:13:3", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 291, - "name": "uint", - "nodeType": "ElementaryTypeName", - "src": "3118:4:3", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "visibility": "internal" - } - ], - "id": 295, - "initialValue": { - "arguments": [], - "expression": { - "argumentTypes": [], - "id": 293, - "name": "gasleft", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": -7, - "src": "3134:7:3", - "typeDescriptions": { - "typeIdentifier": "t_function_gasleft_view$__$returns$_t_uint256_$", - "typeString": "function () view returns (uint256)" - } - }, - "id": 294, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "3134:9:3", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "VariableDeclarationStatement", - "src": "3118:25:3" - }, - { - "id": 296, - "nodeType": "PlaceholderStatement", - "src": "3153:1:3" - }, - { - "assignments": [ - 298 - ], - "declarations": [ - { - "constant": false, - "id": 298, - "mutability": "mutable", - "name": "endGas", - "nameLocation": "3169:6:3", - "nodeType": "VariableDeclaration", - "scope": 309, - "src": "3164:11:3", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 297, - "name": "uint", - "nodeType": "ElementaryTypeName", - "src": "3164:4:3", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "visibility": "internal" - } - ], - "id": 301, - "initialValue": { - "arguments": [], - "expression": { - "argumentTypes": [], - "id": 299, - "name": "gasleft", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": -7, - "src": "3178:7:3", - "typeDescriptions": { - "typeIdentifier": "t_function_gasleft_view$__$returns$_t_uint256_$", - "typeString": "function () view returns (uint256)" - } - }, - "id": 300, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "3178:9:3", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "VariableDeclarationStatement", - "src": "3164:23:3" - }, - { - "eventCall": { - "arguments": [ - { - "hexValue": "676173", - "id": 303, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "string", - "lValueRequested": false, - "nodeType": "Literal", - "src": "3217:5:3", - "typeDescriptions": { - "typeIdentifier": "t_stringliteral_4498c2139ad6cf2beef3ae7bec34c4856d471c8680dfd28d553f117df74df6b7", - "typeString": "literal_string \"gas\"" - }, - "value": "gas" - }, - { - "commonType": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "id": 306, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "id": 304, - "name": "startGas", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 292, - "src": "3224:8:3", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "BinaryOperation", - "operator": "-", - "rightExpression": { - "id": 305, - "name": "endGas", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 298, - "src": "3235:6:3", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "src": "3224:17:3", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_stringliteral_4498c2139ad6cf2beef3ae7bec34c4856d471c8680dfd28d553f117df74df6b7", - "typeString": "literal_string \"gas\"" - }, - { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - ], - "id": 302, - "name": "log_named_uint", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 131, - "src": "3202:14:3", - "typeDescriptions": { - "typeIdentifier": "t_function_event_nonpayable$_t_string_memory_ptr_$_t_uint256_$returns$__$", - "typeString": "function (string memory,uint256)" - } - }, - "id": 307, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "3202:40:3", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 308, - "nodeType": "EmitStatement", - "src": "3197:45:3" - } - ] - }, - "name": "logs_gas", - "nameLocation": "3097:8:3", - "parameters": { - "id": 290, - "nodeType": "ParameterList", - "parameters": [], - "src": "3105:2:3" - }, - "virtual": false, - "visibility": "internal" - }, - { - "id": 327, - "nodeType": "FunctionDefinition", - "src": "3255:157:3", - "body": { - "id": 326, - "nodeType": "Block", - "src": "3300:112:3", - "statements": [ - { - "condition": { - "id": 316, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "nodeType": "UnaryOperation", - "operator": "!", - "prefix": true, - "src": "3314:10:3", - "subExpression": { - "id": 315, - "name": "condition", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 312, - "src": "3315:9:3", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "id": 325, - "nodeType": "IfStatement", - "src": "3310:96:3", - "trueBody": { - "id": 324, - "nodeType": "Block", - "src": "3326:80:3", - "statements": [ - { - "eventCall": { - "arguments": [ - { - "hexValue": "4572726f723a20417373657274696f6e204661696c6564", - "id": 318, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "string", - "lValueRequested": false, - "nodeType": "Literal", - "src": "3349:25:3", - "typeDescriptions": { - "typeIdentifier": "t_stringliteral_cc8bd7d7034d6f139e4d0b1fc61bcb3025672e801833991d94fa7390aceb1687", - "typeString": "literal_string \"Error: Assertion Failed\"" - }, - "value": "Error: Assertion Failed" - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_stringliteral_cc8bd7d7034d6f139e4d0b1fc61bcb3025672e801833991d94fa7390aceb1687", - "typeString": "literal_string \"Error: Assertion Failed\"" - } - ], - "id": 317, - "name": "log", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 63, - "src": "3345:3:3", - "typeDescriptions": { - "typeIdentifier": "t_function_event_nonpayable$_t_string_memory_ptr_$returns$__$", - "typeString": "function (string memory)" - } - }, - "id": 319, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "3345:30:3", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 320, - "nodeType": "EmitStatement", - "src": "3340:35:3" - }, - { - "expression": { - "arguments": [], - "expression": { - "argumentTypes": [], - "id": 321, - "name": "fail", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 274, - "src": "3389:4:3", - "typeDescriptions": { - "typeIdentifier": "t_function_internal_nonpayable$__$returns$__$", - "typeString": "function ()" - } - }, - "id": 322, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "3389:6:3", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 323, - "nodeType": "ExpressionStatement", - "src": "3389:6:3" - } - ] - } - } - ] - }, - "implemented": true, - "kind": "function", - "modifiers": [], - "name": "assertTrue", - "nameLocation": "3264:10:3", - "parameters": { - "id": 313, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 312, - "mutability": "mutable", - "name": "condition", - "nameLocation": "3280:9:3", - "nodeType": "VariableDeclaration", - "scope": 327, - "src": "3275:14:3", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - "typeName": { - "id": 311, - "name": "bool", - "nodeType": "ElementaryTypeName", - "src": "3275:4:3", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "visibility": "internal" - } - ], - "src": "3274:16:3" - }, - "returnParameters": { - "id": 314, - "nodeType": "ParameterList", - "parameters": [], - "src": "3300:0:3" - }, - "scope": 1844, - "stateMutability": "nonpayable", - "virtual": false, - "visibility": "internal" - }, - { - "id": 348, - "nodeType": "FunctionDefinition", - "src": "3418:191:3", - "body": { - "id": 347, - "nodeType": "Block", - "src": "3482:127:3", - "statements": [ - { - "condition": { - "id": 335, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "nodeType": "UnaryOperation", - "operator": "!", - "prefix": true, - "src": "3496:10:3", - "subExpression": { - "id": 334, - "name": "condition", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 329, - "src": "3497:9:3", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "id": 346, - "nodeType": "IfStatement", - "src": "3492:111:3", - "trueBody": { - "id": 345, - "nodeType": "Block", - "src": "3508:95:3", - "statements": [ - { - "eventCall": { - "arguments": [ - { - "hexValue": "4572726f72", - "id": 337, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "string", - "lValueRequested": false, - "nodeType": "Literal", - "src": "3544:7:3", - "typeDescriptions": { - "typeIdentifier": "t_stringliteral_e342daa49723ff3485f4ff5f755a17b8bc9c3c33bbd312ceee37c94eebfe45c1", - "typeString": "literal_string \"Error\"" - }, - "value": "Error" - }, - { - "id": 338, - "name": "err", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 331, - "src": "3553:3:3", - "typeDescriptions": { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string memory" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_stringliteral_e342daa49723ff3485f4ff5f755a17b8bc9c3c33bbd312ceee37c94eebfe45c1", - "typeString": "literal_string \"Error\"" - }, - { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string memory" - } - ], - "id": 336, - "name": "log_named_string", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 143, - "src": "3527:16:3", - "typeDescriptions": { - "typeIdentifier": "t_function_event_nonpayable$_t_string_memory_ptr_$_t_string_memory_ptr_$returns$__$", - "typeString": "function (string memory,string memory)" - } - }, - "id": 339, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "3527:30:3", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 340, - "nodeType": "EmitStatement", - "src": "3522:35:3" - }, - { - "expression": { - "arguments": [ - { - "id": 342, - "name": "condition", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 329, - "src": "3582:9:3", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - ], - "id": 341, - "name": "assertTrue", - "nodeType": "Identifier", - "overloadedDeclarations": [ - 327, - 348 - ], - "referencedDeclaration": 327, - "src": "3571:10:3", - "typeDescriptions": { - "typeIdentifier": "t_function_internal_nonpayable$_t_bool_$returns$__$", - "typeString": "function (bool)" - } - }, - "id": 343, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "3571:21:3", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 344, - "nodeType": "ExpressionStatement", - "src": "3571:21:3" - } - ] - } - } - ] - }, - "implemented": true, - "kind": "function", - "modifiers": [], - "name": "assertTrue", - "nameLocation": "3427:10:3", - "parameters": { - "id": 332, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 329, - "mutability": "mutable", - "name": "condition", - "nameLocation": "3443:9:3", - "nodeType": "VariableDeclaration", - "scope": 348, - "src": "3438:14:3", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - "typeName": { - "id": 328, - "name": "bool", - "nodeType": "ElementaryTypeName", - "src": "3438:4:3", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 331, - "mutability": "mutable", - "name": "err", - "nameLocation": "3468:3:3", - "nodeType": "VariableDeclaration", - "scope": 348, - "src": "3454:17:3", - "stateVariable": false, - "storageLocation": "memory", - "typeDescriptions": { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string" - }, - "typeName": { - "id": 330, - "name": "string", - "nodeType": "ElementaryTypeName", - "src": "3454:6:3", - "typeDescriptions": { - "typeIdentifier": "t_string_storage_ptr", - "typeString": "string" - } - }, - "visibility": "internal" - } - ], - "src": "3437:35:3" - }, - "returnParameters": { - "id": 333, - "nodeType": "ParameterList", - "parameters": [], - "src": "3482:0:3" - }, - "scope": 1844, - "stateMutability": "nonpayable", - "virtual": false, - "visibility": "internal" - }, - { - "id": 378, - "nodeType": "FunctionDefinition", - "src": "3615:277:3", - "body": { - "id": 377, - "nodeType": "Block", - "src": "3664:228:3", - "statements": [ - { - "condition": { - "commonType": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "id": 357, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "id": 355, - "name": "a", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 350, - "src": "3678:1:3", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "nodeType": "BinaryOperation", - "operator": "!=", - "rightExpression": { - "id": 356, - "name": "b", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 352, - "src": "3683:1:3", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "src": "3678:6:3", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "id": 376, - "nodeType": "IfStatement", - "src": "3674:212:3", - "trueBody": { - "id": 375, - "nodeType": "Block", - "src": "3686:200:3", - "statements": [ - { - "eventCall": { - "arguments": [ - { - "hexValue": "4572726f723a2061203d3d2062206e6f7420736174697366696564205b616464726573735d", - "id": 359, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "string", - "lValueRequested": false, - "nodeType": "Literal", - "src": "3709:39:3", - "typeDescriptions": { - "typeIdentifier": "t_stringliteral_9fc6ddd126630392f6812bf6b1418b5ec062ae84acc54ee474317255c7d57017", - "typeString": "literal_string \"Error: a == b not satisfied [address]\"" - }, - "value": "Error: a == b not satisfied [address]" - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_stringliteral_9fc6ddd126630392f6812bf6b1418b5ec062ae84acc54ee474317255c7d57017", - "typeString": "literal_string \"Error: a == b not satisfied [address]\"" - } - ], - "id": 358, - "name": "log", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 63, - "src": "3705:3:3", - "typeDescriptions": { - "typeIdentifier": "t_function_event_nonpayable$_t_string_memory_ptr_$returns$__$", - "typeString": "function (string memory)" - } - }, - "id": 360, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "3705:44:3", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 361, - "nodeType": "EmitStatement", - "src": "3700:49:3" - }, - { - "eventCall": { - "arguments": [ - { - "hexValue": "20204578706563746564", - "id": 363, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "string", - "lValueRequested": false, - "nodeType": "Literal", - "src": "3786:12:3", - "typeDescriptions": { - "typeIdentifier": "t_stringliteral_42fa07d7c51ce5de92a0fc65dbf7e7800814fd01c258dc50e84d5be59184bf0b", - "typeString": "literal_string \" Expected\"" - }, - "value": " Expected" - }, - { - "id": 364, - "name": "b", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 352, - "src": "3800:1:3", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_stringliteral_42fa07d7c51ce5de92a0fc65dbf7e7800814fd01c258dc50e84d5be59184bf0b", - "typeString": "literal_string \" Expected\"" - }, - { - "typeIdentifier": "t_address", - "typeString": "address" - } - ], - "id": 362, - "name": "log_named_address", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 97, - "src": "3768:17:3", - "typeDescriptions": { - "typeIdentifier": "t_function_event_nonpayable$_t_string_memory_ptr_$_t_address_$returns$__$", - "typeString": "function (string memory,address)" - } - }, - "id": 365, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "3768:34:3", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 366, - "nodeType": "EmitStatement", - "src": "3763:39:3" - }, - { - "eventCall": { - "arguments": [ - { - "hexValue": "2020202041637475616c", - "id": 368, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "string", - "lValueRequested": false, - "nodeType": "Literal", - "src": "3839:12:3", - "typeDescriptions": { - "typeIdentifier": "t_stringliteral_d7896f3f645b3ba89da46bf231a5df16e525e587a84bc9b284dfb39958fb219b", - "typeString": "literal_string \" Actual\"" - }, - "value": " Actual" - }, - { - "id": 369, - "name": "a", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 350, - "src": "3853:1:3", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_stringliteral_d7896f3f645b3ba89da46bf231a5df16e525e587a84bc9b284dfb39958fb219b", - "typeString": "literal_string \" Actual\"" - }, - { - "typeIdentifier": "t_address", - "typeString": "address" - } - ], - "id": 367, - "name": "log_named_address", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 97, - "src": "3821:17:3", - "typeDescriptions": { - "typeIdentifier": "t_function_event_nonpayable$_t_string_memory_ptr_$_t_address_$returns$__$", - "typeString": "function (string memory,address)" - } - }, - "id": 370, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "3821:34:3", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 371, - "nodeType": "EmitStatement", - "src": "3816:39:3" - }, - { - "expression": { - "arguments": [], - "expression": { - "argumentTypes": [], - "id": 372, - "name": "fail", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 274, - "src": "3869:4:3", - "typeDescriptions": { - "typeIdentifier": "t_function_internal_nonpayable$__$returns$__$", - "typeString": "function ()" - } - }, - "id": 373, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "3869:6:3", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 374, - "nodeType": "ExpressionStatement", - "src": "3869:6:3" - } - ] - } - } - ] - }, - "implemented": true, - "kind": "function", - "modifiers": [], - "name": "assertEq", - "nameLocation": "3624:8:3", - "parameters": { - "id": 353, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 350, - "mutability": "mutable", - "name": "a", - "nameLocation": "3641:1:3", - "nodeType": "VariableDeclaration", - "scope": 378, - "src": "3633:9:3", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "typeName": { - "id": 349, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "3633:7:3", - "stateMutability": "nonpayable", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 352, - "mutability": "mutable", - "name": "b", - "nameLocation": "3652:1:3", - "nodeType": "VariableDeclaration", - "scope": 378, - "src": "3644:9:3", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "typeName": { - "id": 351, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "3644:7:3", - "stateMutability": "nonpayable", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "visibility": "internal" - } - ], - "src": "3632:22:3" - }, - "returnParameters": { - "id": 354, - "nodeType": "ParameterList", - "parameters": [], - "src": "3664:0:3" - }, - "scope": 1844, - "stateMutability": "nonpayable", - "virtual": false, - "visibility": "internal" - }, - { - "id": 403, - "nodeType": "FunctionDefinition", - "src": "3897:185:3", - "body": { - "id": 402, - "nodeType": "Block", - "src": "3965:117:3", - "statements": [ - { - "condition": { - "commonType": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "id": 389, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "id": 387, - "name": "a", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 380, - "src": "3979:1:3", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "nodeType": "BinaryOperation", - "operator": "!=", - "rightExpression": { - "id": 388, - "name": "b", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 382, - "src": "3984:1:3", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "src": "3979:6:3", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "id": 401, - "nodeType": "IfStatement", - "src": "3975:101:3", - "trueBody": { - "id": 400, - "nodeType": "Block", - "src": "3987:89:3", - "statements": [ - { - "eventCall": { - "arguments": [ - { - "hexValue": "4572726f72", - "id": 391, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "string", - "lValueRequested": false, - "nodeType": "Literal", - "src": "4024:7:3", - "typeDescriptions": { - "typeIdentifier": "t_stringliteral_e342daa49723ff3485f4ff5f755a17b8bc9c3c33bbd312ceee37c94eebfe45c1", - "typeString": "literal_string \"Error\"" - }, - "value": "Error" - }, - { - "id": 392, - "name": "err", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 384, - "src": "4033:3:3", - "typeDescriptions": { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string memory" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_stringliteral_e342daa49723ff3485f4ff5f755a17b8bc9c3c33bbd312ceee37c94eebfe45c1", - "typeString": "literal_string \"Error\"" - }, - { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string memory" - } - ], - "id": 390, - "name": "log_named_string", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 143, - "src": "4006:16:3", - "typeDescriptions": { - "typeIdentifier": "t_function_event_nonpayable$_t_string_memory_ptr_$_t_string_memory_ptr_$returns$__$", - "typeString": "function (string memory,string memory)" - } - }, - "id": 393, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "4006:31:3", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 394, - "nodeType": "EmitStatement", - "src": "4001:36:3" - }, - { - "expression": { - "arguments": [ - { - "id": 396, - "name": "a", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 380, - "src": "4060:1:3", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - { - "id": 397, - "name": "b", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 382, - "src": "4063:1:3", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_address", - "typeString": "address" - }, - { - "typeIdentifier": "t_address", - "typeString": "address" - } - ], - "id": 395, - "name": "assertEq", - "nodeType": "Identifier", - "overloadedDeclarations": [ - 378, - 403, - 433, - 458, - 517, - 542, - 572, - 597, - 1697, - 1732 - ], - "referencedDeclaration": 378, - "src": "4051:8:3", - "typeDescriptions": { - "typeIdentifier": "t_function_internal_nonpayable$_t_address_$_t_address_$returns$__$", - "typeString": "function (address,address)" - } - }, - "id": 398, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "4051:14:3", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 399, - "nodeType": "ExpressionStatement", - "src": "4051:14:3" - } - ] - } - } - ] - }, - "implemented": true, - "kind": "function", - "modifiers": [], - "name": "assertEq", - "nameLocation": "3906:8:3", - "parameters": { - "id": 385, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 380, - "mutability": "mutable", - "name": "a", - "nameLocation": "3923:1:3", - "nodeType": "VariableDeclaration", - "scope": 403, - "src": "3915:9:3", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "typeName": { - "id": 379, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "3915:7:3", - "stateMutability": "nonpayable", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 382, - "mutability": "mutable", - "name": "b", - "nameLocation": "3934:1:3", - "nodeType": "VariableDeclaration", - "scope": 403, - "src": "3926:9:3", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "typeName": { - "id": 381, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "3926:7:3", - "stateMutability": "nonpayable", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 384, - "mutability": "mutable", - "name": "err", - "nameLocation": "3951:3:3", - "nodeType": "VariableDeclaration", - "scope": 403, - "src": "3937:17:3", - "stateVariable": false, - "storageLocation": "memory", - "typeDescriptions": { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string" - }, - "typeName": { - "id": 383, - "name": "string", - "nodeType": "ElementaryTypeName", - "src": "3937:6:3", - "typeDescriptions": { - "typeIdentifier": "t_string_storage_ptr", - "typeString": "string" - } - }, - "visibility": "internal" - } - ], - "src": "3914:41:3" - }, - "returnParameters": { - "id": 386, - "nodeType": "ParameterList", - "parameters": [], - "src": "3965:0:3" - }, - "scope": 1844, - "stateMutability": "nonpayable", - "virtual": false, - "visibility": "internal" - }, - { - "id": 433, - "nodeType": "FunctionDefinition", - "src": "4088:277:3", - "body": { - "id": 432, - "nodeType": "Block", - "src": "4137:228:3", - "statements": [ - { - "condition": { - "commonType": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - }, - "id": 412, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "id": 410, - "name": "a", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 405, - "src": "4151:1:3", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - }, - "nodeType": "BinaryOperation", - "operator": "!=", - "rightExpression": { - "id": 411, - "name": "b", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 407, - "src": "4156:1:3", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - }, - "src": "4151:6:3", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "id": 431, - "nodeType": "IfStatement", - "src": "4147:212:3", - "trueBody": { - "id": 430, - "nodeType": "Block", - "src": "4159:200:3", - "statements": [ - { - "eventCall": { - "arguments": [ - { - "hexValue": "4572726f723a2061203d3d2062206e6f7420736174697366696564205b627974657333325d", - "id": 414, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "string", - "lValueRequested": false, - "nodeType": "Literal", - "src": "4182:39:3", - "typeDescriptions": { - "typeIdentifier": "t_stringliteral_6605dedc99dd4e0a76d4678a99cc6956499fe2b523ca6525b248ca3582cef3ef", - "typeString": "literal_string \"Error: a == b not satisfied [bytes32]\"" - }, - "value": "Error: a == b not satisfied [bytes32]" - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_stringliteral_6605dedc99dd4e0a76d4678a99cc6956499fe2b523ca6525b248ca3582cef3ef", - "typeString": "literal_string \"Error: a == b not satisfied [bytes32]\"" - } - ], - "id": 413, - "name": "log", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 63, - "src": "4178:3:3", - "typeDescriptions": { - "typeIdentifier": "t_function_event_nonpayable$_t_string_memory_ptr_$returns$__$", - "typeString": "function (string memory)" - } - }, - "id": 415, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "4178:44:3", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 416, - "nodeType": "EmitStatement", - "src": "4173:49:3" - }, - { - "eventCall": { - "arguments": [ - { - "hexValue": "20204578706563746564", - "id": 418, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "string", - "lValueRequested": false, - "nodeType": "Literal", - "src": "4259:12:3", - "typeDescriptions": { - "typeIdentifier": "t_stringliteral_42fa07d7c51ce5de92a0fc65dbf7e7800814fd01c258dc50e84d5be59184bf0b", - "typeString": "literal_string \" Expected\"" - }, - "value": " Expected" - }, - { - "id": 419, - "name": "b", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 407, - "src": "4273:1:3", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_stringliteral_42fa07d7c51ce5de92a0fc65dbf7e7800814fd01c258dc50e84d5be59184bf0b", - "typeString": "literal_string \" Expected\"" - }, - { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - ], - "id": 417, - "name": "log_named_bytes32", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 103, - "src": "4241:17:3", - "typeDescriptions": { - "typeIdentifier": "t_function_event_nonpayable$_t_string_memory_ptr_$_t_bytes32_$returns$__$", - "typeString": "function (string memory,bytes32)" - } - }, - "id": 420, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "4241:34:3", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 421, - "nodeType": "EmitStatement", - "src": "4236:39:3" - }, - { - "eventCall": { - "arguments": [ - { - "hexValue": "2020202041637475616c", - "id": 423, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "string", - "lValueRequested": false, - "nodeType": "Literal", - "src": "4312:12:3", - "typeDescriptions": { - "typeIdentifier": "t_stringliteral_d7896f3f645b3ba89da46bf231a5df16e525e587a84bc9b284dfb39958fb219b", - "typeString": "literal_string \" Actual\"" - }, - "value": " Actual" - }, - { - "id": 424, - "name": "a", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 405, - "src": "4326:1:3", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_stringliteral_d7896f3f645b3ba89da46bf231a5df16e525e587a84bc9b284dfb39958fb219b", - "typeString": "literal_string \" Actual\"" - }, - { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - ], - "id": 422, - "name": "log_named_bytes32", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 103, - "src": "4294:17:3", - "typeDescriptions": { - "typeIdentifier": "t_function_event_nonpayable$_t_string_memory_ptr_$_t_bytes32_$returns$__$", - "typeString": "function (string memory,bytes32)" - } - }, - "id": 425, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "4294:34:3", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 426, - "nodeType": "EmitStatement", - "src": "4289:39:3" - }, - { - "expression": { - "arguments": [], - "expression": { - "argumentTypes": [], - "id": 427, - "name": "fail", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 274, - "src": "4342:4:3", - "typeDescriptions": { - "typeIdentifier": "t_function_internal_nonpayable$__$returns$__$", - "typeString": "function ()" - } - }, - "id": 428, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "4342:6:3", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 429, - "nodeType": "ExpressionStatement", - "src": "4342:6:3" - } - ] - } - } - ] - }, - "implemented": true, - "kind": "function", - "modifiers": [], - "name": "assertEq", - "nameLocation": "4097:8:3", - "parameters": { - "id": 408, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 405, - "mutability": "mutable", - "name": "a", - "nameLocation": "4114:1:3", - "nodeType": "VariableDeclaration", - "scope": 433, - "src": "4106:9:3", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - }, - "typeName": { - "id": 404, - "name": "bytes32", - "nodeType": "ElementaryTypeName", - "src": "4106:7:3", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 407, - "mutability": "mutable", - "name": "b", - "nameLocation": "4125:1:3", - "nodeType": "VariableDeclaration", - "scope": 433, - "src": "4117:9:3", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - }, - "typeName": { - "id": 406, - "name": "bytes32", - "nodeType": "ElementaryTypeName", - "src": "4117:7:3", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - }, - "visibility": "internal" - } - ], - "src": "4105:22:3" - }, - "returnParameters": { - "id": 409, - "nodeType": "ParameterList", - "parameters": [], - "src": "4137:0:3" - }, - "scope": 1844, - "stateMutability": "nonpayable", - "virtual": false, - "visibility": "internal" - }, - { - "id": 458, - "nodeType": "FunctionDefinition", - "src": "4370:185:3", - "body": { - "id": 457, - "nodeType": "Block", - "src": "4438:117:3", - "statements": [ - { - "condition": { - "commonType": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - }, - "id": 444, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "id": 442, - "name": "a", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 435, - "src": "4452:1:3", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - }, - "nodeType": "BinaryOperation", - "operator": "!=", - "rightExpression": { - "id": 443, - "name": "b", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 437, - "src": "4457:1:3", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - }, - "src": "4452:6:3", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "id": 456, - "nodeType": "IfStatement", - "src": "4448:101:3", - "trueBody": { - "id": 455, - "nodeType": "Block", - "src": "4460:89:3", - "statements": [ - { - "eventCall": { - "arguments": [ - { - "hexValue": "4572726f72", - "id": 446, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "string", - "lValueRequested": false, - "nodeType": "Literal", - "src": "4497:7:3", - "typeDescriptions": { - "typeIdentifier": "t_stringliteral_e342daa49723ff3485f4ff5f755a17b8bc9c3c33bbd312ceee37c94eebfe45c1", - "typeString": "literal_string \"Error\"" - }, - "value": "Error" - }, - { - "id": 447, - "name": "err", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 439, - "src": "4506:3:3", - "typeDescriptions": { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string memory" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_stringliteral_e342daa49723ff3485f4ff5f755a17b8bc9c3c33bbd312ceee37c94eebfe45c1", - "typeString": "literal_string \"Error\"" - }, - { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string memory" - } - ], - "id": 445, - "name": "log_named_string", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 143, - "src": "4479:16:3", - "typeDescriptions": { - "typeIdentifier": "t_function_event_nonpayable$_t_string_memory_ptr_$_t_string_memory_ptr_$returns$__$", - "typeString": "function (string memory,string memory)" - } - }, - "id": 448, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "4479:31:3", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 449, - "nodeType": "EmitStatement", - "src": "4474:36:3" - }, - { - "expression": { - "arguments": [ - { - "id": 451, - "name": "a", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 435, - "src": "4533:1:3", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - }, - { - "id": 452, - "name": "b", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 437, - "src": "4536:1:3", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - }, - { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - ], - "id": 450, - "name": "assertEq", - "nodeType": "Identifier", - "overloadedDeclarations": [ - 378, - 403, - 433, - 458, - 517, - 542, - 572, - 597, - 1697, - 1732 - ], - "referencedDeclaration": 433, - "src": "4524:8:3", - "typeDescriptions": { - "typeIdentifier": "t_function_internal_nonpayable$_t_bytes32_$_t_bytes32_$returns$__$", - "typeString": "function (bytes32,bytes32)" - } - }, - "id": 453, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "4524:14:3", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 454, - "nodeType": "ExpressionStatement", - "src": "4524:14:3" - } - ] - } - } - ] - }, - "implemented": true, - "kind": "function", - "modifiers": [], - "name": "assertEq", - "nameLocation": "4379:8:3", - "parameters": { - "id": 440, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 435, - "mutability": "mutable", - "name": "a", - "nameLocation": "4396:1:3", - "nodeType": "VariableDeclaration", - "scope": 458, - "src": "4388:9:3", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - }, - "typeName": { - "id": 434, - "name": "bytes32", - "nodeType": "ElementaryTypeName", - "src": "4388:7:3", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 437, - "mutability": "mutable", - "name": "b", - "nameLocation": "4407:1:3", - "nodeType": "VariableDeclaration", - "scope": 458, - "src": "4399:9:3", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - }, - "typeName": { - "id": 436, - "name": "bytes32", - "nodeType": "ElementaryTypeName", - "src": "4399:7:3", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 439, - "mutability": "mutable", - "name": "err", - "nameLocation": "4424:3:3", - "nodeType": "VariableDeclaration", - "scope": 458, - "src": "4410:17:3", - "stateVariable": false, - "storageLocation": "memory", - "typeDescriptions": { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string" - }, - "typeName": { - "id": 438, - "name": "string", - "nodeType": "ElementaryTypeName", - "src": "4410:6:3", - "typeDescriptions": { - "typeIdentifier": "t_string_storage_ptr", - "typeString": "string" - } - }, - "visibility": "internal" - } - ], - "src": "4387:41:3" - }, - "returnParameters": { - "id": 441, - "nodeType": "ParameterList", - "parameters": [], - "src": "4438:0:3" - }, - "scope": 1844, - "stateMutability": "nonpayable", - "virtual": false, - "visibility": "internal" - }, - { - "id": 471, - "nodeType": "FunctionDefinition", - "src": "4560:82:3", - "body": { - "id": 470, - "nodeType": "Block", - "src": "4611:31:3", - "statements": [ - { - "expression": { - "arguments": [ - { - "id": 466, - "name": "a", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 460, - "src": "4630:1:3", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - }, - { - "id": 467, - "name": "b", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 462, - "src": "4633:1:3", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - }, - { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - ], - "id": 465, - "name": "assertEq", - "nodeType": "Identifier", - "overloadedDeclarations": [ - 378, - 403, - 433, - 458, - 517, - 542, - 572, - 597, - 1697, - 1732 - ], - "referencedDeclaration": 433, - "src": "4621:8:3", - "typeDescriptions": { - "typeIdentifier": "t_function_internal_nonpayable$_t_bytes32_$_t_bytes32_$returns$__$", - "typeString": "function (bytes32,bytes32)" - } - }, - "id": 468, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "4621:14:3", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 469, - "nodeType": "ExpressionStatement", - "src": "4621:14:3" - } - ] - }, - "implemented": true, - "kind": "function", - "modifiers": [], - "name": "assertEq32", - "nameLocation": "4569:10:3", - "parameters": { - "id": 463, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 460, - "mutability": "mutable", - "name": "a", - "nameLocation": "4588:1:3", - "nodeType": "VariableDeclaration", - "scope": 471, - "src": "4580:9:3", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - }, - "typeName": { - "id": 459, - "name": "bytes32", - "nodeType": "ElementaryTypeName", - "src": "4580:7:3", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 462, - "mutability": "mutable", - "name": "b", - "nameLocation": "4599:1:3", - "nodeType": "VariableDeclaration", - "scope": 471, - "src": "4591:9:3", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - }, - "typeName": { - "id": 461, - "name": "bytes32", - "nodeType": "ElementaryTypeName", - "src": "4591:7:3", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - }, - "visibility": "internal" - } - ], - "src": "4579:22:3" - }, - "returnParameters": { - "id": 464, - "nodeType": "ParameterList", - "parameters": [], - "src": "4611:0:3" - }, - "scope": 1844, - "stateMutability": "nonpayable", - "virtual": false, - "visibility": "internal" - }, - { - "id": 487, - "nodeType": "FunctionDefinition", - "src": "4647:106:3", - "body": { - "id": 486, - "nodeType": "Block", - "src": "4717:36:3", - "statements": [ - { - "expression": { - "arguments": [ - { - "id": 481, - "name": "a", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 473, - "src": "4736:1:3", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - }, - { - "id": 482, - "name": "b", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 475, - "src": "4739:1:3", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - }, - { - "id": 483, - "name": "err", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 477, - "src": "4742:3:3", - "typeDescriptions": { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string memory" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - }, - { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - }, - { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string memory" - } - ], - "id": 480, - "name": "assertEq", - "nodeType": "Identifier", - "overloadedDeclarations": [ - 378, - 403, - 433, - 458, - 517, - 542, - 572, - 597, - 1697, - 1732 - ], - "referencedDeclaration": 458, - "src": "4727:8:3", - "typeDescriptions": { - "typeIdentifier": "t_function_internal_nonpayable$_t_bytes32_$_t_bytes32_$_t_string_memory_ptr_$returns$__$", - "typeString": "function (bytes32,bytes32,string memory)" - } - }, - "id": 484, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "4727:19:3", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 485, - "nodeType": "ExpressionStatement", - "src": "4727:19:3" - } - ] - }, - "implemented": true, - "kind": "function", - "modifiers": [], - "name": "assertEq32", - "nameLocation": "4656:10:3", - "parameters": { - "id": 478, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 473, - "mutability": "mutable", - "name": "a", - "nameLocation": "4675:1:3", - "nodeType": "VariableDeclaration", - "scope": 487, - "src": "4667:9:3", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - }, - "typeName": { - "id": 472, - "name": "bytes32", - "nodeType": "ElementaryTypeName", - "src": "4667:7:3", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 475, - "mutability": "mutable", - "name": "b", - "nameLocation": "4686:1:3", - "nodeType": "VariableDeclaration", - "scope": 487, - "src": "4678:9:3", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - }, - "typeName": { - "id": 474, - "name": "bytes32", - "nodeType": "ElementaryTypeName", - "src": "4678:7:3", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 477, - "mutability": "mutable", - "name": "err", - "nameLocation": "4703:3:3", - "nodeType": "VariableDeclaration", - "scope": 487, - "src": "4689:17:3", - "stateVariable": false, - "storageLocation": "memory", - "typeDescriptions": { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string" - }, - "typeName": { - "id": 476, - "name": "string", - "nodeType": "ElementaryTypeName", - "src": "4689:6:3", - "typeDescriptions": { - "typeIdentifier": "t_string_storage_ptr", - "typeString": "string" - } - }, - "visibility": "internal" - } - ], - "src": "4666:41:3" - }, - "returnParameters": { - "id": 479, - "nodeType": "ParameterList", - "parameters": [], - "src": "4717:0:3" - }, - "scope": 1844, - "stateMutability": "nonpayable", - "virtual": false, - "visibility": "internal" - }, - { - "id": 517, - "nodeType": "FunctionDefinition", - "src": "4759:257:3", - "body": { - "id": 516, - "nodeType": "Block", - "src": "4800:216:3", - "statements": [ - { - "condition": { - "commonType": { - "typeIdentifier": "t_int256", - "typeString": "int256" - }, - "id": 496, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "id": 494, - "name": "a", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 489, - "src": "4814:1:3", - "typeDescriptions": { - "typeIdentifier": "t_int256", - "typeString": "int256" - } - }, - "nodeType": "BinaryOperation", - "operator": "!=", - "rightExpression": { - "id": 495, - "name": "b", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 491, - "src": "4819:1:3", - "typeDescriptions": { - "typeIdentifier": "t_int256", - "typeString": "int256" - } - }, - "src": "4814:6:3", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "id": 515, - "nodeType": "IfStatement", - "src": "4810:200:3", - "trueBody": { - "id": 514, - "nodeType": "Block", - "src": "4822:188:3", - "statements": [ - { - "eventCall": { - "arguments": [ - { - "hexValue": "4572726f723a2061203d3d2062206e6f7420736174697366696564205b696e745d", - "id": 498, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "string", - "lValueRequested": false, - "nodeType": "Literal", - "src": "4845:35:3", - "typeDescriptions": { - "typeIdentifier": "t_stringliteral_0c510d1b16a7b86013fe25431f855bed96290957b4566f7ab53d5bf1855a3a81", - "typeString": "literal_string \"Error: a == b not satisfied [int]\"" - }, - "value": "Error: a == b not satisfied [int]" - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_stringliteral_0c510d1b16a7b86013fe25431f855bed96290957b4566f7ab53d5bf1855a3a81", - "typeString": "literal_string \"Error: a == b not satisfied [int]\"" - } - ], - "id": 497, - "name": "log", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 63, - "src": "4841:3:3", - "typeDescriptions": { - "typeIdentifier": "t_function_event_nonpayable$_t_string_memory_ptr_$returns$__$", - "typeString": "function (string memory)" - } - }, - "id": 499, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "4841:40:3", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 500, - "nodeType": "EmitStatement", - "src": "4836:45:3" - }, - { - "eventCall": { - "arguments": [ - { - "hexValue": "20204578706563746564", - "id": 502, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "string", - "lValueRequested": false, - "nodeType": "Literal", - "src": "4914:12:3", - "typeDescriptions": { - "typeIdentifier": "t_stringliteral_42fa07d7c51ce5de92a0fc65dbf7e7800814fd01c258dc50e84d5be59184bf0b", - "typeString": "literal_string \" Expected\"" - }, - "value": " Expected" - }, - { - "id": 503, - "name": "b", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 491, - "src": "4928:1:3", - "typeDescriptions": { - "typeIdentifier": "t_int256", - "typeString": "int256" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_stringliteral_42fa07d7c51ce5de92a0fc65dbf7e7800814fd01c258dc50e84d5be59184bf0b", - "typeString": "literal_string \" Expected\"" - }, - { - "typeIdentifier": "t_int256", - "typeString": "int256" - } - ], - "id": 501, - "name": "log_named_int", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 125, - "src": "4900:13:3", - "typeDescriptions": { - "typeIdentifier": "t_function_event_nonpayable$_t_string_memory_ptr_$_t_int256_$returns$__$", - "typeString": "function (string memory,int256)" - } - }, - "id": 504, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "4900:30:3", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 505, - "nodeType": "EmitStatement", - "src": "4895:35:3" - }, - { - "eventCall": { - "arguments": [ - { - "hexValue": "2020202041637475616c", - "id": 507, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "string", - "lValueRequested": false, - "nodeType": "Literal", - "src": "4963:12:3", - "typeDescriptions": { - "typeIdentifier": "t_stringliteral_d7896f3f645b3ba89da46bf231a5df16e525e587a84bc9b284dfb39958fb219b", - "typeString": "literal_string \" Actual\"" - }, - "value": " Actual" - }, - { - "id": 508, - "name": "a", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 489, - "src": "4977:1:3", - "typeDescriptions": { - "typeIdentifier": "t_int256", - "typeString": "int256" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_stringliteral_d7896f3f645b3ba89da46bf231a5df16e525e587a84bc9b284dfb39958fb219b", - "typeString": "literal_string \" Actual\"" - }, - { - "typeIdentifier": "t_int256", - "typeString": "int256" - } - ], - "id": 506, - "name": "log_named_int", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 125, - "src": "4949:13:3", - "typeDescriptions": { - "typeIdentifier": "t_function_event_nonpayable$_t_string_memory_ptr_$_t_int256_$returns$__$", - "typeString": "function (string memory,int256)" - } - }, - "id": 509, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "4949:30:3", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 510, - "nodeType": "EmitStatement", - "src": "4944:35:3" - }, - { - "expression": { - "arguments": [], - "expression": { - "argumentTypes": [], - "id": 511, - "name": "fail", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 274, - "src": "4993:4:3", - "typeDescriptions": { - "typeIdentifier": "t_function_internal_nonpayable$__$returns$__$", - "typeString": "function ()" - } - }, - "id": 512, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "4993:6:3", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 513, - "nodeType": "ExpressionStatement", - "src": "4993:6:3" - } - ] - } - } - ] - }, - "implemented": true, - "kind": "function", - "modifiers": [], - "name": "assertEq", - "nameLocation": "4768:8:3", - "parameters": { - "id": 492, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 489, - "mutability": "mutable", - "name": "a", - "nameLocation": "4781:1:3", - "nodeType": "VariableDeclaration", - "scope": 517, - "src": "4777:5:3", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_int256", - "typeString": "int256" - }, - "typeName": { - "id": 488, - "name": "int", - "nodeType": "ElementaryTypeName", - "src": "4777:3:3", - "typeDescriptions": { - "typeIdentifier": "t_int256", - "typeString": "int256" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 491, - "mutability": "mutable", - "name": "b", - "nameLocation": "4788:1:3", - "nodeType": "VariableDeclaration", - "scope": 517, - "src": "4784:5:3", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_int256", - "typeString": "int256" - }, - "typeName": { - "id": 490, - "name": "int", - "nodeType": "ElementaryTypeName", - "src": "4784:3:3", - "typeDescriptions": { - "typeIdentifier": "t_int256", - "typeString": "int256" - } - }, - "visibility": "internal" - } - ], - "src": "4776:14:3" - }, - "returnParameters": { - "id": 493, - "nodeType": "ParameterList", - "parameters": [], - "src": "4800:0:3" - }, - "scope": 1844, - "stateMutability": "nonpayable", - "virtual": false, - "visibility": "internal" - }, - { - "id": 542, - "nodeType": "FunctionDefinition", - "src": "5021:176:3", - "body": { - "id": 541, - "nodeType": "Block", - "src": "5081:116:3", - "statements": [ - { - "condition": { - "commonType": { - "typeIdentifier": "t_int256", - "typeString": "int256" - }, - "id": 528, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "id": 526, - "name": "a", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 519, - "src": "5095:1:3", - "typeDescriptions": { - "typeIdentifier": "t_int256", - "typeString": "int256" - } - }, - "nodeType": "BinaryOperation", - "operator": "!=", - "rightExpression": { - "id": 527, - "name": "b", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 521, - "src": "5100:1:3", - "typeDescriptions": { - "typeIdentifier": "t_int256", - "typeString": "int256" - } - }, - "src": "5095:6:3", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "id": 540, - "nodeType": "IfStatement", - "src": "5091:100:3", - "trueBody": { - "id": 539, - "nodeType": "Block", - "src": "5103:88:3", - "statements": [ - { - "eventCall": { - "arguments": [ - { - "hexValue": "4572726f72", - "id": 530, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "string", - "lValueRequested": false, - "nodeType": "Literal", - "src": "5139:7:3", - "typeDescriptions": { - "typeIdentifier": "t_stringliteral_e342daa49723ff3485f4ff5f755a17b8bc9c3c33bbd312ceee37c94eebfe45c1", - "typeString": "literal_string \"Error\"" - }, - "value": "Error" - }, - { - "id": 531, - "name": "err", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 523, - "src": "5148:3:3", - "typeDescriptions": { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string memory" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_stringliteral_e342daa49723ff3485f4ff5f755a17b8bc9c3c33bbd312ceee37c94eebfe45c1", - "typeString": "literal_string \"Error\"" - }, - { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string memory" - } - ], - "id": 529, - "name": "log_named_string", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 143, - "src": "5122:16:3", - "typeDescriptions": { - "typeIdentifier": "t_function_event_nonpayable$_t_string_memory_ptr_$_t_string_memory_ptr_$returns$__$", - "typeString": "function (string memory,string memory)" - } - }, - "id": 532, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "5122:30:3", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 533, - "nodeType": "EmitStatement", - "src": "5117:35:3" - }, - { - "expression": { - "arguments": [ - { - "id": 535, - "name": "a", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 519, - "src": "5175:1:3", - "typeDescriptions": { - "typeIdentifier": "t_int256", - "typeString": "int256" - } - }, - { - "id": 536, - "name": "b", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 521, - "src": "5178:1:3", - "typeDescriptions": { - "typeIdentifier": "t_int256", - "typeString": "int256" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_int256", - "typeString": "int256" - }, - { - "typeIdentifier": "t_int256", - "typeString": "int256" - } - ], - "id": 534, - "name": "assertEq", - "nodeType": "Identifier", - "overloadedDeclarations": [ - 378, - 403, - 433, - 458, - 517, - 542, - 572, - 597, - 1697, - 1732 - ], - "referencedDeclaration": 517, - "src": "5166:8:3", - "typeDescriptions": { - "typeIdentifier": "t_function_internal_nonpayable$_t_int256_$_t_int256_$returns$__$", - "typeString": "function (int256,int256)" - } - }, - "id": 537, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "5166:14:3", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 538, - "nodeType": "ExpressionStatement", - "src": "5166:14:3" - } - ] - } - } - ] - }, - "implemented": true, - "kind": "function", - "modifiers": [], - "name": "assertEq", - "nameLocation": "5030:8:3", - "parameters": { - "id": 524, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 519, - "mutability": "mutable", - "name": "a", - "nameLocation": "5043:1:3", - "nodeType": "VariableDeclaration", - "scope": 542, - "src": "5039:5:3", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_int256", - "typeString": "int256" - }, - "typeName": { - "id": 518, - "name": "int", - "nodeType": "ElementaryTypeName", - "src": "5039:3:3", - "typeDescriptions": { - "typeIdentifier": "t_int256", - "typeString": "int256" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 521, - "mutability": "mutable", - "name": "b", - "nameLocation": "5050:1:3", - "nodeType": "VariableDeclaration", - "scope": 542, - "src": "5046:5:3", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_int256", - "typeString": "int256" - }, - "typeName": { - "id": 520, - "name": "int", - "nodeType": "ElementaryTypeName", - "src": "5046:3:3", - "typeDescriptions": { - "typeIdentifier": "t_int256", - "typeString": "int256" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 523, - "mutability": "mutable", - "name": "err", - "nameLocation": "5067:3:3", - "nodeType": "VariableDeclaration", - "scope": 542, - "src": "5053:17:3", - "stateVariable": false, - "storageLocation": "memory", - "typeDescriptions": { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string" - }, - "typeName": { - "id": 522, - "name": "string", - "nodeType": "ElementaryTypeName", - "src": "5053:6:3", - "typeDescriptions": { - "typeIdentifier": "t_string_storage_ptr", - "typeString": "string" - } - }, - "visibility": "internal" - } - ], - "src": "5038:33:3" - }, - "returnParameters": { - "id": 525, - "nodeType": "ParameterList", - "parameters": [], - "src": "5081:0:3" - }, - "scope": 1844, - "stateMutability": "nonpayable", - "virtual": false, - "visibility": "internal" - }, - { - "id": 572, - "nodeType": "FunctionDefinition", - "src": "5202:262:3", - "body": { - "id": 571, - "nodeType": "Block", - "src": "5245:219:3", - "statements": [ - { - "condition": { - "commonType": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "id": 551, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "id": 549, - "name": "a", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 544, - "src": "5259:1:3", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "BinaryOperation", - "operator": "!=", - "rightExpression": { - "id": 550, - "name": "b", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 546, - "src": "5264:1:3", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "src": "5259:6:3", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "id": 570, - "nodeType": "IfStatement", - "src": "5255:203:3", - "trueBody": { - "id": 569, - "nodeType": "Block", - "src": "5267:191:3", - "statements": [ - { - "eventCall": { - "arguments": [ - { - "hexValue": "4572726f723a2061203d3d2062206e6f7420736174697366696564205b75696e745d", - "id": 553, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "string", - "lValueRequested": false, - "nodeType": "Literal", - "src": "5290:36:3", - "typeDescriptions": { - "typeIdentifier": "t_stringliteral_3bb05d3ba160a011999668447ff4a7cdd52bf87aeb1d7b9b284ef23b37a2b183", - "typeString": "literal_string \"Error: a == b not satisfied [uint]\"" - }, - "value": "Error: a == b not satisfied [uint]" - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_stringliteral_3bb05d3ba160a011999668447ff4a7cdd52bf87aeb1d7b9b284ef23b37a2b183", - "typeString": "literal_string \"Error: a == b not satisfied [uint]\"" - } - ], - "id": 552, - "name": "log", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 63, - "src": "5286:3:3", - "typeDescriptions": { - "typeIdentifier": "t_function_event_nonpayable$_t_string_memory_ptr_$returns$__$", - "typeString": "function (string memory)" - } - }, - "id": 554, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "5286:41:3", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 555, - "nodeType": "EmitStatement", - "src": "5281:46:3" - }, - { - "eventCall": { - "arguments": [ - { - "hexValue": "20204578706563746564", - "id": 557, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "string", - "lValueRequested": false, - "nodeType": "Literal", - "src": "5361:12:3", - "typeDescriptions": { - "typeIdentifier": "t_stringliteral_42fa07d7c51ce5de92a0fc65dbf7e7800814fd01c258dc50e84d5be59184bf0b", - "typeString": "literal_string \" Expected\"" - }, - "value": " Expected" - }, - { - "id": 558, - "name": "b", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 546, - "src": "5375:1:3", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_stringliteral_42fa07d7c51ce5de92a0fc65dbf7e7800814fd01c258dc50e84d5be59184bf0b", - "typeString": "literal_string \" Expected\"" - }, - { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - ], - "id": 556, - "name": "log_named_uint", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 131, - "src": "5346:14:3", - "typeDescriptions": { - "typeIdentifier": "t_function_event_nonpayable$_t_string_memory_ptr_$_t_uint256_$returns$__$", - "typeString": "function (string memory,uint256)" - } - }, - "id": 559, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "5346:31:3", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 560, - "nodeType": "EmitStatement", - "src": "5341:36:3" - }, - { - "eventCall": { - "arguments": [ - { - "hexValue": "2020202041637475616c", - "id": 562, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "string", - "lValueRequested": false, - "nodeType": "Literal", - "src": "5411:12:3", - "typeDescriptions": { - "typeIdentifier": "t_stringliteral_d7896f3f645b3ba89da46bf231a5df16e525e587a84bc9b284dfb39958fb219b", - "typeString": "literal_string \" Actual\"" - }, - "value": " Actual" - }, - { - "id": 563, - "name": "a", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 544, - "src": "5425:1:3", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_stringliteral_d7896f3f645b3ba89da46bf231a5df16e525e587a84bc9b284dfb39958fb219b", - "typeString": "literal_string \" Actual\"" - }, - { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - ], - "id": 561, - "name": "log_named_uint", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 131, - "src": "5396:14:3", - "typeDescriptions": { - "typeIdentifier": "t_function_event_nonpayable$_t_string_memory_ptr_$_t_uint256_$returns$__$", - "typeString": "function (string memory,uint256)" - } - }, - "id": 564, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "5396:31:3", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 565, - "nodeType": "EmitStatement", - "src": "5391:36:3" - }, - { - "expression": { - "arguments": [], - "expression": { - "argumentTypes": [], - "id": 566, - "name": "fail", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 274, - "src": "5441:4:3", - "typeDescriptions": { - "typeIdentifier": "t_function_internal_nonpayable$__$returns$__$", - "typeString": "function ()" - } - }, - "id": 567, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "5441:6:3", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 568, - "nodeType": "ExpressionStatement", - "src": "5441:6:3" - } - ] - } - } - ] - }, - "implemented": true, - "kind": "function", - "modifiers": [], - "name": "assertEq", - "nameLocation": "5211:8:3", - "parameters": { - "id": 547, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 544, - "mutability": "mutable", - "name": "a", - "nameLocation": "5225:1:3", - "nodeType": "VariableDeclaration", - "scope": 572, - "src": "5220:6:3", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 543, - "name": "uint", - "nodeType": "ElementaryTypeName", - "src": "5220:4:3", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 546, - "mutability": "mutable", - "name": "b", - "nameLocation": "5233:1:3", - "nodeType": "VariableDeclaration", - "scope": 572, - "src": "5228:6:3", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 545, - "name": "uint", - "nodeType": "ElementaryTypeName", - "src": "5228:4:3", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "visibility": "internal" - } - ], - "src": "5219:16:3" - }, - "returnParameters": { - "id": 548, - "nodeType": "ParameterList", - "parameters": [], - "src": "5245:0:3" - }, - "scope": 1844, - "stateMutability": "nonpayable", - "virtual": false, - "visibility": "internal" - }, - { - "id": 597, - "nodeType": "FunctionDefinition", - "src": "5469:178:3", - "body": { - "id": 596, - "nodeType": "Block", - "src": "5531:116:3", - "statements": [ - { - "condition": { - "commonType": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "id": 583, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "id": 581, - "name": "a", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 574, - "src": "5545:1:3", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "BinaryOperation", - "operator": "!=", - "rightExpression": { - "id": 582, - "name": "b", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 576, - "src": "5550:1:3", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "src": "5545:6:3", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "id": 595, - "nodeType": "IfStatement", - "src": "5541:100:3", - "trueBody": { - "id": 594, - "nodeType": "Block", - "src": "5553:88:3", - "statements": [ - { - "eventCall": { - "arguments": [ - { - "hexValue": "4572726f72", - "id": 585, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "string", - "lValueRequested": false, - "nodeType": "Literal", - "src": "5589:7:3", - "typeDescriptions": { - "typeIdentifier": "t_stringliteral_e342daa49723ff3485f4ff5f755a17b8bc9c3c33bbd312ceee37c94eebfe45c1", - "typeString": "literal_string \"Error\"" - }, - "value": "Error" - }, - { - "id": 586, - "name": "err", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 578, - "src": "5598:3:3", - "typeDescriptions": { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string memory" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_stringliteral_e342daa49723ff3485f4ff5f755a17b8bc9c3c33bbd312ceee37c94eebfe45c1", - "typeString": "literal_string \"Error\"" - }, - { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string memory" - } - ], - "id": 584, - "name": "log_named_string", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 143, - "src": "5572:16:3", - "typeDescriptions": { - "typeIdentifier": "t_function_event_nonpayable$_t_string_memory_ptr_$_t_string_memory_ptr_$returns$__$", - "typeString": "function (string memory,string memory)" - } - }, - "id": 587, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "5572:30:3", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 588, - "nodeType": "EmitStatement", - "src": "5567:35:3" - }, - { - "expression": { - "arguments": [ - { - "id": 590, - "name": "a", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 574, - "src": "5625:1:3", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - { - "id": 591, - "name": "b", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 576, - "src": "5628:1:3", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - ], - "id": 589, - "name": "assertEq", - "nodeType": "Identifier", - "overloadedDeclarations": [ - 378, - 403, - 433, - 458, - 517, - 542, - 572, - 597, - 1697, - 1732 - ], - "referencedDeclaration": 572, - "src": "5616:8:3", - "typeDescriptions": { - "typeIdentifier": "t_function_internal_nonpayable$_t_uint256_$_t_uint256_$returns$__$", - "typeString": "function (uint256,uint256)" - } - }, - "id": 592, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "5616:14:3", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 593, - "nodeType": "ExpressionStatement", - "src": "5616:14:3" - } - ] - } - } - ] - }, - "implemented": true, - "kind": "function", - "modifiers": [], - "name": "assertEq", - "nameLocation": "5478:8:3", - "parameters": { - "id": 579, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 574, - "mutability": "mutable", - "name": "a", - "nameLocation": "5492:1:3", - "nodeType": "VariableDeclaration", - "scope": 597, - "src": "5487:6:3", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 573, - "name": "uint", - "nodeType": "ElementaryTypeName", - "src": "5487:4:3", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 576, - "mutability": "mutable", - "name": "b", - "nameLocation": "5500:1:3", - "nodeType": "VariableDeclaration", - "scope": 597, - "src": "5495:6:3", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 575, - "name": "uint", - "nodeType": "ElementaryTypeName", - "src": "5495:4:3", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 578, - "mutability": "mutable", - "name": "err", - "nameLocation": "5517:3:3", - "nodeType": "VariableDeclaration", - "scope": 597, - "src": "5503:17:3", - "stateVariable": false, - "storageLocation": "memory", - "typeDescriptions": { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string" - }, - "typeName": { - "id": 577, - "name": "string", - "nodeType": "ElementaryTypeName", - "src": "5503:6:3", - "typeDescriptions": { - "typeIdentifier": "t_string_storage_ptr", - "typeString": "string" - } - }, - "visibility": "internal" - } - ], - "src": "5486:35:3" - }, - "returnParameters": { - "id": 580, - "nodeType": "ParameterList", - "parameters": [], - "src": "5531:0:3" - }, - "scope": 1844, - "stateMutability": "nonpayable", - "virtual": false, - "visibility": "internal" - }, - { - "id": 631, - "nodeType": "FunctionDefinition", - "src": "5652:323:3", - "body": { - "id": 630, - "nodeType": "Block", - "src": "5715:260:3", - "statements": [ - { - "condition": { - "commonType": { - "typeIdentifier": "t_int256", - "typeString": "int256" - }, - "id": 608, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "id": 606, - "name": "a", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 599, - "src": "5729:1:3", - "typeDescriptions": { - "typeIdentifier": "t_int256", - "typeString": "int256" - } - }, - "nodeType": "BinaryOperation", - "operator": "!=", - "rightExpression": { - "id": 607, - "name": "b", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 601, - "src": "5734:1:3", - "typeDescriptions": { - "typeIdentifier": "t_int256", - "typeString": "int256" - } - }, - "src": "5729:6:3", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "id": 629, - "nodeType": "IfStatement", - "src": "5725:244:3", - "trueBody": { - "id": 628, - "nodeType": "Block", - "src": "5737:232:3", - "statements": [ - { - "eventCall": { - "arguments": [ - { - "hexValue": "4572726f723a2061203d3d2062206e6f7420736174697366696564205b646563696d616c20696e745d", - "id": 610, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "string", - "lValueRequested": false, - "nodeType": "Literal", - "src": "5760:43:3", - "typeDescriptions": { - "typeIdentifier": "t_stringliteral_3ee6ef9b326324a79dedc7af5585ef9f689364368b4e76dd3a37559719a19fe6", - "typeString": "literal_string \"Error: a == b not satisfied [decimal int]\"" - }, - "value": "Error: a == b not satisfied [decimal int]" - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_stringliteral_3ee6ef9b326324a79dedc7af5585ef9f689364368b4e76dd3a37559719a19fe6", - "typeString": "literal_string \"Error: a == b not satisfied [decimal int]\"" - } - ], - "id": 609, - "name": "log", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 63, - "src": "5756:3:3", - "typeDescriptions": { - "typeIdentifier": "t_function_event_nonpayable$_t_string_memory_ptr_$returns$__$", - "typeString": "function (string memory)" - } - }, - "id": 611, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "5756:48:3", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 612, - "nodeType": "EmitStatement", - "src": "5751:53:3" - }, - { - "eventCall": { - "arguments": [ - { - "hexValue": "20204578706563746564", - "id": 614, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "string", - "lValueRequested": false, - "nodeType": "Literal", - "src": "5845:12:3", - "typeDescriptions": { - "typeIdentifier": "t_stringliteral_42fa07d7c51ce5de92a0fc65dbf7e7800814fd01c258dc50e84d5be59184bf0b", - "typeString": "literal_string \" Expected\"" - }, - "value": " Expected" - }, - { - "id": 615, - "name": "b", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 601, - "src": "5859:1:3", - "typeDescriptions": { - "typeIdentifier": "t_int256", - "typeString": "int256" - } - }, - { - "id": 616, - "name": "decimals", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 603, - "src": "5862:8:3", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_stringliteral_42fa07d7c51ce5de92a0fc65dbf7e7800814fd01c258dc50e84d5be59184bf0b", - "typeString": "literal_string \" Expected\"" - }, - { - "typeIdentifier": "t_int256", - "typeString": "int256" - }, - { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - ], - "id": 613, - "name": "log_named_decimal_int", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 111, - "src": "5823:21:3", - "typeDescriptions": { - "typeIdentifier": "t_function_event_nonpayable$_t_string_memory_ptr_$_t_int256_$_t_uint256_$returns$__$", - "typeString": "function (string memory,int256,uint256)" - } - }, - "id": 617, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "5823:48:3", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 618, - "nodeType": "EmitStatement", - "src": "5818:53:3" - }, - { - "eventCall": { - "arguments": [ - { - "hexValue": "2020202041637475616c", - "id": 620, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "string", - "lValueRequested": false, - "nodeType": "Literal", - "src": "5912:12:3", - "typeDescriptions": { - "typeIdentifier": "t_stringliteral_d7896f3f645b3ba89da46bf231a5df16e525e587a84bc9b284dfb39958fb219b", - "typeString": "literal_string \" Actual\"" - }, - "value": " Actual" - }, - { - "id": 621, - "name": "a", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 599, - "src": "5926:1:3", - "typeDescriptions": { - "typeIdentifier": "t_int256", - "typeString": "int256" - } - }, - { - "id": 622, - "name": "decimals", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 603, - "src": "5929:8:3", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_stringliteral_d7896f3f645b3ba89da46bf231a5df16e525e587a84bc9b284dfb39958fb219b", - "typeString": "literal_string \" Actual\"" - }, - { - "typeIdentifier": "t_int256", - "typeString": "int256" - }, - { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - ], - "id": 619, - "name": "log_named_decimal_int", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 111, - "src": "5890:21:3", - "typeDescriptions": { - "typeIdentifier": "t_function_event_nonpayable$_t_string_memory_ptr_$_t_int256_$_t_uint256_$returns$__$", - "typeString": "function (string memory,int256,uint256)" - } - }, - "id": 623, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "5890:48:3", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 624, - "nodeType": "EmitStatement", - "src": "5885:53:3" - }, - { - "expression": { - "arguments": [], - "expression": { - "argumentTypes": [], - "id": 625, - "name": "fail", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 274, - "src": "5952:4:3", - "typeDescriptions": { - "typeIdentifier": "t_function_internal_nonpayable$__$returns$__$", - "typeString": "function ()" - } - }, - "id": 626, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "5952:6:3", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 627, - "nodeType": "ExpressionStatement", - "src": "5952:6:3" - } - ] - } - } - ] - }, - "implemented": true, - "kind": "function", - "modifiers": [], - "name": "assertEqDecimal", - "nameLocation": "5661:15:3", - "parameters": { - "id": 604, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 599, - "mutability": "mutable", - "name": "a", - "nameLocation": "5681:1:3", - "nodeType": "VariableDeclaration", - "scope": 631, - "src": "5677:5:3", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_int256", - "typeString": "int256" - }, - "typeName": { - "id": 598, - "name": "int", - "nodeType": "ElementaryTypeName", - "src": "5677:3:3", - "typeDescriptions": { - "typeIdentifier": "t_int256", - "typeString": "int256" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 601, - "mutability": "mutable", - "name": "b", - "nameLocation": "5688:1:3", - "nodeType": "VariableDeclaration", - "scope": 631, - "src": "5684:5:3", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_int256", - "typeString": "int256" - }, - "typeName": { - "id": 600, - "name": "int", - "nodeType": "ElementaryTypeName", - "src": "5684:3:3", - "typeDescriptions": { - "typeIdentifier": "t_int256", - "typeString": "int256" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 603, - "mutability": "mutable", - "name": "decimals", - "nameLocation": "5696:8:3", - "nodeType": "VariableDeclaration", - "scope": 631, - "src": "5691:13:3", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 602, - "name": "uint", - "nodeType": "ElementaryTypeName", - "src": "5691:4:3", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "visibility": "internal" - } - ], - "src": "5676:29:3" - }, - "returnParameters": { - "id": 605, - "nodeType": "ParameterList", - "parameters": [], - "src": "5715:0:3" - }, - "scope": 1844, - "stateMutability": "nonpayable", - "virtual": false, - "visibility": "internal" - }, - { - "id": 659, - "nodeType": "FunctionDefinition", - "src": "5980:215:3", - "body": { - "id": 658, - "nodeType": "Block", - "src": "6062:133:3", - "statements": [ - { - "condition": { - "commonType": { - "typeIdentifier": "t_int256", - "typeString": "int256" - }, - "id": 644, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "id": 642, - "name": "a", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 633, - "src": "6076:1:3", - "typeDescriptions": { - "typeIdentifier": "t_int256", - "typeString": "int256" - } - }, - "nodeType": "BinaryOperation", - "operator": "!=", - "rightExpression": { - "id": 643, - "name": "b", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 635, - "src": "6081:1:3", - "typeDescriptions": { - "typeIdentifier": "t_int256", - "typeString": "int256" - } - }, - "src": "6076:6:3", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "id": 657, - "nodeType": "IfStatement", - "src": "6072:117:3", - "trueBody": { - "id": 656, - "nodeType": "Block", - "src": "6084:105:3", - "statements": [ - { - "eventCall": { - "arguments": [ - { - "hexValue": "4572726f72", - "id": 646, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "string", - "lValueRequested": false, - "nodeType": "Literal", - "src": "6120:7:3", - "typeDescriptions": { - "typeIdentifier": "t_stringliteral_e342daa49723ff3485f4ff5f755a17b8bc9c3c33bbd312ceee37c94eebfe45c1", - "typeString": "literal_string \"Error\"" - }, - "value": "Error" - }, - { - "id": 647, - "name": "err", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 639, - "src": "6129:3:3", - "typeDescriptions": { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string memory" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_stringliteral_e342daa49723ff3485f4ff5f755a17b8bc9c3c33bbd312ceee37c94eebfe45c1", - "typeString": "literal_string \"Error\"" - }, - { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string memory" - } - ], - "id": 645, - "name": "log_named_string", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 143, - "src": "6103:16:3", - "typeDescriptions": { - "typeIdentifier": "t_function_event_nonpayable$_t_string_memory_ptr_$_t_string_memory_ptr_$returns$__$", - "typeString": "function (string memory,string memory)" - } - }, - "id": 648, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "6103:30:3", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 649, - "nodeType": "EmitStatement", - "src": "6098:35:3" - }, - { - "expression": { - "arguments": [ - { - "id": 651, - "name": "a", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 633, - "src": "6163:1:3", - "typeDescriptions": { - "typeIdentifier": "t_int256", - "typeString": "int256" - } - }, - { - "id": 652, - "name": "b", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 635, - "src": "6166:1:3", - "typeDescriptions": { - "typeIdentifier": "t_int256", - "typeString": "int256" - } - }, - { - "id": 653, - "name": "decimals", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 637, - "src": "6169:8:3", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_int256", - "typeString": "int256" - }, - { - "typeIdentifier": "t_int256", - "typeString": "int256" - }, - { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - ], - "id": 650, - "name": "assertEqDecimal", - "nodeType": "Identifier", - "overloadedDeclarations": [ - 631, - 659, - 693, - 721 - ], - "referencedDeclaration": 631, - "src": "6147:15:3", - "typeDescriptions": { - "typeIdentifier": "t_function_internal_nonpayable$_t_int256_$_t_int256_$_t_uint256_$returns$__$", - "typeString": "function (int256,int256,uint256)" - } - }, - "id": 654, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "6147:31:3", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 655, - "nodeType": "ExpressionStatement", - "src": "6147:31:3" - } - ] - } - } - ] - }, - "implemented": true, - "kind": "function", - "modifiers": [], - "name": "assertEqDecimal", - "nameLocation": "5989:15:3", - "parameters": { - "id": 640, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 633, - "mutability": "mutable", - "name": "a", - "nameLocation": "6009:1:3", - "nodeType": "VariableDeclaration", - "scope": 659, - "src": "6005:5:3", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_int256", - "typeString": "int256" - }, - "typeName": { - "id": 632, - "name": "int", - "nodeType": "ElementaryTypeName", - "src": "6005:3:3", - "typeDescriptions": { - "typeIdentifier": "t_int256", - "typeString": "int256" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 635, - "mutability": "mutable", - "name": "b", - "nameLocation": "6016:1:3", - "nodeType": "VariableDeclaration", - "scope": 659, - "src": "6012:5:3", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_int256", - "typeString": "int256" - }, - "typeName": { - "id": 634, - "name": "int", - "nodeType": "ElementaryTypeName", - "src": "6012:3:3", - "typeDescriptions": { - "typeIdentifier": "t_int256", - "typeString": "int256" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 637, - "mutability": "mutable", - "name": "decimals", - "nameLocation": "6024:8:3", - "nodeType": "VariableDeclaration", - "scope": 659, - "src": "6019:13:3", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 636, - "name": "uint", - "nodeType": "ElementaryTypeName", - "src": "6019:4:3", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 639, - "mutability": "mutable", - "name": "err", - "nameLocation": "6048:3:3", - "nodeType": "VariableDeclaration", - "scope": 659, - "src": "6034:17:3", - "stateVariable": false, - "storageLocation": "memory", - "typeDescriptions": { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string" - }, - "typeName": { - "id": 638, - "name": "string", - "nodeType": "ElementaryTypeName", - "src": "6034:6:3", - "typeDescriptions": { - "typeIdentifier": "t_string_storage_ptr", - "typeString": "string" - } - }, - "visibility": "internal" - } - ], - "src": "6004:48:3" - }, - "returnParameters": { - "id": 641, - "nodeType": "ParameterList", - "parameters": [], - "src": "6062:0:3" - }, - "scope": 1844, - "stateMutability": "nonpayable", - "virtual": false, - "visibility": "internal" - }, - { - "id": 693, - "nodeType": "FunctionDefinition", - "src": "6200:328:3", - "body": { - "id": 692, - "nodeType": "Block", - "src": "6265:263:3", - "statements": [ - { - "condition": { - "commonType": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "id": 670, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "id": 668, - "name": "a", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 661, - "src": "6279:1:3", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "BinaryOperation", - "operator": "!=", - "rightExpression": { - "id": 669, - "name": "b", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 663, - "src": "6284:1:3", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "src": "6279:6:3", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "id": 691, - "nodeType": "IfStatement", - "src": "6275:247:3", - "trueBody": { - "id": 690, - "nodeType": "Block", - "src": "6287:235:3", - "statements": [ - { - "eventCall": { - "arguments": [ - { - "hexValue": "4572726f723a2061203d3d2062206e6f7420736174697366696564205b646563696d616c2075696e745d", - "id": 672, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "string", - "lValueRequested": false, - "nodeType": "Literal", - "src": "6310:44:3", - "typeDescriptions": { - "typeIdentifier": "t_stringliteral_acd59a69b2dc4bcee2d5b2a205a178a5eace192e68808cc4db1cea91cdc48141", - "typeString": "literal_string \"Error: a == b not satisfied [decimal uint]\"" - }, - "value": "Error: a == b not satisfied [decimal uint]" - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_stringliteral_acd59a69b2dc4bcee2d5b2a205a178a5eace192e68808cc4db1cea91cdc48141", - "typeString": "literal_string \"Error: a == b not satisfied [decimal uint]\"" - } - ], - "id": 671, - "name": "log", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 63, - "src": "6306:3:3", - "typeDescriptions": { - "typeIdentifier": "t_function_event_nonpayable$_t_string_memory_ptr_$returns$__$", - "typeString": "function (string memory)" - } - }, - "id": 673, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "6306:49:3", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 674, - "nodeType": "EmitStatement", - "src": "6301:54:3" - }, - { - "eventCall": { - "arguments": [ - { - "hexValue": "20204578706563746564", - "id": 676, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "string", - "lValueRequested": false, - "nodeType": "Literal", - "src": "6397:12:3", - "typeDescriptions": { - "typeIdentifier": "t_stringliteral_42fa07d7c51ce5de92a0fc65dbf7e7800814fd01c258dc50e84d5be59184bf0b", - "typeString": "literal_string \" Expected\"" - }, - "value": " Expected" - }, - { - "id": 677, - "name": "b", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 663, - "src": "6411:1:3", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - { - "id": 678, - "name": "decimals", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 665, - "src": "6414:8:3", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_stringliteral_42fa07d7c51ce5de92a0fc65dbf7e7800814fd01c258dc50e84d5be59184bf0b", - "typeString": "literal_string \" Expected\"" - }, - { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - ], - "id": 675, - "name": "log_named_decimal_uint", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 119, - "src": "6374:22:3", - "typeDescriptions": { - "typeIdentifier": "t_function_event_nonpayable$_t_string_memory_ptr_$_t_uint256_$_t_uint256_$returns$__$", - "typeString": "function (string memory,uint256,uint256)" - } - }, - "id": 679, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "6374:49:3", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 680, - "nodeType": "EmitStatement", - "src": "6369:54:3" - }, - { - "eventCall": { - "arguments": [ - { - "hexValue": "2020202041637475616c", - "id": 682, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "string", - "lValueRequested": false, - "nodeType": "Literal", - "src": "6465:12:3", - "typeDescriptions": { - "typeIdentifier": "t_stringliteral_d7896f3f645b3ba89da46bf231a5df16e525e587a84bc9b284dfb39958fb219b", - "typeString": "literal_string \" Actual\"" - }, - "value": " Actual" - }, - { - "id": 683, - "name": "a", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 661, - "src": "6479:1:3", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - { - "id": 684, - "name": "decimals", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 665, - "src": "6482:8:3", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_stringliteral_d7896f3f645b3ba89da46bf231a5df16e525e587a84bc9b284dfb39958fb219b", - "typeString": "literal_string \" Actual\"" - }, - { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - ], - "id": 681, - "name": "log_named_decimal_uint", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 119, - "src": "6442:22:3", - "typeDescriptions": { - "typeIdentifier": "t_function_event_nonpayable$_t_string_memory_ptr_$_t_uint256_$_t_uint256_$returns$__$", - "typeString": "function (string memory,uint256,uint256)" - } - }, - "id": 685, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "6442:49:3", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 686, - "nodeType": "EmitStatement", - "src": "6437:54:3" - }, - { - "expression": { - "arguments": [], - "expression": { - "argumentTypes": [], - "id": 687, - "name": "fail", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 274, - "src": "6505:4:3", - "typeDescriptions": { - "typeIdentifier": "t_function_internal_nonpayable$__$returns$__$", - "typeString": "function ()" - } - }, - "id": 688, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "6505:6:3", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 689, - "nodeType": "ExpressionStatement", - "src": "6505:6:3" - } - ] - } - } - ] - }, - "implemented": true, - "kind": "function", - "modifiers": [], - "name": "assertEqDecimal", - "nameLocation": "6209:15:3", - "parameters": { - "id": 666, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 661, - "mutability": "mutable", - "name": "a", - "nameLocation": "6230:1:3", - "nodeType": "VariableDeclaration", - "scope": 693, - "src": "6225:6:3", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 660, - "name": "uint", - "nodeType": "ElementaryTypeName", - "src": "6225:4:3", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 663, - "mutability": "mutable", - "name": "b", - "nameLocation": "6238:1:3", - "nodeType": "VariableDeclaration", - "scope": 693, - "src": "6233:6:3", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 662, - "name": "uint", - "nodeType": "ElementaryTypeName", - "src": "6233:4:3", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 665, - "mutability": "mutable", - "name": "decimals", - "nameLocation": "6246:8:3", - "nodeType": "VariableDeclaration", - "scope": 693, - "src": "6241:13:3", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 664, - "name": "uint", - "nodeType": "ElementaryTypeName", - "src": "6241:4:3", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "visibility": "internal" - } - ], - "src": "6224:31:3" - }, - "returnParameters": { - "id": 667, - "nodeType": "ParameterList", - "parameters": [], - "src": "6265:0:3" - }, - "scope": 1844, - "stateMutability": "nonpayable", - "virtual": false, - "visibility": "internal" - }, - { - "id": 721, - "nodeType": "FunctionDefinition", - "src": "6533:217:3", - "body": { - "id": 720, - "nodeType": "Block", - "src": "6617:133:3", - "statements": [ - { - "condition": { - "commonType": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "id": 706, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "id": 704, - "name": "a", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 695, - "src": "6631:1:3", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "BinaryOperation", - "operator": "!=", - "rightExpression": { - "id": 705, - "name": "b", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 697, - "src": "6636:1:3", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "src": "6631:6:3", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "id": 719, - "nodeType": "IfStatement", - "src": "6627:117:3", - "trueBody": { - "id": 718, - "nodeType": "Block", - "src": "6639:105:3", - "statements": [ - { - "eventCall": { - "arguments": [ - { - "hexValue": "4572726f72", - "id": 708, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "string", - "lValueRequested": false, - "nodeType": "Literal", - "src": "6675:7:3", - "typeDescriptions": { - "typeIdentifier": "t_stringliteral_e342daa49723ff3485f4ff5f755a17b8bc9c3c33bbd312ceee37c94eebfe45c1", - "typeString": "literal_string \"Error\"" - }, - "value": "Error" - }, - { - "id": 709, - "name": "err", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 701, - "src": "6684:3:3", - "typeDescriptions": { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string memory" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_stringliteral_e342daa49723ff3485f4ff5f755a17b8bc9c3c33bbd312ceee37c94eebfe45c1", - "typeString": "literal_string \"Error\"" - }, - { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string memory" - } - ], - "id": 707, - "name": "log_named_string", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 143, - "src": "6658:16:3", - "typeDescriptions": { - "typeIdentifier": "t_function_event_nonpayable$_t_string_memory_ptr_$_t_string_memory_ptr_$returns$__$", - "typeString": "function (string memory,string memory)" - } - }, - "id": 710, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "6658:30:3", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 711, - "nodeType": "EmitStatement", - "src": "6653:35:3" - }, - { - "expression": { - "arguments": [ - { - "id": 713, - "name": "a", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 695, - "src": "6718:1:3", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - { - "id": 714, - "name": "b", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 697, - "src": "6721:1:3", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - { - "id": 715, - "name": "decimals", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 699, - "src": "6724:8:3", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - ], - "id": 712, - "name": "assertEqDecimal", - "nodeType": "Identifier", - "overloadedDeclarations": [ - 631, - 659, - 693, - 721 - ], - "referencedDeclaration": 693, - "src": "6702:15:3", - "typeDescriptions": { - "typeIdentifier": "t_function_internal_nonpayable$_t_uint256_$_t_uint256_$_t_uint256_$returns$__$", - "typeString": "function (uint256,uint256,uint256)" - } - }, - "id": 716, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "6702:31:3", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 717, - "nodeType": "ExpressionStatement", - "src": "6702:31:3" - } - ] - } - } - ] - }, - "implemented": true, - "kind": "function", - "modifiers": [], - "name": "assertEqDecimal", - "nameLocation": "6542:15:3", - "parameters": { - "id": 702, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 695, - "mutability": "mutable", - "name": "a", - "nameLocation": "6563:1:3", - "nodeType": "VariableDeclaration", - "scope": 721, - "src": "6558:6:3", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 694, - "name": "uint", - "nodeType": "ElementaryTypeName", - "src": "6558:4:3", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 697, - "mutability": "mutable", - "name": "b", - "nameLocation": "6571:1:3", - "nodeType": "VariableDeclaration", - "scope": 721, - "src": "6566:6:3", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 696, - "name": "uint", - "nodeType": "ElementaryTypeName", - "src": "6566:4:3", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 699, - "mutability": "mutable", - "name": "decimals", - "nameLocation": "6579:8:3", - "nodeType": "VariableDeclaration", - "scope": 721, - "src": "6574:13:3", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 698, - "name": "uint", - "nodeType": "ElementaryTypeName", - "src": "6574:4:3", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 701, - "mutability": "mutable", - "name": "err", - "nameLocation": "6603:3:3", - "nodeType": "VariableDeclaration", - "scope": 721, - "src": "6589:17:3", - "stateVariable": false, - "storageLocation": "memory", - "typeDescriptions": { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string" - }, - "typeName": { - "id": 700, - "name": "string", - "nodeType": "ElementaryTypeName", - "src": "6589:6:3", - "typeDescriptions": { - "typeIdentifier": "t_string_storage_ptr", - "typeString": "string" - } - }, - "visibility": "internal" - } - ], - "src": "6557:50:3" - }, - "returnParameters": { - "id": 703, - "nodeType": "ParameterList", - "parameters": [], - "src": "6617:0:3" - }, - "scope": 1844, - "stateMutability": "nonpayable", - "virtual": false, - "visibility": "internal" - }, - { - "id": 751, - "nodeType": "FunctionDefinition", - "src": "6756:259:3", - "body": { - "id": 750, - "nodeType": "Block", - "src": "6799:216:3", - "statements": [ - { - "condition": { - "commonType": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "id": 730, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "id": 728, - "name": "a", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 723, - "src": "6813:1:3", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "BinaryOperation", - "operator": "<=", - "rightExpression": { - "id": 729, - "name": "b", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 725, - "src": "6818:1:3", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "src": "6813:6:3", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "id": 749, - "nodeType": "IfStatement", - "src": "6809:200:3", - "trueBody": { - "id": 748, - "nodeType": "Block", - "src": "6821:188:3", - "statements": [ - { - "eventCall": { - "arguments": [ - { - "hexValue": "4572726f723a2061203e2062206e6f7420736174697366696564205b75696e745d", - "id": 732, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "string", - "lValueRequested": false, - "nodeType": "Literal", - "src": "6844:35:3", - "typeDescriptions": { - "typeIdentifier": "t_stringliteral_71977b46fbd6a64b4465b93c7a77bcaa06103df599ead9f7e7004b34129c9e3a", - "typeString": "literal_string \"Error: a > b not satisfied [uint]\"" - }, - "value": "Error: a > b not satisfied [uint]" - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_stringliteral_71977b46fbd6a64b4465b93c7a77bcaa06103df599ead9f7e7004b34129c9e3a", - "typeString": "literal_string \"Error: a > b not satisfied [uint]\"" - } - ], - "id": 731, - "name": "log", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 63, - "src": "6840:3:3", - "typeDescriptions": { - "typeIdentifier": "t_function_event_nonpayable$_t_string_memory_ptr_$returns$__$", - "typeString": "function (string memory)" - } - }, - "id": 733, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "6840:40:3", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 734, - "nodeType": "EmitStatement", - "src": "6835:45:3" - }, - { - "eventCall": { - "arguments": [ - { - "hexValue": "202056616c75652061", - "id": 736, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "string", - "lValueRequested": false, - "nodeType": "Literal", - "src": "6914:11:3", - "typeDescriptions": { - "typeIdentifier": "t_stringliteral_c592b529b874569f165479a5a4380dedf000796f11e04035f76bfa7310b31d26", - "typeString": "literal_string \" Value a\"" - }, - "value": " Value a" - }, - { - "id": 737, - "name": "a", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 723, - "src": "6927:1:3", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_stringliteral_c592b529b874569f165479a5a4380dedf000796f11e04035f76bfa7310b31d26", - "typeString": "literal_string \" Value a\"" - }, - { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - ], - "id": 735, - "name": "log_named_uint", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 131, - "src": "6899:14:3", - "typeDescriptions": { - "typeIdentifier": "t_function_event_nonpayable$_t_string_memory_ptr_$_t_uint256_$returns$__$", - "typeString": "function (string memory,uint256)" - } - }, - "id": 738, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "6899:30:3", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 739, - "nodeType": "EmitStatement", - "src": "6894:35:3" - }, - { - "eventCall": { - "arguments": [ - { - "hexValue": "202056616c75652062", - "id": 741, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "string", - "lValueRequested": false, - "nodeType": "Literal", - "src": "6963:11:3", - "typeDescriptions": { - "typeIdentifier": "t_stringliteral_e4b1d025132960c3fb1a582cf2366864dc416744d1b9770aa69fe3749623ebc3", - "typeString": "literal_string \" Value b\"" - }, - "value": " Value b" - }, - { - "id": 742, - "name": "b", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 725, - "src": "6976:1:3", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_stringliteral_e4b1d025132960c3fb1a582cf2366864dc416744d1b9770aa69fe3749623ebc3", - "typeString": "literal_string \" Value b\"" - }, - { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - ], - "id": 740, - "name": "log_named_uint", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 131, - "src": "6948:14:3", - "typeDescriptions": { - "typeIdentifier": "t_function_event_nonpayable$_t_string_memory_ptr_$_t_uint256_$returns$__$", - "typeString": "function (string memory,uint256)" - } - }, - "id": 743, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "6948:30:3", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 744, - "nodeType": "EmitStatement", - "src": "6943:35:3" - }, - { - "expression": { - "arguments": [], - "expression": { - "argumentTypes": [], - "id": 745, - "name": "fail", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 274, - "src": "6992:4:3", - "typeDescriptions": { - "typeIdentifier": "t_function_internal_nonpayable$__$returns$__$", - "typeString": "function ()" - } - }, - "id": 746, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "6992:6:3", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 747, - "nodeType": "ExpressionStatement", - "src": "6992:6:3" - } - ] - } - } - ] - }, - "implemented": true, - "kind": "function", - "modifiers": [], - "name": "assertGt", - "nameLocation": "6765:8:3", - "parameters": { - "id": 726, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 723, - "mutability": "mutable", - "name": "a", - "nameLocation": "6779:1:3", - "nodeType": "VariableDeclaration", - "scope": 751, - "src": "6774:6:3", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 722, - "name": "uint", - "nodeType": "ElementaryTypeName", - "src": "6774:4:3", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 725, - "mutability": "mutable", - "name": "b", - "nameLocation": "6787:1:3", - "nodeType": "VariableDeclaration", - "scope": 751, - "src": "6782:6:3", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 724, - "name": "uint", - "nodeType": "ElementaryTypeName", - "src": "6782:4:3", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "visibility": "internal" - } - ], - "src": "6773:16:3" - }, - "returnParameters": { - "id": 727, - "nodeType": "ParameterList", - "parameters": [], - "src": "6799:0:3" - }, - "scope": 1844, - "stateMutability": "nonpayable", - "virtual": false, - "visibility": "internal" - }, - { - "id": 776, - "nodeType": "FunctionDefinition", - "src": "7020:178:3", - "body": { - "id": 775, - "nodeType": "Block", - "src": "7082:116:3", - "statements": [ - { - "condition": { - "commonType": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "id": 762, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "id": 760, - "name": "a", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 753, - "src": "7096:1:3", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "BinaryOperation", - "operator": "<=", - "rightExpression": { - "id": 761, - "name": "b", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 755, - "src": "7101:1:3", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "src": "7096:6:3", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "id": 774, - "nodeType": "IfStatement", - "src": "7092:100:3", - "trueBody": { - "id": 773, - "nodeType": "Block", - "src": "7104:88:3", - "statements": [ - { - "eventCall": { - "arguments": [ - { - "hexValue": "4572726f72", - "id": 764, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "string", - "lValueRequested": false, - "nodeType": "Literal", - "src": "7140:7:3", - "typeDescriptions": { - "typeIdentifier": "t_stringliteral_e342daa49723ff3485f4ff5f755a17b8bc9c3c33bbd312ceee37c94eebfe45c1", - "typeString": "literal_string \"Error\"" - }, - "value": "Error" - }, - { - "id": 765, - "name": "err", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 757, - "src": "7149:3:3", - "typeDescriptions": { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string memory" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_stringliteral_e342daa49723ff3485f4ff5f755a17b8bc9c3c33bbd312ceee37c94eebfe45c1", - "typeString": "literal_string \"Error\"" - }, - { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string memory" - } - ], - "id": 763, - "name": "log_named_string", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 143, - "src": "7123:16:3", - "typeDescriptions": { - "typeIdentifier": "t_function_event_nonpayable$_t_string_memory_ptr_$_t_string_memory_ptr_$returns$__$", - "typeString": "function (string memory,string memory)" - } - }, - "id": 766, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "7123:30:3", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 767, - "nodeType": "EmitStatement", - "src": "7118:35:3" - }, - { - "expression": { - "arguments": [ - { - "id": 769, - "name": "a", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 753, - "src": "7176:1:3", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - { - "id": 770, - "name": "b", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 755, - "src": "7179:1:3", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - ], - "id": 768, - "name": "assertGt", - "nodeType": "Identifier", - "overloadedDeclarations": [ - 751, - 776, - 806, - 831 - ], - "referencedDeclaration": 751, - "src": "7167:8:3", - "typeDescriptions": { - "typeIdentifier": "t_function_internal_nonpayable$_t_uint256_$_t_uint256_$returns$__$", - "typeString": "function (uint256,uint256)" - } - }, - "id": 771, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "7167:14:3", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 772, - "nodeType": "ExpressionStatement", - "src": "7167:14:3" - } - ] - } - } - ] - }, - "implemented": true, - "kind": "function", - "modifiers": [], - "name": "assertGt", - "nameLocation": "7029:8:3", - "parameters": { - "id": 758, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 753, - "mutability": "mutable", - "name": "a", - "nameLocation": "7043:1:3", - "nodeType": "VariableDeclaration", - "scope": 776, - "src": "7038:6:3", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 752, - "name": "uint", - "nodeType": "ElementaryTypeName", - "src": "7038:4:3", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 755, - "mutability": "mutable", - "name": "b", - "nameLocation": "7051:1:3", - "nodeType": "VariableDeclaration", - "scope": 776, - "src": "7046:6:3", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 754, - "name": "uint", - "nodeType": "ElementaryTypeName", - "src": "7046:4:3", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 757, - "mutability": "mutable", - "name": "err", - "nameLocation": "7068:3:3", - "nodeType": "VariableDeclaration", - "scope": 776, - "src": "7054:17:3", - "stateVariable": false, - "storageLocation": "memory", - "typeDescriptions": { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string" - }, - "typeName": { - "id": 756, - "name": "string", - "nodeType": "ElementaryTypeName", - "src": "7054:6:3", - "typeDescriptions": { - "typeIdentifier": "t_string_storage_ptr", - "typeString": "string" - } - }, - "visibility": "internal" - } - ], - "src": "7037:35:3" - }, - "returnParameters": { - "id": 759, - "nodeType": "ParameterList", - "parameters": [], - "src": "7082:0:3" - }, - "scope": 1844, - "stateMutability": "nonpayable", - "virtual": false, - "visibility": "internal" - }, - { - "id": 806, - "nodeType": "FunctionDefinition", - "src": "7203:254:3", - "body": { - "id": 805, - "nodeType": "Block", - "src": "7244:213:3", - "statements": [ - { - "condition": { - "commonType": { - "typeIdentifier": "t_int256", - "typeString": "int256" - }, - "id": 785, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "id": 783, - "name": "a", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 778, - "src": "7258:1:3", - "typeDescriptions": { - "typeIdentifier": "t_int256", - "typeString": "int256" - } - }, - "nodeType": "BinaryOperation", - "operator": "<=", - "rightExpression": { - "id": 784, - "name": "b", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 780, - "src": "7263:1:3", - "typeDescriptions": { - "typeIdentifier": "t_int256", - "typeString": "int256" - } - }, - "src": "7258:6:3", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "id": 804, - "nodeType": "IfStatement", - "src": "7254:197:3", - "trueBody": { - "id": 803, - "nodeType": "Block", - "src": "7266:185:3", - "statements": [ - { - "eventCall": { - "arguments": [ - { - "hexValue": "4572726f723a2061203e2062206e6f7420736174697366696564205b696e745d", - "id": 787, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "string", - "lValueRequested": false, - "nodeType": "Literal", - "src": "7289:34:3", - "typeDescriptions": { - "typeIdentifier": "t_stringliteral_c6338b3f9677628b4efbdc683490461f2a94469341c3d2ff3d117001fb77d49b", - "typeString": "literal_string \"Error: a > b not satisfied [int]\"" - }, - "value": "Error: a > b not satisfied [int]" - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_stringliteral_c6338b3f9677628b4efbdc683490461f2a94469341c3d2ff3d117001fb77d49b", - "typeString": "literal_string \"Error: a > b not satisfied [int]\"" - } - ], - "id": 786, - "name": "log", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 63, - "src": "7285:3:3", - "typeDescriptions": { - "typeIdentifier": "t_function_event_nonpayable$_t_string_memory_ptr_$returns$__$", - "typeString": "function (string memory)" - } - }, - "id": 788, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "7285:39:3", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 789, - "nodeType": "EmitStatement", - "src": "7280:44:3" - }, - { - "eventCall": { - "arguments": [ - { - "hexValue": "202056616c75652061", - "id": 791, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "string", - "lValueRequested": false, - "nodeType": "Literal", - "src": "7357:11:3", - "typeDescriptions": { - "typeIdentifier": "t_stringliteral_c592b529b874569f165479a5a4380dedf000796f11e04035f76bfa7310b31d26", - "typeString": "literal_string \" Value a\"" - }, - "value": " Value a" - }, - { - "id": 792, - "name": "a", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 778, - "src": "7370:1:3", - "typeDescriptions": { - "typeIdentifier": "t_int256", - "typeString": "int256" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_stringliteral_c592b529b874569f165479a5a4380dedf000796f11e04035f76bfa7310b31d26", - "typeString": "literal_string \" Value a\"" - }, - { - "typeIdentifier": "t_int256", - "typeString": "int256" - } - ], - "id": 790, - "name": "log_named_int", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 125, - "src": "7343:13:3", - "typeDescriptions": { - "typeIdentifier": "t_function_event_nonpayable$_t_string_memory_ptr_$_t_int256_$returns$__$", - "typeString": "function (string memory,int256)" - } - }, - "id": 793, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "7343:29:3", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 794, - "nodeType": "EmitStatement", - "src": "7338:34:3" - }, - { - "eventCall": { - "arguments": [ - { - "hexValue": "202056616c75652062", - "id": 796, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "string", - "lValueRequested": false, - "nodeType": "Literal", - "src": "7405:11:3", - "typeDescriptions": { - "typeIdentifier": "t_stringliteral_e4b1d025132960c3fb1a582cf2366864dc416744d1b9770aa69fe3749623ebc3", - "typeString": "literal_string \" Value b\"" - }, - "value": " Value b" - }, - { - "id": 797, - "name": "b", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 780, - "src": "7418:1:3", - "typeDescriptions": { - "typeIdentifier": "t_int256", - "typeString": "int256" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_stringliteral_e4b1d025132960c3fb1a582cf2366864dc416744d1b9770aa69fe3749623ebc3", - "typeString": "literal_string \" Value b\"" - }, - { - "typeIdentifier": "t_int256", - "typeString": "int256" - } - ], - "id": 795, - "name": "log_named_int", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 125, - "src": "7391:13:3", - "typeDescriptions": { - "typeIdentifier": "t_function_event_nonpayable$_t_string_memory_ptr_$_t_int256_$returns$__$", - "typeString": "function (string memory,int256)" - } - }, - "id": 798, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "7391:29:3", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 799, - "nodeType": "EmitStatement", - "src": "7386:34:3" - }, - { - "expression": { - "arguments": [], - "expression": { - "argumentTypes": [], - "id": 800, - "name": "fail", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 274, - "src": "7434:4:3", - "typeDescriptions": { - "typeIdentifier": "t_function_internal_nonpayable$__$returns$__$", - "typeString": "function ()" - } - }, - "id": 801, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "7434:6:3", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 802, - "nodeType": "ExpressionStatement", - "src": "7434:6:3" - } - ] - } - } - ] - }, - "implemented": true, - "kind": "function", - "modifiers": [], - "name": "assertGt", - "nameLocation": "7212:8:3", - "parameters": { - "id": 781, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 778, - "mutability": "mutable", - "name": "a", - "nameLocation": "7225:1:3", - "nodeType": "VariableDeclaration", - "scope": 806, - "src": "7221:5:3", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_int256", - "typeString": "int256" - }, - "typeName": { - "id": 777, - "name": "int", - "nodeType": "ElementaryTypeName", - "src": "7221:3:3", - "typeDescriptions": { - "typeIdentifier": "t_int256", - "typeString": "int256" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 780, - "mutability": "mutable", - "name": "b", - "nameLocation": "7232:1:3", - "nodeType": "VariableDeclaration", - "scope": 806, - "src": "7228:5:3", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_int256", - "typeString": "int256" - }, - "typeName": { - "id": 779, - "name": "int", - "nodeType": "ElementaryTypeName", - "src": "7228:3:3", - "typeDescriptions": { - "typeIdentifier": "t_int256", - "typeString": "int256" - } - }, - "visibility": "internal" - } - ], - "src": "7220:14:3" - }, - "returnParameters": { - "id": 782, - "nodeType": "ParameterList", - "parameters": [], - "src": "7244:0:3" - }, - "scope": 1844, - "stateMutability": "nonpayable", - "virtual": false, - "visibility": "internal" - }, - { - "id": 831, - "nodeType": "FunctionDefinition", - "src": "7462:176:3", - "body": { - "id": 830, - "nodeType": "Block", - "src": "7522:116:3", - "statements": [ - { - "condition": { - "commonType": { - "typeIdentifier": "t_int256", - "typeString": "int256" - }, - "id": 817, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "id": 815, - "name": "a", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 808, - "src": "7536:1:3", - "typeDescriptions": { - "typeIdentifier": "t_int256", - "typeString": "int256" - } - }, - "nodeType": "BinaryOperation", - "operator": "<=", - "rightExpression": { - "id": 816, - "name": "b", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 810, - "src": "7541:1:3", - "typeDescriptions": { - "typeIdentifier": "t_int256", - "typeString": "int256" - } - }, - "src": "7536:6:3", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "id": 829, - "nodeType": "IfStatement", - "src": "7532:100:3", - "trueBody": { - "id": 828, - "nodeType": "Block", - "src": "7544:88:3", - "statements": [ - { - "eventCall": { - "arguments": [ - { - "hexValue": "4572726f72", - "id": 819, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "string", - "lValueRequested": false, - "nodeType": "Literal", - "src": "7580:7:3", - "typeDescriptions": { - "typeIdentifier": "t_stringliteral_e342daa49723ff3485f4ff5f755a17b8bc9c3c33bbd312ceee37c94eebfe45c1", - "typeString": "literal_string \"Error\"" - }, - "value": "Error" - }, - { - "id": 820, - "name": "err", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 812, - "src": "7589:3:3", - "typeDescriptions": { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string memory" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_stringliteral_e342daa49723ff3485f4ff5f755a17b8bc9c3c33bbd312ceee37c94eebfe45c1", - "typeString": "literal_string \"Error\"" - }, - { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string memory" - } - ], - "id": 818, - "name": "log_named_string", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 143, - "src": "7563:16:3", - "typeDescriptions": { - "typeIdentifier": "t_function_event_nonpayable$_t_string_memory_ptr_$_t_string_memory_ptr_$returns$__$", - "typeString": "function (string memory,string memory)" - } - }, - "id": 821, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "7563:30:3", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 822, - "nodeType": "EmitStatement", - "src": "7558:35:3" - }, - { - "expression": { - "arguments": [ - { - "id": 824, - "name": "a", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 808, - "src": "7616:1:3", - "typeDescriptions": { - "typeIdentifier": "t_int256", - "typeString": "int256" - } - }, - { - "id": 825, - "name": "b", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 810, - "src": "7619:1:3", - "typeDescriptions": { - "typeIdentifier": "t_int256", - "typeString": "int256" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_int256", - "typeString": "int256" - }, - { - "typeIdentifier": "t_int256", - "typeString": "int256" - } - ], - "id": 823, - "name": "assertGt", - "nodeType": "Identifier", - "overloadedDeclarations": [ - 751, - 776, - 806, - 831 - ], - "referencedDeclaration": 806, - "src": "7607:8:3", - "typeDescriptions": { - "typeIdentifier": "t_function_internal_nonpayable$_t_int256_$_t_int256_$returns$__$", - "typeString": "function (int256,int256)" - } - }, - "id": 826, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "7607:14:3", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 827, - "nodeType": "ExpressionStatement", - "src": "7607:14:3" - } - ] - } - } - ] - }, - "implemented": true, - "kind": "function", - "modifiers": [], - "name": "assertGt", - "nameLocation": "7471:8:3", - "parameters": { - "id": 813, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 808, - "mutability": "mutable", - "name": "a", - "nameLocation": "7484:1:3", - "nodeType": "VariableDeclaration", - "scope": 831, - "src": "7480:5:3", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_int256", - "typeString": "int256" - }, - "typeName": { - "id": 807, - "name": "int", - "nodeType": "ElementaryTypeName", - "src": "7480:3:3", - "typeDescriptions": { - "typeIdentifier": "t_int256", - "typeString": "int256" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 810, - "mutability": "mutable", - "name": "b", - "nameLocation": "7491:1:3", - "nodeType": "VariableDeclaration", - "scope": 831, - "src": "7487:5:3", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_int256", - "typeString": "int256" - }, - "typeName": { - "id": 809, - "name": "int", - "nodeType": "ElementaryTypeName", - "src": "7487:3:3", - "typeDescriptions": { - "typeIdentifier": "t_int256", - "typeString": "int256" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 812, - "mutability": "mutable", - "name": "err", - "nameLocation": "7508:3:3", - "nodeType": "VariableDeclaration", - "scope": 831, - "src": "7494:17:3", - "stateVariable": false, - "storageLocation": "memory", - "typeDescriptions": { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string" - }, - "typeName": { - "id": 811, - "name": "string", - "nodeType": "ElementaryTypeName", - "src": "7494:6:3", - "typeDescriptions": { - "typeIdentifier": "t_string_storage_ptr", - "typeString": "string" - } - }, - "visibility": "internal" - } - ], - "src": "7479:33:3" - }, - "returnParameters": { - "id": 814, - "nodeType": "ParameterList", - "parameters": [], - "src": "7522:0:3" - }, - "scope": 1844, - "stateMutability": "nonpayable", - "virtual": false, - "visibility": "internal" - }, - { - "id": 865, - "nodeType": "FunctionDefinition", - "src": "7643:320:3", - "body": { - "id": 864, - "nodeType": "Block", - "src": "7706:257:3", - "statements": [ - { - "condition": { - "commonType": { - "typeIdentifier": "t_int256", - "typeString": "int256" - }, - "id": 842, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "id": 840, - "name": "a", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 833, - "src": "7720:1:3", - "typeDescriptions": { - "typeIdentifier": "t_int256", - "typeString": "int256" - } - }, - "nodeType": "BinaryOperation", - "operator": "<=", - "rightExpression": { - "id": 841, - "name": "b", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 835, - "src": "7725:1:3", - "typeDescriptions": { - "typeIdentifier": "t_int256", - "typeString": "int256" - } - }, - "src": "7720:6:3", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "id": 863, - "nodeType": "IfStatement", - "src": "7716:241:3", - "trueBody": { - "id": 862, - "nodeType": "Block", - "src": "7728:229:3", - "statements": [ - { - "eventCall": { - "arguments": [ - { - "hexValue": "4572726f723a2061203e2062206e6f7420736174697366696564205b646563696d616c20696e745d", - "id": 844, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "string", - "lValueRequested": false, - "nodeType": "Literal", - "src": "7751:42:3", - "typeDescriptions": { - "typeIdentifier": "t_stringliteral_85ee98c18b4560d5bfeeef41e54955cef93f7b8071348c487f1fd81bd1aaf2ad", - "typeString": "literal_string \"Error: a > b not satisfied [decimal int]\"" - }, - "value": "Error: a > b not satisfied [decimal int]" - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_stringliteral_85ee98c18b4560d5bfeeef41e54955cef93f7b8071348c487f1fd81bd1aaf2ad", - "typeString": "literal_string \"Error: a > b not satisfied [decimal int]\"" - } - ], - "id": 843, - "name": "log", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 63, - "src": "7747:3:3", - "typeDescriptions": { - "typeIdentifier": "t_function_event_nonpayable$_t_string_memory_ptr_$returns$__$", - "typeString": "function (string memory)" - } - }, - "id": 845, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "7747:47:3", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 846, - "nodeType": "EmitStatement", - "src": "7742:52:3" - }, - { - "eventCall": { - "arguments": [ - { - "hexValue": "202056616c75652061", - "id": 848, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "string", - "lValueRequested": false, - "nodeType": "Literal", - "src": "7835:11:3", - "typeDescriptions": { - "typeIdentifier": "t_stringliteral_c592b529b874569f165479a5a4380dedf000796f11e04035f76bfa7310b31d26", - "typeString": "literal_string \" Value a\"" - }, - "value": " Value a" - }, - { - "id": 849, - "name": "a", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 833, - "src": "7848:1:3", - "typeDescriptions": { - "typeIdentifier": "t_int256", - "typeString": "int256" - } - }, - { - "id": 850, - "name": "decimals", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 837, - "src": "7851:8:3", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_stringliteral_c592b529b874569f165479a5a4380dedf000796f11e04035f76bfa7310b31d26", - "typeString": "literal_string \" Value a\"" - }, - { - "typeIdentifier": "t_int256", - "typeString": "int256" - }, - { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - ], - "id": 847, - "name": "log_named_decimal_int", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 111, - "src": "7813:21:3", - "typeDescriptions": { - "typeIdentifier": "t_function_event_nonpayable$_t_string_memory_ptr_$_t_int256_$_t_uint256_$returns$__$", - "typeString": "function (string memory,int256,uint256)" - } - }, - "id": 851, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "7813:47:3", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 852, - "nodeType": "EmitStatement", - "src": "7808:52:3" - }, - { - "eventCall": { - "arguments": [ - { - "hexValue": "202056616c75652062", - "id": 854, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "string", - "lValueRequested": false, - "nodeType": "Literal", - "src": "7901:11:3", - "typeDescriptions": { - "typeIdentifier": "t_stringliteral_e4b1d025132960c3fb1a582cf2366864dc416744d1b9770aa69fe3749623ebc3", - "typeString": "literal_string \" Value b\"" - }, - "value": " Value b" - }, - { - "id": 855, - "name": "b", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 835, - "src": "7914:1:3", - "typeDescriptions": { - "typeIdentifier": "t_int256", - "typeString": "int256" - } - }, - { - "id": 856, - "name": "decimals", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 837, - "src": "7917:8:3", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_stringliteral_e4b1d025132960c3fb1a582cf2366864dc416744d1b9770aa69fe3749623ebc3", - "typeString": "literal_string \" Value b\"" - }, - { - "typeIdentifier": "t_int256", - "typeString": "int256" - }, - { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - ], - "id": 853, - "name": "log_named_decimal_int", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 111, - "src": "7879:21:3", - "typeDescriptions": { - "typeIdentifier": "t_function_event_nonpayable$_t_string_memory_ptr_$_t_int256_$_t_uint256_$returns$__$", - "typeString": "function (string memory,int256,uint256)" - } - }, - "id": 857, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "7879:47:3", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 858, - "nodeType": "EmitStatement", - "src": "7874:52:3" - }, - { - "expression": { - "arguments": [], - "expression": { - "argumentTypes": [], - "id": 859, - "name": "fail", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 274, - "src": "7940:4:3", - "typeDescriptions": { - "typeIdentifier": "t_function_internal_nonpayable$__$returns$__$", - "typeString": "function ()" - } - }, - "id": 860, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "7940:6:3", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 861, - "nodeType": "ExpressionStatement", - "src": "7940:6:3" - } - ] - } - } - ] - }, - "implemented": true, - "kind": "function", - "modifiers": [], - "name": "assertGtDecimal", - "nameLocation": "7652:15:3", - "parameters": { - "id": 838, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 833, - "mutability": "mutable", - "name": "a", - "nameLocation": "7672:1:3", - "nodeType": "VariableDeclaration", - "scope": 865, - "src": "7668:5:3", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_int256", - "typeString": "int256" - }, - "typeName": { - "id": 832, - "name": "int", - "nodeType": "ElementaryTypeName", - "src": "7668:3:3", - "typeDescriptions": { - "typeIdentifier": "t_int256", - "typeString": "int256" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 835, - "mutability": "mutable", - "name": "b", - "nameLocation": "7679:1:3", - "nodeType": "VariableDeclaration", - "scope": 865, - "src": "7675:5:3", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_int256", - "typeString": "int256" - }, - "typeName": { - "id": 834, - "name": "int", - "nodeType": "ElementaryTypeName", - "src": "7675:3:3", - "typeDescriptions": { - "typeIdentifier": "t_int256", - "typeString": "int256" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 837, - "mutability": "mutable", - "name": "decimals", - "nameLocation": "7687:8:3", - "nodeType": "VariableDeclaration", - "scope": 865, - "src": "7682:13:3", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 836, - "name": "uint", - "nodeType": "ElementaryTypeName", - "src": "7682:4:3", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "visibility": "internal" - } - ], - "src": "7667:29:3" - }, - "returnParameters": { - "id": 839, - "nodeType": "ParameterList", - "parameters": [], - "src": "7706:0:3" - }, - "scope": 1844, - "stateMutability": "nonpayable", - "virtual": false, - "visibility": "internal" - }, - { - "id": 893, - "nodeType": "FunctionDefinition", - "src": "7968:215:3", - "body": { - "id": 892, - "nodeType": "Block", - "src": "8050:133:3", - "statements": [ - { - "condition": { - "commonType": { - "typeIdentifier": "t_int256", - "typeString": "int256" - }, - "id": 878, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "id": 876, - "name": "a", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 867, - "src": "8064:1:3", - "typeDescriptions": { - "typeIdentifier": "t_int256", - "typeString": "int256" - } - }, - "nodeType": "BinaryOperation", - "operator": "<=", - "rightExpression": { - "id": 877, - "name": "b", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 869, - "src": "8069:1:3", - "typeDescriptions": { - "typeIdentifier": "t_int256", - "typeString": "int256" - } - }, - "src": "8064:6:3", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "id": 891, - "nodeType": "IfStatement", - "src": "8060:117:3", - "trueBody": { - "id": 890, - "nodeType": "Block", - "src": "8072:105:3", - "statements": [ - { - "eventCall": { - "arguments": [ - { - "hexValue": "4572726f72", - "id": 880, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "string", - "lValueRequested": false, - "nodeType": "Literal", - "src": "8108:7:3", - "typeDescriptions": { - "typeIdentifier": "t_stringliteral_e342daa49723ff3485f4ff5f755a17b8bc9c3c33bbd312ceee37c94eebfe45c1", - "typeString": "literal_string \"Error\"" - }, - "value": "Error" - }, - { - "id": 881, - "name": "err", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 873, - "src": "8117:3:3", - "typeDescriptions": { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string memory" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_stringliteral_e342daa49723ff3485f4ff5f755a17b8bc9c3c33bbd312ceee37c94eebfe45c1", - "typeString": "literal_string \"Error\"" - }, - { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string memory" - } - ], - "id": 879, - "name": "log_named_string", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 143, - "src": "8091:16:3", - "typeDescriptions": { - "typeIdentifier": "t_function_event_nonpayable$_t_string_memory_ptr_$_t_string_memory_ptr_$returns$__$", - "typeString": "function (string memory,string memory)" - } - }, - "id": 882, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "8091:30:3", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 883, - "nodeType": "EmitStatement", - "src": "8086:35:3" - }, - { - "expression": { - "arguments": [ - { - "id": 885, - "name": "a", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 867, - "src": "8151:1:3", - "typeDescriptions": { - "typeIdentifier": "t_int256", - "typeString": "int256" - } - }, - { - "id": 886, - "name": "b", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 869, - "src": "8154:1:3", - "typeDescriptions": { - "typeIdentifier": "t_int256", - "typeString": "int256" - } - }, - { - "id": 887, - "name": "decimals", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 871, - "src": "8157:8:3", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_int256", - "typeString": "int256" - }, - { - "typeIdentifier": "t_int256", - "typeString": "int256" - }, - { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - ], - "id": 884, - "name": "assertGtDecimal", - "nodeType": "Identifier", - "overloadedDeclarations": [ - 865, - 893, - 927, - 955 - ], - "referencedDeclaration": 865, - "src": "8135:15:3", - "typeDescriptions": { - "typeIdentifier": "t_function_internal_nonpayable$_t_int256_$_t_int256_$_t_uint256_$returns$__$", - "typeString": "function (int256,int256,uint256)" - } - }, - "id": 888, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "8135:31:3", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 889, - "nodeType": "ExpressionStatement", - "src": "8135:31:3" - } - ] - } - } - ] - }, - "implemented": true, - "kind": "function", - "modifiers": [], - "name": "assertGtDecimal", - "nameLocation": "7977:15:3", - "parameters": { - "id": 874, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 867, - "mutability": "mutable", - "name": "a", - "nameLocation": "7997:1:3", - "nodeType": "VariableDeclaration", - "scope": 893, - "src": "7993:5:3", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_int256", - "typeString": "int256" - }, - "typeName": { - "id": 866, - "name": "int", - "nodeType": "ElementaryTypeName", - "src": "7993:3:3", - "typeDescriptions": { - "typeIdentifier": "t_int256", - "typeString": "int256" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 869, - "mutability": "mutable", - "name": "b", - "nameLocation": "8004:1:3", - "nodeType": "VariableDeclaration", - "scope": 893, - "src": "8000:5:3", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_int256", - "typeString": "int256" - }, - "typeName": { - "id": 868, - "name": "int", - "nodeType": "ElementaryTypeName", - "src": "8000:3:3", - "typeDescriptions": { - "typeIdentifier": "t_int256", - "typeString": "int256" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 871, - "mutability": "mutable", - "name": "decimals", - "nameLocation": "8012:8:3", - "nodeType": "VariableDeclaration", - "scope": 893, - "src": "8007:13:3", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 870, - "name": "uint", - "nodeType": "ElementaryTypeName", - "src": "8007:4:3", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 873, - "mutability": "mutable", - "name": "err", - "nameLocation": "8036:3:3", - "nodeType": "VariableDeclaration", - "scope": 893, - "src": "8022:17:3", - "stateVariable": false, - "storageLocation": "memory", - "typeDescriptions": { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string" - }, - "typeName": { - "id": 872, - "name": "string", - "nodeType": "ElementaryTypeName", - "src": "8022:6:3", - "typeDescriptions": { - "typeIdentifier": "t_string_storage_ptr", - "typeString": "string" - } - }, - "visibility": "internal" - } - ], - "src": "7992:48:3" - }, - "returnParameters": { - "id": 875, - "nodeType": "ParameterList", - "parameters": [], - "src": "8050:0:3" - }, - "scope": 1844, - "stateMutability": "nonpayable", - "virtual": false, - "visibility": "internal" - }, - { - "id": 927, - "nodeType": "FunctionDefinition", - "src": "8188:325:3", - "body": { - "id": 926, - "nodeType": "Block", - "src": "8253:260:3", - "statements": [ - { - "condition": { - "commonType": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "id": 904, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "id": 902, - "name": "a", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 895, - "src": "8267:1:3", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "BinaryOperation", - "operator": "<=", - "rightExpression": { - "id": 903, - "name": "b", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 897, - "src": "8272:1:3", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "src": "8267:6:3", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "id": 925, - "nodeType": "IfStatement", - "src": "8263:244:3", - "trueBody": { - "id": 924, - "nodeType": "Block", - "src": "8275:232:3", - "statements": [ - { - "eventCall": { - "arguments": [ - { - "hexValue": "4572726f723a2061203e2062206e6f7420736174697366696564205b646563696d616c2075696e745d", - "id": 906, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "string", - "lValueRequested": false, - "nodeType": "Literal", - "src": "8298:43:3", - "typeDescriptions": { - "typeIdentifier": "t_stringliteral_2a2cca6a3a53808b9763cfdafa62d083cc161a243845052a9c6e09d6d624c69f", - "typeString": "literal_string \"Error: a > b not satisfied [decimal uint]\"" - }, - "value": "Error: a > b not satisfied [decimal uint]" - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_stringliteral_2a2cca6a3a53808b9763cfdafa62d083cc161a243845052a9c6e09d6d624c69f", - "typeString": "literal_string \"Error: a > b not satisfied [decimal uint]\"" - } - ], - "id": 905, - "name": "log", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 63, - "src": "8294:3:3", - "typeDescriptions": { - "typeIdentifier": "t_function_event_nonpayable$_t_string_memory_ptr_$returns$__$", - "typeString": "function (string memory)" - } - }, - "id": 907, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "8294:48:3", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 908, - "nodeType": "EmitStatement", - "src": "8289:53:3" - }, - { - "eventCall": { - "arguments": [ - { - "hexValue": "202056616c75652061", - "id": 910, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "string", - "lValueRequested": false, - "nodeType": "Literal", - "src": "8384:11:3", - "typeDescriptions": { - "typeIdentifier": "t_stringliteral_c592b529b874569f165479a5a4380dedf000796f11e04035f76bfa7310b31d26", - "typeString": "literal_string \" Value a\"" - }, - "value": " Value a" - }, - { - "id": 911, - "name": "a", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 895, - "src": "8397:1:3", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - { - "id": 912, - "name": "decimals", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 899, - "src": "8400:8:3", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_stringliteral_c592b529b874569f165479a5a4380dedf000796f11e04035f76bfa7310b31d26", - "typeString": "literal_string \" Value a\"" - }, - { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - ], - "id": 909, - "name": "log_named_decimal_uint", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 119, - "src": "8361:22:3", - "typeDescriptions": { - "typeIdentifier": "t_function_event_nonpayable$_t_string_memory_ptr_$_t_uint256_$_t_uint256_$returns$__$", - "typeString": "function (string memory,uint256,uint256)" - } - }, - "id": 913, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "8361:48:3", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 914, - "nodeType": "EmitStatement", - "src": "8356:53:3" - }, - { - "eventCall": { - "arguments": [ - { - "hexValue": "202056616c75652062", - "id": 916, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "string", - "lValueRequested": false, - "nodeType": "Literal", - "src": "8451:11:3", - "typeDescriptions": { - "typeIdentifier": "t_stringliteral_e4b1d025132960c3fb1a582cf2366864dc416744d1b9770aa69fe3749623ebc3", - "typeString": "literal_string \" Value b\"" - }, - "value": " Value b" - }, - { - "id": 917, - "name": "b", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 897, - "src": "8464:1:3", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - { - "id": 918, - "name": "decimals", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 899, - "src": "8467:8:3", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_stringliteral_e4b1d025132960c3fb1a582cf2366864dc416744d1b9770aa69fe3749623ebc3", - "typeString": "literal_string \" Value b\"" - }, - { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - ], - "id": 915, - "name": "log_named_decimal_uint", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 119, - "src": "8428:22:3", - "typeDescriptions": { - "typeIdentifier": "t_function_event_nonpayable$_t_string_memory_ptr_$_t_uint256_$_t_uint256_$returns$__$", - "typeString": "function (string memory,uint256,uint256)" - } - }, - "id": 919, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "8428:48:3", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 920, - "nodeType": "EmitStatement", - "src": "8423:53:3" - }, - { - "expression": { - "arguments": [], - "expression": { - "argumentTypes": [], - "id": 921, - "name": "fail", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 274, - "src": "8490:4:3", - "typeDescriptions": { - "typeIdentifier": "t_function_internal_nonpayable$__$returns$__$", - "typeString": "function ()" - } - }, - "id": 922, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "8490:6:3", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 923, - "nodeType": "ExpressionStatement", - "src": "8490:6:3" - } - ] - } - } - ] - }, - "implemented": true, - "kind": "function", - "modifiers": [], - "name": "assertGtDecimal", - "nameLocation": "8197:15:3", - "parameters": { - "id": 900, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 895, - "mutability": "mutable", - "name": "a", - "nameLocation": "8218:1:3", - "nodeType": "VariableDeclaration", - "scope": 927, - "src": "8213:6:3", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 894, - "name": "uint", - "nodeType": "ElementaryTypeName", - "src": "8213:4:3", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 897, - "mutability": "mutable", - "name": "b", - "nameLocation": "8226:1:3", - "nodeType": "VariableDeclaration", - "scope": 927, - "src": "8221:6:3", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 896, - "name": "uint", - "nodeType": "ElementaryTypeName", - "src": "8221:4:3", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 899, - "mutability": "mutable", - "name": "decimals", - "nameLocation": "8234:8:3", - "nodeType": "VariableDeclaration", - "scope": 927, - "src": "8229:13:3", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 898, - "name": "uint", - "nodeType": "ElementaryTypeName", - "src": "8229:4:3", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "visibility": "internal" - } - ], - "src": "8212:31:3" - }, - "returnParameters": { - "id": 901, - "nodeType": "ParameterList", - "parameters": [], - "src": "8253:0:3" - }, - "scope": 1844, - "stateMutability": "nonpayable", - "virtual": false, - "visibility": "internal" - }, - { - "id": 955, - "nodeType": "FunctionDefinition", - "src": "8518:217:3", - "body": { - "id": 954, - "nodeType": "Block", - "src": "8602:133:3", - "statements": [ - { - "condition": { - "commonType": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "id": 940, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "id": 938, - "name": "a", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 929, - "src": "8616:1:3", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "BinaryOperation", - "operator": "<=", - "rightExpression": { - "id": 939, - "name": "b", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 931, - "src": "8621:1:3", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "src": "8616:6:3", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "id": 953, - "nodeType": "IfStatement", - "src": "8612:117:3", - "trueBody": { - "id": 952, - "nodeType": "Block", - "src": "8624:105:3", - "statements": [ - { - "eventCall": { - "arguments": [ - { - "hexValue": "4572726f72", - "id": 942, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "string", - "lValueRequested": false, - "nodeType": "Literal", - "src": "8660:7:3", - "typeDescriptions": { - "typeIdentifier": "t_stringliteral_e342daa49723ff3485f4ff5f755a17b8bc9c3c33bbd312ceee37c94eebfe45c1", - "typeString": "literal_string \"Error\"" - }, - "value": "Error" - }, - { - "id": 943, - "name": "err", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 935, - "src": "8669:3:3", - "typeDescriptions": { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string memory" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_stringliteral_e342daa49723ff3485f4ff5f755a17b8bc9c3c33bbd312ceee37c94eebfe45c1", - "typeString": "literal_string \"Error\"" - }, - { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string memory" - } - ], - "id": 941, - "name": "log_named_string", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 143, - "src": "8643:16:3", - "typeDescriptions": { - "typeIdentifier": "t_function_event_nonpayable$_t_string_memory_ptr_$_t_string_memory_ptr_$returns$__$", - "typeString": "function (string memory,string memory)" - } - }, - "id": 944, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "8643:30:3", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 945, - "nodeType": "EmitStatement", - "src": "8638:35:3" - }, - { - "expression": { - "arguments": [ - { - "id": 947, - "name": "a", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 929, - "src": "8703:1:3", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - { - "id": 948, - "name": "b", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 931, - "src": "8706:1:3", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - { - "id": 949, - "name": "decimals", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 933, - "src": "8709:8:3", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - ], - "id": 946, - "name": "assertGtDecimal", - "nodeType": "Identifier", - "overloadedDeclarations": [ - 865, - 893, - 927, - 955 - ], - "referencedDeclaration": 927, - "src": "8687:15:3", - "typeDescriptions": { - "typeIdentifier": "t_function_internal_nonpayable$_t_uint256_$_t_uint256_$_t_uint256_$returns$__$", - "typeString": "function (uint256,uint256,uint256)" - } - }, - "id": 950, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "8687:31:3", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 951, - "nodeType": "ExpressionStatement", - "src": "8687:31:3" - } - ] - } - } - ] - }, - "implemented": true, - "kind": "function", - "modifiers": [], - "name": "assertGtDecimal", - "nameLocation": "8527:15:3", - "parameters": { - "id": 936, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 929, - "mutability": "mutable", - "name": "a", - "nameLocation": "8548:1:3", - "nodeType": "VariableDeclaration", - "scope": 955, - "src": "8543:6:3", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 928, - "name": "uint", - "nodeType": "ElementaryTypeName", - "src": "8543:4:3", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 931, - "mutability": "mutable", - "name": "b", - "nameLocation": "8556:1:3", - "nodeType": "VariableDeclaration", - "scope": 955, - "src": "8551:6:3", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 930, - "name": "uint", - "nodeType": "ElementaryTypeName", - "src": "8551:4:3", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 933, - "mutability": "mutable", - "name": "decimals", - "nameLocation": "8564:8:3", - "nodeType": "VariableDeclaration", - "scope": 955, - "src": "8559:13:3", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 932, - "name": "uint", - "nodeType": "ElementaryTypeName", - "src": "8559:4:3", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 935, - "mutability": "mutable", - "name": "err", - "nameLocation": "8588:3:3", - "nodeType": "VariableDeclaration", - "scope": 955, - "src": "8574:17:3", - "stateVariable": false, - "storageLocation": "memory", - "typeDescriptions": { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string" - }, - "typeName": { - "id": 934, - "name": "string", - "nodeType": "ElementaryTypeName", - "src": "8574:6:3", - "typeDescriptions": { - "typeIdentifier": "t_string_storage_ptr", - "typeString": "string" - } - }, - "visibility": "internal" - } - ], - "src": "8542:50:3" - }, - "returnParameters": { - "id": 937, - "nodeType": "ParameterList", - "parameters": [], - "src": "8602:0:3" - }, - "scope": 1844, - "stateMutability": "nonpayable", - "virtual": false, - "visibility": "internal" - }, - { - "id": 985, - "nodeType": "FunctionDefinition", - "src": "8741:259:3", - "body": { - "id": 984, - "nodeType": "Block", - "src": "8784:216:3", - "statements": [ - { - "condition": { - "commonType": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "id": 964, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "id": 962, - "name": "a", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 957, - "src": "8798:1:3", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "BinaryOperation", - "operator": "<", - "rightExpression": { - "id": 963, - "name": "b", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 959, - "src": "8802:1:3", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "src": "8798:5:3", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "id": 983, - "nodeType": "IfStatement", - "src": "8794:200:3", - "trueBody": { - "id": 982, - "nodeType": "Block", - "src": "8805:189:3", - "statements": [ - { - "eventCall": { - "arguments": [ - { - "hexValue": "4572726f723a2061203e3d2062206e6f7420736174697366696564205b75696e745d", - "id": 966, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "string", - "lValueRequested": false, - "nodeType": "Literal", - "src": "8828:36:3", - "typeDescriptions": { - "typeIdentifier": "t_stringliteral_ad79593ab7a8c163bd9b5379945ad36a940281a5ef1023478b9c309b02ea375e", - "typeString": "literal_string \"Error: a >= b not satisfied [uint]\"" - }, - "value": "Error: a >= b not satisfied [uint]" - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_stringliteral_ad79593ab7a8c163bd9b5379945ad36a940281a5ef1023478b9c309b02ea375e", - "typeString": "literal_string \"Error: a >= b not satisfied [uint]\"" - } - ], - "id": 965, - "name": "log", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 63, - "src": "8824:3:3", - "typeDescriptions": { - "typeIdentifier": "t_function_event_nonpayable$_t_string_memory_ptr_$returns$__$", - "typeString": "function (string memory)" - } - }, - "id": 967, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "8824:41:3", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 968, - "nodeType": "EmitStatement", - "src": "8819:46:3" - }, - { - "eventCall": { - "arguments": [ - { - "hexValue": "202056616c75652061", - "id": 970, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "string", - "lValueRequested": false, - "nodeType": "Literal", - "src": "8899:11:3", - "typeDescriptions": { - "typeIdentifier": "t_stringliteral_c592b529b874569f165479a5a4380dedf000796f11e04035f76bfa7310b31d26", - "typeString": "literal_string \" Value a\"" - }, - "value": " Value a" - }, - { - "id": 971, - "name": "a", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 957, - "src": "8912:1:3", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_stringliteral_c592b529b874569f165479a5a4380dedf000796f11e04035f76bfa7310b31d26", - "typeString": "literal_string \" Value a\"" - }, - { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - ], - "id": 969, - "name": "log_named_uint", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 131, - "src": "8884:14:3", - "typeDescriptions": { - "typeIdentifier": "t_function_event_nonpayable$_t_string_memory_ptr_$_t_uint256_$returns$__$", - "typeString": "function (string memory,uint256)" - } - }, - "id": 972, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "8884:30:3", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 973, - "nodeType": "EmitStatement", - "src": "8879:35:3" - }, - { - "eventCall": { - "arguments": [ - { - "hexValue": "202056616c75652062", - "id": 975, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "string", - "lValueRequested": false, - "nodeType": "Literal", - "src": "8948:11:3", - "typeDescriptions": { - "typeIdentifier": "t_stringliteral_e4b1d025132960c3fb1a582cf2366864dc416744d1b9770aa69fe3749623ebc3", - "typeString": "literal_string \" Value b\"" - }, - "value": " Value b" - }, - { - "id": 976, - "name": "b", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 959, - "src": "8961:1:3", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_stringliteral_e4b1d025132960c3fb1a582cf2366864dc416744d1b9770aa69fe3749623ebc3", - "typeString": "literal_string \" Value b\"" - }, - { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - ], - "id": 974, - "name": "log_named_uint", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 131, - "src": "8933:14:3", - "typeDescriptions": { - "typeIdentifier": "t_function_event_nonpayable$_t_string_memory_ptr_$_t_uint256_$returns$__$", - "typeString": "function (string memory,uint256)" - } - }, - "id": 977, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "8933:30:3", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 978, - "nodeType": "EmitStatement", - "src": "8928:35:3" - }, - { - "expression": { - "arguments": [], - "expression": { - "argumentTypes": [], - "id": 979, - "name": "fail", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 274, - "src": "8977:4:3", - "typeDescriptions": { - "typeIdentifier": "t_function_internal_nonpayable$__$returns$__$", - "typeString": "function ()" - } - }, - "id": 980, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "8977:6:3", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 981, - "nodeType": "ExpressionStatement", - "src": "8977:6:3" - } - ] - } - } - ] - }, - "implemented": true, - "kind": "function", - "modifiers": [], - "name": "assertGe", - "nameLocation": "8750:8:3", - "parameters": { - "id": 960, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 957, - "mutability": "mutable", - "name": "a", - "nameLocation": "8764:1:3", - "nodeType": "VariableDeclaration", - "scope": 985, - "src": "8759:6:3", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 956, - "name": "uint", - "nodeType": "ElementaryTypeName", - "src": "8759:4:3", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 959, - "mutability": "mutable", - "name": "b", - "nameLocation": "8772:1:3", - "nodeType": "VariableDeclaration", - "scope": 985, - "src": "8767:6:3", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 958, - "name": "uint", - "nodeType": "ElementaryTypeName", - "src": "8767:4:3", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "visibility": "internal" - } - ], - "src": "8758:16:3" - }, - "returnParameters": { - "id": 961, - "nodeType": "ParameterList", - "parameters": [], - "src": "8784:0:3" - }, - "scope": 1844, - "stateMutability": "nonpayable", - "virtual": false, - "visibility": "internal" - }, - { - "id": 1010, - "nodeType": "FunctionDefinition", - "src": "9005:177:3", - "body": { - "id": 1009, - "nodeType": "Block", - "src": "9067:115:3", - "statements": [ - { - "condition": { - "commonType": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "id": 996, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "id": 994, - "name": "a", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 987, - "src": "9081:1:3", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "BinaryOperation", - "operator": "<", - "rightExpression": { - "id": 995, - "name": "b", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 989, - "src": "9085:1:3", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "src": "9081:5:3", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "id": 1008, - "nodeType": "IfStatement", - "src": "9077:99:3", - "trueBody": { - "id": 1007, - "nodeType": "Block", - "src": "9088:88:3", - "statements": [ - { - "eventCall": { - "arguments": [ - { - "hexValue": "4572726f72", - "id": 998, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "string", - "lValueRequested": false, - "nodeType": "Literal", - "src": "9124:7:3", - "typeDescriptions": { - "typeIdentifier": "t_stringliteral_e342daa49723ff3485f4ff5f755a17b8bc9c3c33bbd312ceee37c94eebfe45c1", - "typeString": "literal_string \"Error\"" - }, - "value": "Error" - }, - { - "id": 999, - "name": "err", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 991, - "src": "9133:3:3", - "typeDescriptions": { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string memory" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_stringliteral_e342daa49723ff3485f4ff5f755a17b8bc9c3c33bbd312ceee37c94eebfe45c1", - "typeString": "literal_string \"Error\"" - }, - { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string memory" - } - ], - "id": 997, - "name": "log_named_string", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 143, - "src": "9107:16:3", - "typeDescriptions": { - "typeIdentifier": "t_function_event_nonpayable$_t_string_memory_ptr_$_t_string_memory_ptr_$returns$__$", - "typeString": "function (string memory,string memory)" - } - }, - "id": 1000, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "9107:30:3", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 1001, - "nodeType": "EmitStatement", - "src": "9102:35:3" - }, - { - "expression": { - "arguments": [ - { - "id": 1003, - "name": "a", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 987, - "src": "9160:1:3", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - { - "id": 1004, - "name": "b", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 989, - "src": "9163:1:3", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - ], - "id": 1002, - "name": "assertGe", - "nodeType": "Identifier", - "overloadedDeclarations": [ - 985, - 1010, - 1040, - 1065 - ], - "referencedDeclaration": 985, - "src": "9151:8:3", - "typeDescriptions": { - "typeIdentifier": "t_function_internal_nonpayable$_t_uint256_$_t_uint256_$returns$__$", - "typeString": "function (uint256,uint256)" - } - }, - "id": 1005, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "9151:14:3", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 1006, - "nodeType": "ExpressionStatement", - "src": "9151:14:3" - } - ] - } - } - ] - }, - "implemented": true, - "kind": "function", - "modifiers": [], - "name": "assertGe", - "nameLocation": "9014:8:3", - "parameters": { - "id": 992, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 987, - "mutability": "mutable", - "name": "a", - "nameLocation": "9028:1:3", - "nodeType": "VariableDeclaration", - "scope": 1010, - "src": "9023:6:3", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 986, - "name": "uint", - "nodeType": "ElementaryTypeName", - "src": "9023:4:3", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 989, - "mutability": "mutable", - "name": "b", - "nameLocation": "9036:1:3", - "nodeType": "VariableDeclaration", - "scope": 1010, - "src": "9031:6:3", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 988, - "name": "uint", - "nodeType": "ElementaryTypeName", - "src": "9031:4:3", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 991, - "mutability": "mutable", - "name": "err", - "nameLocation": "9053:3:3", - "nodeType": "VariableDeclaration", - "scope": 1010, - "src": "9039:17:3", - "stateVariable": false, - "storageLocation": "memory", - "typeDescriptions": { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string" - }, - "typeName": { - "id": 990, - "name": "string", - "nodeType": "ElementaryTypeName", - "src": "9039:6:3", - "typeDescriptions": { - "typeIdentifier": "t_string_storage_ptr", - "typeString": "string" - } - }, - "visibility": "internal" - } - ], - "src": "9022:35:3" - }, - "returnParameters": { - "id": 993, - "nodeType": "ParameterList", - "parameters": [], - "src": "9067:0:3" - }, - "scope": 1844, - "stateMutability": "nonpayable", - "virtual": false, - "visibility": "internal" - }, - { - "id": 1040, - "nodeType": "FunctionDefinition", - "src": "9187:254:3", - "body": { - "id": 1039, - "nodeType": "Block", - "src": "9228:213:3", - "statements": [ - { - "condition": { - "commonType": { - "typeIdentifier": "t_int256", - "typeString": "int256" - }, - "id": 1019, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "id": 1017, - "name": "a", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1012, - "src": "9242:1:3", - "typeDescriptions": { - "typeIdentifier": "t_int256", - "typeString": "int256" - } - }, - "nodeType": "BinaryOperation", - "operator": "<", - "rightExpression": { - "id": 1018, - "name": "b", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1014, - "src": "9246:1:3", - "typeDescriptions": { - "typeIdentifier": "t_int256", - "typeString": "int256" - } - }, - "src": "9242:5:3", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "id": 1038, - "nodeType": "IfStatement", - "src": "9238:197:3", - "trueBody": { - "id": 1037, - "nodeType": "Block", - "src": "9249:186:3", - "statements": [ - { - "eventCall": { - "arguments": [ - { - "hexValue": "4572726f723a2061203e3d2062206e6f7420736174697366696564205b696e745d", - "id": 1021, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "string", - "lValueRequested": false, - "nodeType": "Literal", - "src": "9272:35:3", - "typeDescriptions": { - "typeIdentifier": "t_stringliteral_9dd34d7cd7d190bc9855e4326f563fd4539c0d764699b480d53bfd72aa5807a6", - "typeString": "literal_string \"Error: a >= b not satisfied [int]\"" - }, - "value": "Error: a >= b not satisfied [int]" - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_stringliteral_9dd34d7cd7d190bc9855e4326f563fd4539c0d764699b480d53bfd72aa5807a6", - "typeString": "literal_string \"Error: a >= b not satisfied [int]\"" - } - ], - "id": 1020, - "name": "log", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 63, - "src": "9268:3:3", - "typeDescriptions": { - "typeIdentifier": "t_function_event_nonpayable$_t_string_memory_ptr_$returns$__$", - "typeString": "function (string memory)" - } - }, - "id": 1022, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "9268:40:3", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 1023, - "nodeType": "EmitStatement", - "src": "9263:45:3" - }, - { - "eventCall": { - "arguments": [ - { - "hexValue": "202056616c75652061", - "id": 1025, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "string", - "lValueRequested": false, - "nodeType": "Literal", - "src": "9341:11:3", - "typeDescriptions": { - "typeIdentifier": "t_stringliteral_c592b529b874569f165479a5a4380dedf000796f11e04035f76bfa7310b31d26", - "typeString": "literal_string \" Value a\"" - }, - "value": " Value a" - }, - { - "id": 1026, - "name": "a", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1012, - "src": "9354:1:3", - "typeDescriptions": { - "typeIdentifier": "t_int256", - "typeString": "int256" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_stringliteral_c592b529b874569f165479a5a4380dedf000796f11e04035f76bfa7310b31d26", - "typeString": "literal_string \" Value a\"" - }, - { - "typeIdentifier": "t_int256", - "typeString": "int256" - } - ], - "id": 1024, - "name": "log_named_int", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 125, - "src": "9327:13:3", - "typeDescriptions": { - "typeIdentifier": "t_function_event_nonpayable$_t_string_memory_ptr_$_t_int256_$returns$__$", - "typeString": "function (string memory,int256)" - } - }, - "id": 1027, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "9327:29:3", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 1028, - "nodeType": "EmitStatement", - "src": "9322:34:3" - }, - { - "eventCall": { - "arguments": [ - { - "hexValue": "202056616c75652062", - "id": 1030, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "string", - "lValueRequested": false, - "nodeType": "Literal", - "src": "9389:11:3", - "typeDescriptions": { - "typeIdentifier": "t_stringliteral_e4b1d025132960c3fb1a582cf2366864dc416744d1b9770aa69fe3749623ebc3", - "typeString": "literal_string \" Value b\"" - }, - "value": " Value b" - }, - { - "id": 1031, - "name": "b", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1014, - "src": "9402:1:3", - "typeDescriptions": { - "typeIdentifier": "t_int256", - "typeString": "int256" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_stringliteral_e4b1d025132960c3fb1a582cf2366864dc416744d1b9770aa69fe3749623ebc3", - "typeString": "literal_string \" Value b\"" - }, - { - "typeIdentifier": "t_int256", - "typeString": "int256" - } - ], - "id": 1029, - "name": "log_named_int", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 125, - "src": "9375:13:3", - "typeDescriptions": { - "typeIdentifier": "t_function_event_nonpayable$_t_string_memory_ptr_$_t_int256_$returns$__$", - "typeString": "function (string memory,int256)" - } - }, - "id": 1032, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "9375:29:3", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 1033, - "nodeType": "EmitStatement", - "src": "9370:34:3" - }, - { - "expression": { - "arguments": [], - "expression": { - "argumentTypes": [], - "id": 1034, - "name": "fail", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 274, - "src": "9418:4:3", - "typeDescriptions": { - "typeIdentifier": "t_function_internal_nonpayable$__$returns$__$", - "typeString": "function ()" - } - }, - "id": 1035, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "9418:6:3", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 1036, - "nodeType": "ExpressionStatement", - "src": "9418:6:3" - } - ] - } - } - ] - }, - "implemented": true, - "kind": "function", - "modifiers": [], - "name": "assertGe", - "nameLocation": "9196:8:3", - "parameters": { - "id": 1015, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 1012, - "mutability": "mutable", - "name": "a", - "nameLocation": "9209:1:3", - "nodeType": "VariableDeclaration", - "scope": 1040, - "src": "9205:5:3", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_int256", - "typeString": "int256" - }, - "typeName": { - "id": 1011, - "name": "int", - "nodeType": "ElementaryTypeName", - "src": "9205:3:3", - "typeDescriptions": { - "typeIdentifier": "t_int256", - "typeString": "int256" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 1014, - "mutability": "mutable", - "name": "b", - "nameLocation": "9216:1:3", - "nodeType": "VariableDeclaration", - "scope": 1040, - "src": "9212:5:3", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_int256", - "typeString": "int256" - }, - "typeName": { - "id": 1013, - "name": "int", - "nodeType": "ElementaryTypeName", - "src": "9212:3:3", - "typeDescriptions": { - "typeIdentifier": "t_int256", - "typeString": "int256" - } - }, - "visibility": "internal" - } - ], - "src": "9204:14:3" - }, - "returnParameters": { - "id": 1016, - "nodeType": "ParameterList", - "parameters": [], - "src": "9228:0:3" - }, - "scope": 1844, - "stateMutability": "nonpayable", - "virtual": false, - "visibility": "internal" - }, - { - "id": 1065, - "nodeType": "FunctionDefinition", - "src": "9446:175:3", - "body": { - "id": 1064, - "nodeType": "Block", - "src": "9506:115:3", - "statements": [ - { - "condition": { - "commonType": { - "typeIdentifier": "t_int256", - "typeString": "int256" - }, - "id": 1051, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "id": 1049, - "name": "a", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1042, - "src": "9520:1:3", - "typeDescriptions": { - "typeIdentifier": "t_int256", - "typeString": "int256" - } - }, - "nodeType": "BinaryOperation", - "operator": "<", - "rightExpression": { - "id": 1050, - "name": "b", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1044, - "src": "9524:1:3", - "typeDescriptions": { - "typeIdentifier": "t_int256", - "typeString": "int256" - } - }, - "src": "9520:5:3", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "id": 1063, - "nodeType": "IfStatement", - "src": "9516:99:3", - "trueBody": { - "id": 1062, - "nodeType": "Block", - "src": "9527:88:3", - "statements": [ - { - "eventCall": { - "arguments": [ - { - "hexValue": "4572726f72", - "id": 1053, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "string", - "lValueRequested": false, - "nodeType": "Literal", - "src": "9563:7:3", - "typeDescriptions": { - "typeIdentifier": "t_stringliteral_e342daa49723ff3485f4ff5f755a17b8bc9c3c33bbd312ceee37c94eebfe45c1", - "typeString": "literal_string \"Error\"" - }, - "value": "Error" - }, - { - "id": 1054, - "name": "err", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1046, - "src": "9572:3:3", - "typeDescriptions": { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string memory" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_stringliteral_e342daa49723ff3485f4ff5f755a17b8bc9c3c33bbd312ceee37c94eebfe45c1", - "typeString": "literal_string \"Error\"" - }, - { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string memory" - } - ], - "id": 1052, - "name": "log_named_string", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 143, - "src": "9546:16:3", - "typeDescriptions": { - "typeIdentifier": "t_function_event_nonpayable$_t_string_memory_ptr_$_t_string_memory_ptr_$returns$__$", - "typeString": "function (string memory,string memory)" - } - }, - "id": 1055, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "9546:30:3", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 1056, - "nodeType": "EmitStatement", - "src": "9541:35:3" - }, - { - "expression": { - "arguments": [ - { - "id": 1058, - "name": "a", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1042, - "src": "9599:1:3", - "typeDescriptions": { - "typeIdentifier": "t_int256", - "typeString": "int256" - } - }, - { - "id": 1059, - "name": "b", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1044, - "src": "9602:1:3", - "typeDescriptions": { - "typeIdentifier": "t_int256", - "typeString": "int256" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_int256", - "typeString": "int256" - }, - { - "typeIdentifier": "t_int256", - "typeString": "int256" - } - ], - "id": 1057, - "name": "assertGe", - "nodeType": "Identifier", - "overloadedDeclarations": [ - 985, - 1010, - 1040, - 1065 - ], - "referencedDeclaration": 1040, - "src": "9590:8:3", - "typeDescriptions": { - "typeIdentifier": "t_function_internal_nonpayable$_t_int256_$_t_int256_$returns$__$", - "typeString": "function (int256,int256)" - } - }, - "id": 1060, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "9590:14:3", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 1061, - "nodeType": "ExpressionStatement", - "src": "9590:14:3" - } - ] - } - } - ] - }, - "implemented": true, - "kind": "function", - "modifiers": [], - "name": "assertGe", - "nameLocation": "9455:8:3", - "parameters": { - "id": 1047, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 1042, - "mutability": "mutable", - "name": "a", - "nameLocation": "9468:1:3", - "nodeType": "VariableDeclaration", - "scope": 1065, - "src": "9464:5:3", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_int256", - "typeString": "int256" - }, - "typeName": { - "id": 1041, - "name": "int", - "nodeType": "ElementaryTypeName", - "src": "9464:3:3", - "typeDescriptions": { - "typeIdentifier": "t_int256", - "typeString": "int256" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 1044, - "mutability": "mutable", - "name": "b", - "nameLocation": "9475:1:3", - "nodeType": "VariableDeclaration", - "scope": 1065, - "src": "9471:5:3", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_int256", - "typeString": "int256" - }, - "typeName": { - "id": 1043, - "name": "int", - "nodeType": "ElementaryTypeName", - "src": "9471:3:3", - "typeDescriptions": { - "typeIdentifier": "t_int256", - "typeString": "int256" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 1046, - "mutability": "mutable", - "name": "err", - "nameLocation": "9492:3:3", - "nodeType": "VariableDeclaration", - "scope": 1065, - "src": "9478:17:3", - "stateVariable": false, - "storageLocation": "memory", - "typeDescriptions": { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string" - }, - "typeName": { - "id": 1045, - "name": "string", - "nodeType": "ElementaryTypeName", - "src": "9478:6:3", - "typeDescriptions": { - "typeIdentifier": "t_string_storage_ptr", - "typeString": "string" - } - }, - "visibility": "internal" - } - ], - "src": "9463:33:3" - }, - "returnParameters": { - "id": 1048, - "nodeType": "ParameterList", - "parameters": [], - "src": "9506:0:3" - }, - "scope": 1844, - "stateMutability": "nonpayable", - "virtual": false, - "visibility": "internal" - }, - { - "id": 1099, - "nodeType": "FunctionDefinition", - "src": "9626:320:3", - "body": { - "id": 1098, - "nodeType": "Block", - "src": "9689:257:3", - "statements": [ - { - "condition": { - "commonType": { - "typeIdentifier": "t_int256", - "typeString": "int256" - }, - "id": 1076, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "id": 1074, - "name": "a", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1067, - "src": "9703:1:3", - "typeDescriptions": { - "typeIdentifier": "t_int256", - "typeString": "int256" - } - }, - "nodeType": "BinaryOperation", - "operator": "<", - "rightExpression": { - "id": 1075, - "name": "b", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1069, - "src": "9707:1:3", - "typeDescriptions": { - "typeIdentifier": "t_int256", - "typeString": "int256" - } - }, - "src": "9703:5:3", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "id": 1097, - "nodeType": "IfStatement", - "src": "9699:241:3", - "trueBody": { - "id": 1096, - "nodeType": "Block", - "src": "9710:230:3", - "statements": [ - { - "eventCall": { - "arguments": [ - { - "hexValue": "4572726f723a2061203e3d2062206e6f7420736174697366696564205b646563696d616c20696e745d", - "id": 1078, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "string", - "lValueRequested": false, - "nodeType": "Literal", - "src": "9733:43:3", - "typeDescriptions": { - "typeIdentifier": "t_stringliteral_0f02f65375ca93c3f3c485b8b2455303d1a8668a2b626cba00789d1c4ebd8736", - "typeString": "literal_string \"Error: a >= b not satisfied [decimal int]\"" - }, - "value": "Error: a >= b not satisfied [decimal int]" - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_stringliteral_0f02f65375ca93c3f3c485b8b2455303d1a8668a2b626cba00789d1c4ebd8736", - "typeString": "literal_string \"Error: a >= b not satisfied [decimal int]\"" - } - ], - "id": 1077, - "name": "log", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 63, - "src": "9729:3:3", - "typeDescriptions": { - "typeIdentifier": "t_function_event_nonpayable$_t_string_memory_ptr_$returns$__$", - "typeString": "function (string memory)" - } - }, - "id": 1079, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "9729:48:3", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 1080, - "nodeType": "EmitStatement", - "src": "9724:53:3" - }, - { - "eventCall": { - "arguments": [ - { - "hexValue": "202056616c75652061", - "id": 1082, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "string", - "lValueRequested": false, - "nodeType": "Literal", - "src": "9818:11:3", - "typeDescriptions": { - "typeIdentifier": "t_stringliteral_c592b529b874569f165479a5a4380dedf000796f11e04035f76bfa7310b31d26", - "typeString": "literal_string \" Value a\"" - }, - "value": " Value a" - }, - { - "id": 1083, - "name": "a", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1067, - "src": "9831:1:3", - "typeDescriptions": { - "typeIdentifier": "t_int256", - "typeString": "int256" - } - }, - { - "id": 1084, - "name": "decimals", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1071, - "src": "9834:8:3", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_stringliteral_c592b529b874569f165479a5a4380dedf000796f11e04035f76bfa7310b31d26", - "typeString": "literal_string \" Value a\"" - }, - { - "typeIdentifier": "t_int256", - "typeString": "int256" - }, - { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - ], - "id": 1081, - "name": "log_named_decimal_int", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 111, - "src": "9796:21:3", - "typeDescriptions": { - "typeIdentifier": "t_function_event_nonpayable$_t_string_memory_ptr_$_t_int256_$_t_uint256_$returns$__$", - "typeString": "function (string memory,int256,uint256)" - } - }, - "id": 1085, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "9796:47:3", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 1086, - "nodeType": "EmitStatement", - "src": "9791:52:3" - }, - { - "eventCall": { - "arguments": [ - { - "hexValue": "202056616c75652062", - "id": 1088, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "string", - "lValueRequested": false, - "nodeType": "Literal", - "src": "9884:11:3", - "typeDescriptions": { - "typeIdentifier": "t_stringliteral_e4b1d025132960c3fb1a582cf2366864dc416744d1b9770aa69fe3749623ebc3", - "typeString": "literal_string \" Value b\"" - }, - "value": " Value b" - }, - { - "id": 1089, - "name": "b", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1069, - "src": "9897:1:3", - "typeDescriptions": { - "typeIdentifier": "t_int256", - "typeString": "int256" - } - }, - { - "id": 1090, - "name": "decimals", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1071, - "src": "9900:8:3", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_stringliteral_e4b1d025132960c3fb1a582cf2366864dc416744d1b9770aa69fe3749623ebc3", - "typeString": "literal_string \" Value b\"" - }, - { - "typeIdentifier": "t_int256", - "typeString": "int256" - }, - { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - ], - "id": 1087, - "name": "log_named_decimal_int", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 111, - "src": "9862:21:3", - "typeDescriptions": { - "typeIdentifier": "t_function_event_nonpayable$_t_string_memory_ptr_$_t_int256_$_t_uint256_$returns$__$", - "typeString": "function (string memory,int256,uint256)" - } - }, - "id": 1091, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "9862:47:3", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 1092, - "nodeType": "EmitStatement", - "src": "9857:52:3" - }, - { - "expression": { - "arguments": [], - "expression": { - "argumentTypes": [], - "id": 1093, - "name": "fail", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 274, - "src": "9923:4:3", - "typeDescriptions": { - "typeIdentifier": "t_function_internal_nonpayable$__$returns$__$", - "typeString": "function ()" - } - }, - "id": 1094, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "9923:6:3", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 1095, - "nodeType": "ExpressionStatement", - "src": "9923:6:3" - } - ] - } - } - ] - }, - "implemented": true, - "kind": "function", - "modifiers": [], - "name": "assertGeDecimal", - "nameLocation": "9635:15:3", - "parameters": { - "id": 1072, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 1067, - "mutability": "mutable", - "name": "a", - "nameLocation": "9655:1:3", - "nodeType": "VariableDeclaration", - "scope": 1099, - "src": "9651:5:3", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_int256", - "typeString": "int256" - }, - "typeName": { - "id": 1066, - "name": "int", - "nodeType": "ElementaryTypeName", - "src": "9651:3:3", - "typeDescriptions": { - "typeIdentifier": "t_int256", - "typeString": "int256" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 1069, - "mutability": "mutable", - "name": "b", - "nameLocation": "9662:1:3", - "nodeType": "VariableDeclaration", - "scope": 1099, - "src": "9658:5:3", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_int256", - "typeString": "int256" - }, - "typeName": { - "id": 1068, - "name": "int", - "nodeType": "ElementaryTypeName", - "src": "9658:3:3", - "typeDescriptions": { - "typeIdentifier": "t_int256", - "typeString": "int256" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 1071, - "mutability": "mutable", - "name": "decimals", - "nameLocation": "9670:8:3", - "nodeType": "VariableDeclaration", - "scope": 1099, - "src": "9665:13:3", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 1070, - "name": "uint", - "nodeType": "ElementaryTypeName", - "src": "9665:4:3", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "visibility": "internal" - } - ], - "src": "9650:29:3" - }, - "returnParameters": { - "id": 1073, - "nodeType": "ParameterList", - "parameters": [], - "src": "9689:0:3" - }, - "scope": 1844, - "stateMutability": "nonpayable", - "virtual": false, - "visibility": "internal" - }, - { - "id": 1127, - "nodeType": "FunctionDefinition", - "src": "9951:214:3", - "body": { - "id": 1126, - "nodeType": "Block", - "src": "10033:132:3", - "statements": [ - { - "condition": { - "commonType": { - "typeIdentifier": "t_int256", - "typeString": "int256" - }, - "id": 1112, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "id": 1110, - "name": "a", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1101, - "src": "10047:1:3", - "typeDescriptions": { - "typeIdentifier": "t_int256", - "typeString": "int256" - } - }, - "nodeType": "BinaryOperation", - "operator": "<", - "rightExpression": { - "id": 1111, - "name": "b", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1103, - "src": "10051:1:3", - "typeDescriptions": { - "typeIdentifier": "t_int256", - "typeString": "int256" - } - }, - "src": "10047:5:3", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "id": 1125, - "nodeType": "IfStatement", - "src": "10043:116:3", - "trueBody": { - "id": 1124, - "nodeType": "Block", - "src": "10054:105:3", - "statements": [ - { - "eventCall": { - "arguments": [ - { - "hexValue": "4572726f72", - "id": 1114, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "string", - "lValueRequested": false, - "nodeType": "Literal", - "src": "10090:7:3", - "typeDescriptions": { - "typeIdentifier": "t_stringliteral_e342daa49723ff3485f4ff5f755a17b8bc9c3c33bbd312ceee37c94eebfe45c1", - "typeString": "literal_string \"Error\"" - }, - "value": "Error" - }, - { - "id": 1115, - "name": "err", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1107, - "src": "10099:3:3", - "typeDescriptions": { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string memory" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_stringliteral_e342daa49723ff3485f4ff5f755a17b8bc9c3c33bbd312ceee37c94eebfe45c1", - "typeString": "literal_string \"Error\"" - }, - { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string memory" - } - ], - "id": 1113, - "name": "log_named_string", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 143, - "src": "10073:16:3", - "typeDescriptions": { - "typeIdentifier": "t_function_event_nonpayable$_t_string_memory_ptr_$_t_string_memory_ptr_$returns$__$", - "typeString": "function (string memory,string memory)" - } - }, - "id": 1116, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "10073:30:3", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 1117, - "nodeType": "EmitStatement", - "src": "10068:35:3" - }, - { - "expression": { - "arguments": [ - { - "id": 1119, - "name": "a", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1101, - "src": "10133:1:3", - "typeDescriptions": { - "typeIdentifier": "t_int256", - "typeString": "int256" - } - }, - { - "id": 1120, - "name": "b", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1103, - "src": "10136:1:3", - "typeDescriptions": { - "typeIdentifier": "t_int256", - "typeString": "int256" - } - }, - { - "id": 1121, - "name": "decimals", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1105, - "src": "10139:8:3", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_int256", - "typeString": "int256" - }, - { - "typeIdentifier": "t_int256", - "typeString": "int256" - }, - { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - ], - "id": 1118, - "name": "assertGeDecimal", - "nodeType": "Identifier", - "overloadedDeclarations": [ - 1099, - 1127, - 1161, - 1189 - ], - "referencedDeclaration": 1099, - "src": "10117:15:3", - "typeDescriptions": { - "typeIdentifier": "t_function_internal_nonpayable$_t_int256_$_t_int256_$_t_uint256_$returns$__$", - "typeString": "function (int256,int256,uint256)" - } - }, - "id": 1122, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "10117:31:3", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 1123, - "nodeType": "ExpressionStatement", - "src": "10117:31:3" - } - ] - } - } - ] - }, - "implemented": true, - "kind": "function", - "modifiers": [], - "name": "assertGeDecimal", - "nameLocation": "9960:15:3", - "parameters": { - "id": 1108, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 1101, - "mutability": "mutable", - "name": "a", - "nameLocation": "9980:1:3", - "nodeType": "VariableDeclaration", - "scope": 1127, - "src": "9976:5:3", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_int256", - "typeString": "int256" - }, - "typeName": { - "id": 1100, - "name": "int", - "nodeType": "ElementaryTypeName", - "src": "9976:3:3", - "typeDescriptions": { - "typeIdentifier": "t_int256", - "typeString": "int256" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 1103, - "mutability": "mutable", - "name": "b", - "nameLocation": "9987:1:3", - "nodeType": "VariableDeclaration", - "scope": 1127, - "src": "9983:5:3", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_int256", - "typeString": "int256" - }, - "typeName": { - "id": 1102, - "name": "int", - "nodeType": "ElementaryTypeName", - "src": "9983:3:3", - "typeDescriptions": { - "typeIdentifier": "t_int256", - "typeString": "int256" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 1105, - "mutability": "mutable", - "name": "decimals", - "nameLocation": "9995:8:3", - "nodeType": "VariableDeclaration", - "scope": 1127, - "src": "9990:13:3", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 1104, - "name": "uint", - "nodeType": "ElementaryTypeName", - "src": "9990:4:3", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 1107, - "mutability": "mutable", - "name": "err", - "nameLocation": "10019:3:3", - "nodeType": "VariableDeclaration", - "scope": 1127, - "src": "10005:17:3", - "stateVariable": false, - "storageLocation": "memory", - "typeDescriptions": { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string" - }, - "typeName": { - "id": 1106, - "name": "string", - "nodeType": "ElementaryTypeName", - "src": "10005:6:3", - "typeDescriptions": { - "typeIdentifier": "t_string_storage_ptr", - "typeString": "string" - } - }, - "visibility": "internal" - } - ], - "src": "9975:48:3" - }, - "returnParameters": { - "id": 1109, - "nodeType": "ParameterList", - "parameters": [], - "src": "10033:0:3" - }, - "scope": 1844, - "stateMutability": "nonpayable", - "virtual": false, - "visibility": "internal" - }, - { - "id": 1161, - "nodeType": "FunctionDefinition", - "src": "10170:325:3", - "body": { - "id": 1160, - "nodeType": "Block", - "src": "10235:260:3", - "statements": [ - { - "condition": { - "commonType": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "id": 1138, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "id": 1136, - "name": "a", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1129, - "src": "10249:1:3", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "BinaryOperation", - "operator": "<", - "rightExpression": { - "id": 1137, - "name": "b", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1131, - "src": "10253:1:3", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "src": "10249:5:3", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "id": 1159, - "nodeType": "IfStatement", - "src": "10245:244:3", - "trueBody": { - "id": 1158, - "nodeType": "Block", - "src": "10256:233:3", - "statements": [ - { - "eventCall": { - "arguments": [ - { - "hexValue": "4572726f723a2061203e3d2062206e6f7420736174697366696564205b646563696d616c2075696e745d", - "id": 1140, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "string", - "lValueRequested": false, - "nodeType": "Literal", - "src": "10279:44:3", - "typeDescriptions": { - "typeIdentifier": "t_stringliteral_1192304a51ee70969886576ac83224cad7adddc5aab218616c612e9fa634c616", - "typeString": "literal_string \"Error: a >= b not satisfied [decimal uint]\"" - }, - "value": "Error: a >= b not satisfied [decimal uint]" - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_stringliteral_1192304a51ee70969886576ac83224cad7adddc5aab218616c612e9fa634c616", - "typeString": "literal_string \"Error: a >= b not satisfied [decimal uint]\"" - } - ], - "id": 1139, - "name": "log", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 63, - "src": "10275:3:3", - "typeDescriptions": { - "typeIdentifier": "t_function_event_nonpayable$_t_string_memory_ptr_$returns$__$", - "typeString": "function (string memory)" - } - }, - "id": 1141, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "10275:49:3", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 1142, - "nodeType": "EmitStatement", - "src": "10270:54:3" - }, - { - "eventCall": { - "arguments": [ - { - "hexValue": "202056616c75652061", - "id": 1144, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "string", - "lValueRequested": false, - "nodeType": "Literal", - "src": "10366:11:3", - "typeDescriptions": { - "typeIdentifier": "t_stringliteral_c592b529b874569f165479a5a4380dedf000796f11e04035f76bfa7310b31d26", - "typeString": "literal_string \" Value a\"" - }, - "value": " Value a" - }, - { - "id": 1145, - "name": "a", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1129, - "src": "10379:1:3", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - { - "id": 1146, - "name": "decimals", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1133, - "src": "10382:8:3", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_stringliteral_c592b529b874569f165479a5a4380dedf000796f11e04035f76bfa7310b31d26", - "typeString": "literal_string \" Value a\"" - }, - { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - ], - "id": 1143, - "name": "log_named_decimal_uint", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 119, - "src": "10343:22:3", - "typeDescriptions": { - "typeIdentifier": "t_function_event_nonpayable$_t_string_memory_ptr_$_t_uint256_$_t_uint256_$returns$__$", - "typeString": "function (string memory,uint256,uint256)" - } - }, - "id": 1147, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "10343:48:3", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 1148, - "nodeType": "EmitStatement", - "src": "10338:53:3" - }, - { - "eventCall": { - "arguments": [ - { - "hexValue": "202056616c75652062", - "id": 1150, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "string", - "lValueRequested": false, - "nodeType": "Literal", - "src": "10433:11:3", - "typeDescriptions": { - "typeIdentifier": "t_stringliteral_e4b1d025132960c3fb1a582cf2366864dc416744d1b9770aa69fe3749623ebc3", - "typeString": "literal_string \" Value b\"" - }, - "value": " Value b" - }, - { - "id": 1151, - "name": "b", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1131, - "src": "10446:1:3", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - { - "id": 1152, - "name": "decimals", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1133, - "src": "10449:8:3", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_stringliteral_e4b1d025132960c3fb1a582cf2366864dc416744d1b9770aa69fe3749623ebc3", - "typeString": "literal_string \" Value b\"" - }, - { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - ], - "id": 1149, - "name": "log_named_decimal_uint", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 119, - "src": "10410:22:3", - "typeDescriptions": { - "typeIdentifier": "t_function_event_nonpayable$_t_string_memory_ptr_$_t_uint256_$_t_uint256_$returns$__$", - "typeString": "function (string memory,uint256,uint256)" - } - }, - "id": 1153, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "10410:48:3", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 1154, - "nodeType": "EmitStatement", - "src": "10405:53:3" - }, - { - "expression": { - "arguments": [], - "expression": { - "argumentTypes": [], - "id": 1155, - "name": "fail", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 274, - "src": "10472:4:3", - "typeDescriptions": { - "typeIdentifier": "t_function_internal_nonpayable$__$returns$__$", - "typeString": "function ()" - } - }, - "id": 1156, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "10472:6:3", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 1157, - "nodeType": "ExpressionStatement", - "src": "10472:6:3" - } - ] - } - } - ] - }, - "implemented": true, - "kind": "function", - "modifiers": [], - "name": "assertGeDecimal", - "nameLocation": "10179:15:3", - "parameters": { - "id": 1134, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 1129, - "mutability": "mutable", - "name": "a", - "nameLocation": "10200:1:3", - "nodeType": "VariableDeclaration", - "scope": 1161, - "src": "10195:6:3", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 1128, - "name": "uint", - "nodeType": "ElementaryTypeName", - "src": "10195:4:3", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 1131, - "mutability": "mutable", - "name": "b", - "nameLocation": "10208:1:3", - "nodeType": "VariableDeclaration", - "scope": 1161, - "src": "10203:6:3", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 1130, - "name": "uint", - "nodeType": "ElementaryTypeName", - "src": "10203:4:3", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 1133, - "mutability": "mutable", - "name": "decimals", - "nameLocation": "10216:8:3", - "nodeType": "VariableDeclaration", - "scope": 1161, - "src": "10211:13:3", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 1132, - "name": "uint", - "nodeType": "ElementaryTypeName", - "src": "10211:4:3", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "visibility": "internal" - } - ], - "src": "10194:31:3" - }, - "returnParameters": { - "id": 1135, - "nodeType": "ParameterList", - "parameters": [], - "src": "10235:0:3" - }, - "scope": 1844, - "stateMutability": "nonpayable", - "virtual": false, - "visibility": "internal" - }, - { - "id": 1189, - "nodeType": "FunctionDefinition", - "src": "10500:216:3", - "body": { - "id": 1188, - "nodeType": "Block", - "src": "10584:132:3", - "statements": [ - { - "condition": { - "commonType": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "id": 1174, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "id": 1172, - "name": "a", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1163, - "src": "10598:1:3", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "BinaryOperation", - "operator": "<", - "rightExpression": { - "id": 1173, - "name": "b", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1165, - "src": "10602:1:3", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "src": "10598:5:3", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "id": 1187, - "nodeType": "IfStatement", - "src": "10594:116:3", - "trueBody": { - "id": 1186, - "nodeType": "Block", - "src": "10605:105:3", - "statements": [ - { - "eventCall": { - "arguments": [ - { - "hexValue": "4572726f72", - "id": 1176, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "string", - "lValueRequested": false, - "nodeType": "Literal", - "src": "10641:7:3", - "typeDescriptions": { - "typeIdentifier": "t_stringliteral_e342daa49723ff3485f4ff5f755a17b8bc9c3c33bbd312ceee37c94eebfe45c1", - "typeString": "literal_string \"Error\"" - }, - "value": "Error" - }, - { - "id": 1177, - "name": "err", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1169, - "src": "10650:3:3", - "typeDescriptions": { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string memory" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_stringliteral_e342daa49723ff3485f4ff5f755a17b8bc9c3c33bbd312ceee37c94eebfe45c1", - "typeString": "literal_string \"Error\"" - }, - { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string memory" - } - ], - "id": 1175, - "name": "log_named_string", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 143, - "src": "10624:16:3", - "typeDescriptions": { - "typeIdentifier": "t_function_event_nonpayable$_t_string_memory_ptr_$_t_string_memory_ptr_$returns$__$", - "typeString": "function (string memory,string memory)" - } - }, - "id": 1178, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "10624:30:3", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 1179, - "nodeType": "EmitStatement", - "src": "10619:35:3" - }, - { - "expression": { - "arguments": [ - { - "id": 1181, - "name": "a", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1163, - "src": "10684:1:3", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - { - "id": 1182, - "name": "b", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1165, - "src": "10687:1:3", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - { - "id": 1183, - "name": "decimals", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1167, - "src": "10690:8:3", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - ], - "id": 1180, - "name": "assertGeDecimal", - "nodeType": "Identifier", - "overloadedDeclarations": [ - 1099, - 1127, - 1161, - 1189 - ], - "referencedDeclaration": 1161, - "src": "10668:15:3", - "typeDescriptions": { - "typeIdentifier": "t_function_internal_nonpayable$_t_uint256_$_t_uint256_$_t_uint256_$returns$__$", - "typeString": "function (uint256,uint256,uint256)" - } - }, - "id": 1184, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "10668:31:3", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 1185, - "nodeType": "ExpressionStatement", - "src": "10668:31:3" - } - ] - } - } - ] - }, - "implemented": true, - "kind": "function", - "modifiers": [], - "name": "assertGeDecimal", - "nameLocation": "10509:15:3", - "parameters": { - "id": 1170, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 1163, - "mutability": "mutable", - "name": "a", - "nameLocation": "10530:1:3", - "nodeType": "VariableDeclaration", - "scope": 1189, - "src": "10525:6:3", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 1162, - "name": "uint", - "nodeType": "ElementaryTypeName", - "src": "10525:4:3", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 1165, - "mutability": "mutable", - "name": "b", - "nameLocation": "10538:1:3", - "nodeType": "VariableDeclaration", - "scope": 1189, - "src": "10533:6:3", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 1164, - "name": "uint", - "nodeType": "ElementaryTypeName", - "src": "10533:4:3", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 1167, - "mutability": "mutable", - "name": "decimals", - "nameLocation": "10546:8:3", - "nodeType": "VariableDeclaration", - "scope": 1189, - "src": "10541:13:3", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 1166, - "name": "uint", - "nodeType": "ElementaryTypeName", - "src": "10541:4:3", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 1169, - "mutability": "mutable", - "name": "err", - "nameLocation": "10570:3:3", - "nodeType": "VariableDeclaration", - "scope": 1189, - "src": "10556:17:3", - "stateVariable": false, - "storageLocation": "memory", - "typeDescriptions": { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string" - }, - "typeName": { - "id": 1168, - "name": "string", - "nodeType": "ElementaryTypeName", - "src": "10556:6:3", - "typeDescriptions": { - "typeIdentifier": "t_string_storage_ptr", - "typeString": "string" - } - }, - "visibility": "internal" - } - ], - "src": "10524:50:3" - }, - "returnParameters": { - "id": 1171, - "nodeType": "ParameterList", - "parameters": [], - "src": "10584:0:3" - }, - "scope": 1844, - "stateMutability": "nonpayable", - "virtual": false, - "visibility": "internal" - }, - { - "id": 1219, - "nodeType": "FunctionDefinition", - "src": "10722:259:3", - "body": { - "id": 1218, - "nodeType": "Block", - "src": "10765:216:3", - "statements": [ - { - "condition": { - "commonType": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "id": 1198, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "id": 1196, - "name": "a", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1191, - "src": "10779:1:3", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "BinaryOperation", - "operator": ">=", - "rightExpression": { - "id": 1197, - "name": "b", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1193, - "src": "10784:1:3", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "src": "10779:6:3", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "id": 1217, - "nodeType": "IfStatement", - "src": "10775:200:3", - "trueBody": { - "id": 1216, - "nodeType": "Block", - "src": "10787:188:3", - "statements": [ - { - "eventCall": { - "arguments": [ - { - "hexValue": "4572726f723a2061203c2062206e6f7420736174697366696564205b75696e745d", - "id": 1200, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "string", - "lValueRequested": false, - "nodeType": "Literal", - "src": "10810:35:3", - "typeDescriptions": { - "typeIdentifier": "t_stringliteral_e4a5f85d4936ddbc273c762d0b3a90fefdc47bf4d5496816359b86f70b5c74f9", - "typeString": "literal_string \"Error: a < b not satisfied [uint]\"" - }, - "value": "Error: a < b not satisfied [uint]" - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_stringliteral_e4a5f85d4936ddbc273c762d0b3a90fefdc47bf4d5496816359b86f70b5c74f9", - "typeString": "literal_string \"Error: a < b not satisfied [uint]\"" - } - ], - "id": 1199, - "name": "log", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 63, - "src": "10806:3:3", - "typeDescriptions": { - "typeIdentifier": "t_function_event_nonpayable$_t_string_memory_ptr_$returns$__$", - "typeString": "function (string memory)" - } - }, - "id": 1201, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "10806:40:3", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 1202, - "nodeType": "EmitStatement", - "src": "10801:45:3" - }, - { - "eventCall": { - "arguments": [ - { - "hexValue": "202056616c75652061", - "id": 1204, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "string", - "lValueRequested": false, - "nodeType": "Literal", - "src": "10880:11:3", - "typeDescriptions": { - "typeIdentifier": "t_stringliteral_c592b529b874569f165479a5a4380dedf000796f11e04035f76bfa7310b31d26", - "typeString": "literal_string \" Value a\"" - }, - "value": " Value a" - }, - { - "id": 1205, - "name": "a", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1191, - "src": "10893:1:3", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_stringliteral_c592b529b874569f165479a5a4380dedf000796f11e04035f76bfa7310b31d26", - "typeString": "literal_string \" Value a\"" - }, - { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - ], - "id": 1203, - "name": "log_named_uint", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 131, - "src": "10865:14:3", - "typeDescriptions": { - "typeIdentifier": "t_function_event_nonpayable$_t_string_memory_ptr_$_t_uint256_$returns$__$", - "typeString": "function (string memory,uint256)" - } - }, - "id": 1206, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "10865:30:3", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 1207, - "nodeType": "EmitStatement", - "src": "10860:35:3" - }, - { - "eventCall": { - "arguments": [ - { - "hexValue": "202056616c75652062", - "id": 1209, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "string", - "lValueRequested": false, - "nodeType": "Literal", - "src": "10929:11:3", - "typeDescriptions": { - "typeIdentifier": "t_stringliteral_e4b1d025132960c3fb1a582cf2366864dc416744d1b9770aa69fe3749623ebc3", - "typeString": "literal_string \" Value b\"" - }, - "value": " Value b" - }, - { - "id": 1210, - "name": "b", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1193, - "src": "10942:1:3", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_stringliteral_e4b1d025132960c3fb1a582cf2366864dc416744d1b9770aa69fe3749623ebc3", - "typeString": "literal_string \" Value b\"" - }, - { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - ], - "id": 1208, - "name": "log_named_uint", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 131, - "src": "10914:14:3", - "typeDescriptions": { - "typeIdentifier": "t_function_event_nonpayable$_t_string_memory_ptr_$_t_uint256_$returns$__$", - "typeString": "function (string memory,uint256)" - } - }, - "id": 1211, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "10914:30:3", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 1212, - "nodeType": "EmitStatement", - "src": "10909:35:3" - }, - { - "expression": { - "arguments": [], - "expression": { - "argumentTypes": [], - "id": 1213, - "name": "fail", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 274, - "src": "10958:4:3", - "typeDescriptions": { - "typeIdentifier": "t_function_internal_nonpayable$__$returns$__$", - "typeString": "function ()" - } - }, - "id": 1214, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "10958:6:3", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 1215, - "nodeType": "ExpressionStatement", - "src": "10958:6:3" - } - ] - } - } - ] - }, - "implemented": true, - "kind": "function", - "modifiers": [], - "name": "assertLt", - "nameLocation": "10731:8:3", - "parameters": { - "id": 1194, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 1191, - "mutability": "mutable", - "name": "a", - "nameLocation": "10745:1:3", - "nodeType": "VariableDeclaration", - "scope": 1219, - "src": "10740:6:3", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 1190, - "name": "uint", - "nodeType": "ElementaryTypeName", - "src": "10740:4:3", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 1193, - "mutability": "mutable", - "name": "b", - "nameLocation": "10753:1:3", - "nodeType": "VariableDeclaration", - "scope": 1219, - "src": "10748:6:3", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 1192, - "name": "uint", - "nodeType": "ElementaryTypeName", - "src": "10748:4:3", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "visibility": "internal" - } - ], - "src": "10739:16:3" - }, - "returnParameters": { - "id": 1195, - "nodeType": "ParameterList", - "parameters": [], - "src": "10765:0:3" - }, - "scope": 1844, - "stateMutability": "nonpayable", - "virtual": false, - "visibility": "internal" - }, - { - "id": 1244, - "nodeType": "FunctionDefinition", - "src": "10986:178:3", - "body": { - "id": 1243, - "nodeType": "Block", - "src": "11048:116:3", - "statements": [ - { - "condition": { - "commonType": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "id": 1230, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "id": 1228, - "name": "a", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1221, - "src": "11062:1:3", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "BinaryOperation", - "operator": ">=", - "rightExpression": { - "id": 1229, - "name": "b", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1223, - "src": "11067:1:3", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "src": "11062:6:3", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "id": 1242, - "nodeType": "IfStatement", - "src": "11058:100:3", - "trueBody": { - "id": 1241, - "nodeType": "Block", - "src": "11070:88:3", - "statements": [ - { - "eventCall": { - "arguments": [ - { - "hexValue": "4572726f72", - "id": 1232, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "string", - "lValueRequested": false, - "nodeType": "Literal", - "src": "11106:7:3", - "typeDescriptions": { - "typeIdentifier": "t_stringliteral_e342daa49723ff3485f4ff5f755a17b8bc9c3c33bbd312ceee37c94eebfe45c1", - "typeString": "literal_string \"Error\"" - }, - "value": "Error" - }, - { - "id": 1233, - "name": "err", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1225, - "src": "11115:3:3", - "typeDescriptions": { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string memory" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_stringliteral_e342daa49723ff3485f4ff5f755a17b8bc9c3c33bbd312ceee37c94eebfe45c1", - "typeString": "literal_string \"Error\"" - }, - { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string memory" - } - ], - "id": 1231, - "name": "log_named_string", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 143, - "src": "11089:16:3", - "typeDescriptions": { - "typeIdentifier": "t_function_event_nonpayable$_t_string_memory_ptr_$_t_string_memory_ptr_$returns$__$", - "typeString": "function (string memory,string memory)" - } - }, - "id": 1234, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "11089:30:3", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 1235, - "nodeType": "EmitStatement", - "src": "11084:35:3" - }, - { - "expression": { - "arguments": [ - { - "id": 1237, - "name": "a", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1221, - "src": "11142:1:3", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - { - "id": 1238, - "name": "b", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1223, - "src": "11145:1:3", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - ], - "id": 1236, - "name": "assertLt", - "nodeType": "Identifier", - "overloadedDeclarations": [ - 1219, - 1244, - 1274, - 1299 - ], - "referencedDeclaration": 1219, - "src": "11133:8:3", - "typeDescriptions": { - "typeIdentifier": "t_function_internal_nonpayable$_t_uint256_$_t_uint256_$returns$__$", - "typeString": "function (uint256,uint256)" - } - }, - "id": 1239, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "11133:14:3", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 1240, - "nodeType": "ExpressionStatement", - "src": "11133:14:3" - } - ] - } - } - ] - }, - "implemented": true, - "kind": "function", - "modifiers": [], - "name": "assertLt", - "nameLocation": "10995:8:3", - "parameters": { - "id": 1226, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 1221, - "mutability": "mutable", - "name": "a", - "nameLocation": "11009:1:3", - "nodeType": "VariableDeclaration", - "scope": 1244, - "src": "11004:6:3", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 1220, - "name": "uint", - "nodeType": "ElementaryTypeName", - "src": "11004:4:3", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 1223, - "mutability": "mutable", - "name": "b", - "nameLocation": "11017:1:3", - "nodeType": "VariableDeclaration", - "scope": 1244, - "src": "11012:6:3", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 1222, - "name": "uint", - "nodeType": "ElementaryTypeName", - "src": "11012:4:3", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 1225, - "mutability": "mutable", - "name": "err", - "nameLocation": "11034:3:3", - "nodeType": "VariableDeclaration", - "scope": 1244, - "src": "11020:17:3", - "stateVariable": false, - "storageLocation": "memory", - "typeDescriptions": { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string" - }, - "typeName": { - "id": 1224, - "name": "string", - "nodeType": "ElementaryTypeName", - "src": "11020:6:3", - "typeDescriptions": { - "typeIdentifier": "t_string_storage_ptr", - "typeString": "string" - } - }, - "visibility": "internal" - } - ], - "src": "11003:35:3" - }, - "returnParameters": { - "id": 1227, - "nodeType": "ParameterList", - "parameters": [], - "src": "11048:0:3" - }, - "scope": 1844, - "stateMutability": "nonpayable", - "virtual": false, - "visibility": "internal" - }, - { - "id": 1274, - "nodeType": "FunctionDefinition", - "src": "11169:254:3", - "body": { - "id": 1273, - "nodeType": "Block", - "src": "11210:213:3", - "statements": [ - { - "condition": { - "commonType": { - "typeIdentifier": "t_int256", - "typeString": "int256" - }, - "id": 1253, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "id": 1251, - "name": "a", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1246, - "src": "11224:1:3", - "typeDescriptions": { - "typeIdentifier": "t_int256", - "typeString": "int256" - } - }, - "nodeType": "BinaryOperation", - "operator": ">=", - "rightExpression": { - "id": 1252, - "name": "b", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1248, - "src": "11229:1:3", - "typeDescriptions": { - "typeIdentifier": "t_int256", - "typeString": "int256" - } - }, - "src": "11224:6:3", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "id": 1272, - "nodeType": "IfStatement", - "src": "11220:197:3", - "trueBody": { - "id": 1271, - "nodeType": "Block", - "src": "11232:185:3", - "statements": [ - { - "eventCall": { - "arguments": [ - { - "hexValue": "4572726f723a2061203c2062206e6f7420736174697366696564205b696e745d", - "id": 1255, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "string", - "lValueRequested": false, - "nodeType": "Literal", - "src": "11255:34:3", - "typeDescriptions": { - "typeIdentifier": "t_stringliteral_62edb5e296dde1308ab599c3156f51dcd32b6d82784df4b0c0246d307d4bd055", - "typeString": "literal_string \"Error: a < b not satisfied [int]\"" - }, - "value": "Error: a < b not satisfied [int]" - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_stringliteral_62edb5e296dde1308ab599c3156f51dcd32b6d82784df4b0c0246d307d4bd055", - "typeString": "literal_string \"Error: a < b not satisfied [int]\"" - } - ], - "id": 1254, - "name": "log", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 63, - "src": "11251:3:3", - "typeDescriptions": { - "typeIdentifier": "t_function_event_nonpayable$_t_string_memory_ptr_$returns$__$", - "typeString": "function (string memory)" - } - }, - "id": 1256, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "11251:39:3", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 1257, - "nodeType": "EmitStatement", - "src": "11246:44:3" - }, - { - "eventCall": { - "arguments": [ - { - "hexValue": "202056616c75652061", - "id": 1259, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "string", - "lValueRequested": false, - "nodeType": "Literal", - "src": "11323:11:3", - "typeDescriptions": { - "typeIdentifier": "t_stringliteral_c592b529b874569f165479a5a4380dedf000796f11e04035f76bfa7310b31d26", - "typeString": "literal_string \" Value a\"" - }, - "value": " Value a" - }, - { - "id": 1260, - "name": "a", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1246, - "src": "11336:1:3", - "typeDescriptions": { - "typeIdentifier": "t_int256", - "typeString": "int256" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_stringliteral_c592b529b874569f165479a5a4380dedf000796f11e04035f76bfa7310b31d26", - "typeString": "literal_string \" Value a\"" - }, - { - "typeIdentifier": "t_int256", - "typeString": "int256" - } - ], - "id": 1258, - "name": "log_named_int", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 125, - "src": "11309:13:3", - "typeDescriptions": { - "typeIdentifier": "t_function_event_nonpayable$_t_string_memory_ptr_$_t_int256_$returns$__$", - "typeString": "function (string memory,int256)" - } - }, - "id": 1261, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "11309:29:3", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 1262, - "nodeType": "EmitStatement", - "src": "11304:34:3" - }, - { - "eventCall": { - "arguments": [ - { - "hexValue": "202056616c75652062", - "id": 1264, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "string", - "lValueRequested": false, - "nodeType": "Literal", - "src": "11371:11:3", - "typeDescriptions": { - "typeIdentifier": "t_stringliteral_e4b1d025132960c3fb1a582cf2366864dc416744d1b9770aa69fe3749623ebc3", - "typeString": "literal_string \" Value b\"" - }, - "value": " Value b" - }, - { - "id": 1265, - "name": "b", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1248, - "src": "11384:1:3", - "typeDescriptions": { - "typeIdentifier": "t_int256", - "typeString": "int256" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_stringliteral_e4b1d025132960c3fb1a582cf2366864dc416744d1b9770aa69fe3749623ebc3", - "typeString": "literal_string \" Value b\"" - }, - { - "typeIdentifier": "t_int256", - "typeString": "int256" - } - ], - "id": 1263, - "name": "log_named_int", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 125, - "src": "11357:13:3", - "typeDescriptions": { - "typeIdentifier": "t_function_event_nonpayable$_t_string_memory_ptr_$_t_int256_$returns$__$", - "typeString": "function (string memory,int256)" - } - }, - "id": 1266, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "11357:29:3", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 1267, - "nodeType": "EmitStatement", - "src": "11352:34:3" - }, - { - "expression": { - "arguments": [], - "expression": { - "argumentTypes": [], - "id": 1268, - "name": "fail", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 274, - "src": "11400:4:3", - "typeDescriptions": { - "typeIdentifier": "t_function_internal_nonpayable$__$returns$__$", - "typeString": "function ()" - } - }, - "id": 1269, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "11400:6:3", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 1270, - "nodeType": "ExpressionStatement", - "src": "11400:6:3" - } - ] - } - } - ] - }, - "implemented": true, - "kind": "function", - "modifiers": [], - "name": "assertLt", - "nameLocation": "11178:8:3", - "parameters": { - "id": 1249, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 1246, - "mutability": "mutable", - "name": "a", - "nameLocation": "11191:1:3", - "nodeType": "VariableDeclaration", - "scope": 1274, - "src": "11187:5:3", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_int256", - "typeString": "int256" - }, - "typeName": { - "id": 1245, - "name": "int", - "nodeType": "ElementaryTypeName", - "src": "11187:3:3", - "typeDescriptions": { - "typeIdentifier": "t_int256", - "typeString": "int256" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 1248, - "mutability": "mutable", - "name": "b", - "nameLocation": "11198:1:3", - "nodeType": "VariableDeclaration", - "scope": 1274, - "src": "11194:5:3", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_int256", - "typeString": "int256" - }, - "typeName": { - "id": 1247, - "name": "int", - "nodeType": "ElementaryTypeName", - "src": "11194:3:3", - "typeDescriptions": { - "typeIdentifier": "t_int256", - "typeString": "int256" - } - }, - "visibility": "internal" - } - ], - "src": "11186:14:3" - }, - "returnParameters": { - "id": 1250, - "nodeType": "ParameterList", - "parameters": [], - "src": "11210:0:3" - }, - "scope": 1844, - "stateMutability": "nonpayable", - "virtual": false, - "visibility": "internal" - }, - { - "id": 1299, - "nodeType": "FunctionDefinition", - "src": "11428:176:3", - "body": { - "id": 1298, - "nodeType": "Block", - "src": "11488:116:3", - "statements": [ - { - "condition": { - "commonType": { - "typeIdentifier": "t_int256", - "typeString": "int256" - }, - "id": 1285, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "id": 1283, - "name": "a", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1276, - "src": "11502:1:3", - "typeDescriptions": { - "typeIdentifier": "t_int256", - "typeString": "int256" - } - }, - "nodeType": "BinaryOperation", - "operator": ">=", - "rightExpression": { - "id": 1284, - "name": "b", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1278, - "src": "11507:1:3", - "typeDescriptions": { - "typeIdentifier": "t_int256", - "typeString": "int256" - } - }, - "src": "11502:6:3", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "id": 1297, - "nodeType": "IfStatement", - "src": "11498:100:3", - "trueBody": { - "id": 1296, - "nodeType": "Block", - "src": "11510:88:3", - "statements": [ - { - "eventCall": { - "arguments": [ - { - "hexValue": "4572726f72", - "id": 1287, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "string", - "lValueRequested": false, - "nodeType": "Literal", - "src": "11546:7:3", - "typeDescriptions": { - "typeIdentifier": "t_stringliteral_e342daa49723ff3485f4ff5f755a17b8bc9c3c33bbd312ceee37c94eebfe45c1", - "typeString": "literal_string \"Error\"" - }, - "value": "Error" - }, - { - "id": 1288, - "name": "err", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1280, - "src": "11555:3:3", - "typeDescriptions": { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string memory" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_stringliteral_e342daa49723ff3485f4ff5f755a17b8bc9c3c33bbd312ceee37c94eebfe45c1", - "typeString": "literal_string \"Error\"" - }, - { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string memory" - } - ], - "id": 1286, - "name": "log_named_string", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 143, - "src": "11529:16:3", - "typeDescriptions": { - "typeIdentifier": "t_function_event_nonpayable$_t_string_memory_ptr_$_t_string_memory_ptr_$returns$__$", - "typeString": "function (string memory,string memory)" - } - }, - "id": 1289, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "11529:30:3", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 1290, - "nodeType": "EmitStatement", - "src": "11524:35:3" - }, - { - "expression": { - "arguments": [ - { - "id": 1292, - "name": "a", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1276, - "src": "11582:1:3", - "typeDescriptions": { - "typeIdentifier": "t_int256", - "typeString": "int256" - } - }, - { - "id": 1293, - "name": "b", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1278, - "src": "11585:1:3", - "typeDescriptions": { - "typeIdentifier": "t_int256", - "typeString": "int256" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_int256", - "typeString": "int256" - }, - { - "typeIdentifier": "t_int256", - "typeString": "int256" - } - ], - "id": 1291, - "name": "assertLt", - "nodeType": "Identifier", - "overloadedDeclarations": [ - 1219, - 1244, - 1274, - 1299 - ], - "referencedDeclaration": 1274, - "src": "11573:8:3", - "typeDescriptions": { - "typeIdentifier": "t_function_internal_nonpayable$_t_int256_$_t_int256_$returns$__$", - "typeString": "function (int256,int256)" - } - }, - "id": 1294, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "11573:14:3", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 1295, - "nodeType": "ExpressionStatement", - "src": "11573:14:3" - } - ] - } - } - ] - }, - "implemented": true, - "kind": "function", - "modifiers": [], - "name": "assertLt", - "nameLocation": "11437:8:3", - "parameters": { - "id": 1281, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 1276, - "mutability": "mutable", - "name": "a", - "nameLocation": "11450:1:3", - "nodeType": "VariableDeclaration", - "scope": 1299, - "src": "11446:5:3", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_int256", - "typeString": "int256" - }, - "typeName": { - "id": 1275, - "name": "int", - "nodeType": "ElementaryTypeName", - "src": "11446:3:3", - "typeDescriptions": { - "typeIdentifier": "t_int256", - "typeString": "int256" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 1278, - "mutability": "mutable", - "name": "b", - "nameLocation": "11457:1:3", - "nodeType": "VariableDeclaration", - "scope": 1299, - "src": "11453:5:3", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_int256", - "typeString": "int256" - }, - "typeName": { - "id": 1277, - "name": "int", - "nodeType": "ElementaryTypeName", - "src": "11453:3:3", - "typeDescriptions": { - "typeIdentifier": "t_int256", - "typeString": "int256" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 1280, - "mutability": "mutable", - "name": "err", - "nameLocation": "11474:3:3", - "nodeType": "VariableDeclaration", - "scope": 1299, - "src": "11460:17:3", - "stateVariable": false, - "storageLocation": "memory", - "typeDescriptions": { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string" - }, - "typeName": { - "id": 1279, - "name": "string", - "nodeType": "ElementaryTypeName", - "src": "11460:6:3", - "typeDescriptions": { - "typeIdentifier": "t_string_storage_ptr", - "typeString": "string" - } - }, - "visibility": "internal" - } - ], - "src": "11445:33:3" - }, - "returnParameters": { - "id": 1282, - "nodeType": "ParameterList", - "parameters": [], - "src": "11488:0:3" - }, - "scope": 1844, - "stateMutability": "nonpayable", - "virtual": false, - "visibility": "internal" - }, - { - "id": 1333, - "nodeType": "FunctionDefinition", - "src": "11609:320:3", - "body": { - "id": 1332, - "nodeType": "Block", - "src": "11672:257:3", - "statements": [ - { - "condition": { - "commonType": { - "typeIdentifier": "t_int256", - "typeString": "int256" - }, - "id": 1310, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "id": 1308, - "name": "a", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1301, - "src": "11686:1:3", - "typeDescriptions": { - "typeIdentifier": "t_int256", - "typeString": "int256" - } - }, - "nodeType": "BinaryOperation", - "operator": ">=", - "rightExpression": { - "id": 1309, - "name": "b", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1303, - "src": "11691:1:3", - "typeDescriptions": { - "typeIdentifier": "t_int256", - "typeString": "int256" - } - }, - "src": "11686:6:3", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "id": 1331, - "nodeType": "IfStatement", - "src": "11682:241:3", - "trueBody": { - "id": 1330, - "nodeType": "Block", - "src": "11694:229:3", - "statements": [ - { - "eventCall": { - "arguments": [ - { - "hexValue": "4572726f723a2061203c2062206e6f7420736174697366696564205b646563696d616c20696e745d", - "id": 1312, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "string", - "lValueRequested": false, - "nodeType": "Literal", - "src": "11717:42:3", - "typeDescriptions": { - "typeIdentifier": "t_stringliteral_a598de9e78c706978d3e40be19632446c2f234152ee02226f88acff1b63da79a", - "typeString": "literal_string \"Error: a < b not satisfied [decimal int]\"" - }, - "value": "Error: a < b not satisfied [decimal int]" - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_stringliteral_a598de9e78c706978d3e40be19632446c2f234152ee02226f88acff1b63da79a", - "typeString": "literal_string \"Error: a < b not satisfied [decimal int]\"" - } - ], - "id": 1311, - "name": "log", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 63, - "src": "11713:3:3", - "typeDescriptions": { - "typeIdentifier": "t_function_event_nonpayable$_t_string_memory_ptr_$returns$__$", - "typeString": "function (string memory)" - } - }, - "id": 1313, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "11713:47:3", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 1314, - "nodeType": "EmitStatement", - "src": "11708:52:3" - }, - { - "eventCall": { - "arguments": [ - { - "hexValue": "202056616c75652061", - "id": 1316, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "string", - "lValueRequested": false, - "nodeType": "Literal", - "src": "11801:11:3", - "typeDescriptions": { - "typeIdentifier": "t_stringliteral_c592b529b874569f165479a5a4380dedf000796f11e04035f76bfa7310b31d26", - "typeString": "literal_string \" Value a\"" - }, - "value": " Value a" - }, - { - "id": 1317, - "name": "a", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1301, - "src": "11814:1:3", - "typeDescriptions": { - "typeIdentifier": "t_int256", - "typeString": "int256" - } - }, - { - "id": 1318, - "name": "decimals", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1305, - "src": "11817:8:3", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_stringliteral_c592b529b874569f165479a5a4380dedf000796f11e04035f76bfa7310b31d26", - "typeString": "literal_string \" Value a\"" - }, - { - "typeIdentifier": "t_int256", - "typeString": "int256" - }, - { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - ], - "id": 1315, - "name": "log_named_decimal_int", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 111, - "src": "11779:21:3", - "typeDescriptions": { - "typeIdentifier": "t_function_event_nonpayable$_t_string_memory_ptr_$_t_int256_$_t_uint256_$returns$__$", - "typeString": "function (string memory,int256,uint256)" - } - }, - "id": 1319, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "11779:47:3", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 1320, - "nodeType": "EmitStatement", - "src": "11774:52:3" - }, - { - "eventCall": { - "arguments": [ - { - "hexValue": "202056616c75652062", - "id": 1322, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "string", - "lValueRequested": false, - "nodeType": "Literal", - "src": "11867:11:3", - "typeDescriptions": { - "typeIdentifier": "t_stringliteral_e4b1d025132960c3fb1a582cf2366864dc416744d1b9770aa69fe3749623ebc3", - "typeString": "literal_string \" Value b\"" - }, - "value": " Value b" - }, - { - "id": 1323, - "name": "b", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1303, - "src": "11880:1:3", - "typeDescriptions": { - "typeIdentifier": "t_int256", - "typeString": "int256" - } - }, - { - "id": 1324, - "name": "decimals", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1305, - "src": "11883:8:3", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_stringliteral_e4b1d025132960c3fb1a582cf2366864dc416744d1b9770aa69fe3749623ebc3", - "typeString": "literal_string \" Value b\"" - }, - { - "typeIdentifier": "t_int256", - "typeString": "int256" - }, - { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - ], - "id": 1321, - "name": "log_named_decimal_int", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 111, - "src": "11845:21:3", - "typeDescriptions": { - "typeIdentifier": "t_function_event_nonpayable$_t_string_memory_ptr_$_t_int256_$_t_uint256_$returns$__$", - "typeString": "function (string memory,int256,uint256)" - } - }, - "id": 1325, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "11845:47:3", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 1326, - "nodeType": "EmitStatement", - "src": "11840:52:3" - }, - { - "expression": { - "arguments": [], - "expression": { - "argumentTypes": [], - "id": 1327, - "name": "fail", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 274, - "src": "11906:4:3", - "typeDescriptions": { - "typeIdentifier": "t_function_internal_nonpayable$__$returns$__$", - "typeString": "function ()" - } - }, - "id": 1328, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "11906:6:3", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 1329, - "nodeType": "ExpressionStatement", - "src": "11906:6:3" - } - ] - } - } - ] - }, - "implemented": true, - "kind": "function", - "modifiers": [], - "name": "assertLtDecimal", - "nameLocation": "11618:15:3", - "parameters": { - "id": 1306, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 1301, - "mutability": "mutable", - "name": "a", - "nameLocation": "11638:1:3", - "nodeType": "VariableDeclaration", - "scope": 1333, - "src": "11634:5:3", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_int256", - "typeString": "int256" - }, - "typeName": { - "id": 1300, - "name": "int", - "nodeType": "ElementaryTypeName", - "src": "11634:3:3", - "typeDescriptions": { - "typeIdentifier": "t_int256", - "typeString": "int256" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 1303, - "mutability": "mutable", - "name": "b", - "nameLocation": "11645:1:3", - "nodeType": "VariableDeclaration", - "scope": 1333, - "src": "11641:5:3", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_int256", - "typeString": "int256" - }, - "typeName": { - "id": 1302, - "name": "int", - "nodeType": "ElementaryTypeName", - "src": "11641:3:3", - "typeDescriptions": { - "typeIdentifier": "t_int256", - "typeString": "int256" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 1305, - "mutability": "mutable", - "name": "decimals", - "nameLocation": "11653:8:3", - "nodeType": "VariableDeclaration", - "scope": 1333, - "src": "11648:13:3", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 1304, - "name": "uint", - "nodeType": "ElementaryTypeName", - "src": "11648:4:3", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "visibility": "internal" - } - ], - "src": "11633:29:3" - }, - "returnParameters": { - "id": 1307, - "nodeType": "ParameterList", - "parameters": [], - "src": "11672:0:3" - }, - "scope": 1844, - "stateMutability": "nonpayable", - "virtual": false, - "visibility": "internal" - }, - { - "id": 1361, - "nodeType": "FunctionDefinition", - "src": "11934:215:3", - "body": { - "id": 1360, - "nodeType": "Block", - "src": "12016:133:3", - "statements": [ - { - "condition": { - "commonType": { - "typeIdentifier": "t_int256", - "typeString": "int256" - }, - "id": 1346, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "id": 1344, - "name": "a", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1335, - "src": "12030:1:3", - "typeDescriptions": { - "typeIdentifier": "t_int256", - "typeString": "int256" - } - }, - "nodeType": "BinaryOperation", - "operator": ">=", - "rightExpression": { - "id": 1345, - "name": "b", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1337, - "src": "12035:1:3", - "typeDescriptions": { - "typeIdentifier": "t_int256", - "typeString": "int256" - } - }, - "src": "12030:6:3", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "id": 1359, - "nodeType": "IfStatement", - "src": "12026:117:3", - "trueBody": { - "id": 1358, - "nodeType": "Block", - "src": "12038:105:3", - "statements": [ - { - "eventCall": { - "arguments": [ - { - "hexValue": "4572726f72", - "id": 1348, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "string", - "lValueRequested": false, - "nodeType": "Literal", - "src": "12074:7:3", - "typeDescriptions": { - "typeIdentifier": "t_stringliteral_e342daa49723ff3485f4ff5f755a17b8bc9c3c33bbd312ceee37c94eebfe45c1", - "typeString": "literal_string \"Error\"" - }, - "value": "Error" - }, - { - "id": 1349, - "name": "err", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1341, - "src": "12083:3:3", - "typeDescriptions": { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string memory" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_stringliteral_e342daa49723ff3485f4ff5f755a17b8bc9c3c33bbd312ceee37c94eebfe45c1", - "typeString": "literal_string \"Error\"" - }, - { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string memory" - } - ], - "id": 1347, - "name": "log_named_string", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 143, - "src": "12057:16:3", - "typeDescriptions": { - "typeIdentifier": "t_function_event_nonpayable$_t_string_memory_ptr_$_t_string_memory_ptr_$returns$__$", - "typeString": "function (string memory,string memory)" - } - }, - "id": 1350, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "12057:30:3", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 1351, - "nodeType": "EmitStatement", - "src": "12052:35:3" - }, - { - "expression": { - "arguments": [ - { - "id": 1353, - "name": "a", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1335, - "src": "12117:1:3", - "typeDescriptions": { - "typeIdentifier": "t_int256", - "typeString": "int256" - } - }, - { - "id": 1354, - "name": "b", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1337, - "src": "12120:1:3", - "typeDescriptions": { - "typeIdentifier": "t_int256", - "typeString": "int256" - } - }, - { - "id": 1355, - "name": "decimals", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1339, - "src": "12123:8:3", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_int256", - "typeString": "int256" - }, - { - "typeIdentifier": "t_int256", - "typeString": "int256" - }, - { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - ], - "id": 1352, - "name": "assertLtDecimal", - "nodeType": "Identifier", - "overloadedDeclarations": [ - 1333, - 1361, - 1395, - 1423 - ], - "referencedDeclaration": 1333, - "src": "12101:15:3", - "typeDescriptions": { - "typeIdentifier": "t_function_internal_nonpayable$_t_int256_$_t_int256_$_t_uint256_$returns$__$", - "typeString": "function (int256,int256,uint256)" - } - }, - "id": 1356, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "12101:31:3", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 1357, - "nodeType": "ExpressionStatement", - "src": "12101:31:3" - } - ] - } - } - ] - }, - "implemented": true, - "kind": "function", - "modifiers": [], - "name": "assertLtDecimal", - "nameLocation": "11943:15:3", - "parameters": { - "id": 1342, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 1335, - "mutability": "mutable", - "name": "a", - "nameLocation": "11963:1:3", - "nodeType": "VariableDeclaration", - "scope": 1361, - "src": "11959:5:3", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_int256", - "typeString": "int256" - }, - "typeName": { - "id": 1334, - "name": "int", - "nodeType": "ElementaryTypeName", - "src": "11959:3:3", - "typeDescriptions": { - "typeIdentifier": "t_int256", - "typeString": "int256" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 1337, - "mutability": "mutable", - "name": "b", - "nameLocation": "11970:1:3", - "nodeType": "VariableDeclaration", - "scope": 1361, - "src": "11966:5:3", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_int256", - "typeString": "int256" - }, - "typeName": { - "id": 1336, - "name": "int", - "nodeType": "ElementaryTypeName", - "src": "11966:3:3", - "typeDescriptions": { - "typeIdentifier": "t_int256", - "typeString": "int256" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 1339, - "mutability": "mutable", - "name": "decimals", - "nameLocation": "11978:8:3", - "nodeType": "VariableDeclaration", - "scope": 1361, - "src": "11973:13:3", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 1338, - "name": "uint", - "nodeType": "ElementaryTypeName", - "src": "11973:4:3", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 1341, - "mutability": "mutable", - "name": "err", - "nameLocation": "12002:3:3", - "nodeType": "VariableDeclaration", - "scope": 1361, - "src": "11988:17:3", - "stateVariable": false, - "storageLocation": "memory", - "typeDescriptions": { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string" - }, - "typeName": { - "id": 1340, - "name": "string", - "nodeType": "ElementaryTypeName", - "src": "11988:6:3", - "typeDescriptions": { - "typeIdentifier": "t_string_storage_ptr", - "typeString": "string" - } - }, - "visibility": "internal" - } - ], - "src": "11958:48:3" - }, - "returnParameters": { - "id": 1343, - "nodeType": "ParameterList", - "parameters": [], - "src": "12016:0:3" - }, - "scope": 1844, - "stateMutability": "nonpayable", - "virtual": false, - "visibility": "internal" - }, - { - "id": 1395, - "nodeType": "FunctionDefinition", - "src": "12154:325:3", - "body": { - "id": 1394, - "nodeType": "Block", - "src": "12219:260:3", - "statements": [ - { - "condition": { - "commonType": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "id": 1372, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "id": 1370, - "name": "a", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1363, - "src": "12233:1:3", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "BinaryOperation", - "operator": ">=", - "rightExpression": { - "id": 1371, - "name": "b", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1365, - "src": "12238:1:3", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "src": "12233:6:3", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "id": 1393, - "nodeType": "IfStatement", - "src": "12229:244:3", - "trueBody": { - "id": 1392, - "nodeType": "Block", - "src": "12241:232:3", - "statements": [ - { - "eventCall": { - "arguments": [ - { - "hexValue": "4572726f723a2061203c2062206e6f7420736174697366696564205b646563696d616c2075696e745d", - "id": 1374, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "string", - "lValueRequested": false, - "nodeType": "Literal", - "src": "12264:43:3", - "typeDescriptions": { - "typeIdentifier": "t_stringliteral_8057606f9e67842ac0149f4a7ffdaca59331aea176cd1419e89b7b4b21bbc6d9", - "typeString": "literal_string \"Error: a < b not satisfied [decimal uint]\"" - }, - "value": "Error: a < b not satisfied [decimal uint]" - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_stringliteral_8057606f9e67842ac0149f4a7ffdaca59331aea176cd1419e89b7b4b21bbc6d9", - "typeString": "literal_string \"Error: a < b not satisfied [decimal uint]\"" - } - ], - "id": 1373, - "name": "log", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 63, - "src": "12260:3:3", - "typeDescriptions": { - "typeIdentifier": "t_function_event_nonpayable$_t_string_memory_ptr_$returns$__$", - "typeString": "function (string memory)" - } - }, - "id": 1375, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "12260:48:3", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 1376, - "nodeType": "EmitStatement", - "src": "12255:53:3" - }, - { - "eventCall": { - "arguments": [ - { - "hexValue": "202056616c75652061", - "id": 1378, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "string", - "lValueRequested": false, - "nodeType": "Literal", - "src": "12350:11:3", - "typeDescriptions": { - "typeIdentifier": "t_stringliteral_c592b529b874569f165479a5a4380dedf000796f11e04035f76bfa7310b31d26", - "typeString": "literal_string \" Value a\"" - }, - "value": " Value a" - }, - { - "id": 1379, - "name": "a", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1363, - "src": "12363:1:3", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - { - "id": 1380, - "name": "decimals", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1367, - "src": "12366:8:3", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_stringliteral_c592b529b874569f165479a5a4380dedf000796f11e04035f76bfa7310b31d26", - "typeString": "literal_string \" Value a\"" - }, - { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - ], - "id": 1377, - "name": "log_named_decimal_uint", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 119, - "src": "12327:22:3", - "typeDescriptions": { - "typeIdentifier": "t_function_event_nonpayable$_t_string_memory_ptr_$_t_uint256_$_t_uint256_$returns$__$", - "typeString": "function (string memory,uint256,uint256)" - } - }, - "id": 1381, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "12327:48:3", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 1382, - "nodeType": "EmitStatement", - "src": "12322:53:3" - }, - { - "eventCall": { - "arguments": [ - { - "hexValue": "202056616c75652062", - "id": 1384, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "string", - "lValueRequested": false, - "nodeType": "Literal", - "src": "12417:11:3", - "typeDescriptions": { - "typeIdentifier": "t_stringliteral_e4b1d025132960c3fb1a582cf2366864dc416744d1b9770aa69fe3749623ebc3", - "typeString": "literal_string \" Value b\"" - }, - "value": " Value b" - }, - { - "id": 1385, - "name": "b", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1365, - "src": "12430:1:3", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - { - "id": 1386, - "name": "decimals", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1367, - "src": "12433:8:3", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_stringliteral_e4b1d025132960c3fb1a582cf2366864dc416744d1b9770aa69fe3749623ebc3", - "typeString": "literal_string \" Value b\"" - }, - { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - ], - "id": 1383, - "name": "log_named_decimal_uint", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 119, - "src": "12394:22:3", - "typeDescriptions": { - "typeIdentifier": "t_function_event_nonpayable$_t_string_memory_ptr_$_t_uint256_$_t_uint256_$returns$__$", - "typeString": "function (string memory,uint256,uint256)" - } - }, - "id": 1387, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "12394:48:3", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 1388, - "nodeType": "EmitStatement", - "src": "12389:53:3" - }, - { - "expression": { - "arguments": [], - "expression": { - "argumentTypes": [], - "id": 1389, - "name": "fail", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 274, - "src": "12456:4:3", - "typeDescriptions": { - "typeIdentifier": "t_function_internal_nonpayable$__$returns$__$", - "typeString": "function ()" - } - }, - "id": 1390, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "12456:6:3", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 1391, - "nodeType": "ExpressionStatement", - "src": "12456:6:3" - } - ] - } - } - ] - }, - "implemented": true, - "kind": "function", - "modifiers": [], - "name": "assertLtDecimal", - "nameLocation": "12163:15:3", - "parameters": { - "id": 1368, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 1363, - "mutability": "mutable", - "name": "a", - "nameLocation": "12184:1:3", - "nodeType": "VariableDeclaration", - "scope": 1395, - "src": "12179:6:3", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 1362, - "name": "uint", - "nodeType": "ElementaryTypeName", - "src": "12179:4:3", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 1365, - "mutability": "mutable", - "name": "b", - "nameLocation": "12192:1:3", - "nodeType": "VariableDeclaration", - "scope": 1395, - "src": "12187:6:3", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 1364, - "name": "uint", - "nodeType": "ElementaryTypeName", - "src": "12187:4:3", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 1367, - "mutability": "mutable", - "name": "decimals", - "nameLocation": "12200:8:3", - "nodeType": "VariableDeclaration", - "scope": 1395, - "src": "12195:13:3", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 1366, - "name": "uint", - "nodeType": "ElementaryTypeName", - "src": "12195:4:3", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "visibility": "internal" - } - ], - "src": "12178:31:3" - }, - "returnParameters": { - "id": 1369, - "nodeType": "ParameterList", - "parameters": [], - "src": "12219:0:3" - }, - "scope": 1844, - "stateMutability": "nonpayable", - "virtual": false, - "visibility": "internal" - }, - { - "id": 1423, - "nodeType": "FunctionDefinition", - "src": "12484:217:3", - "body": { - "id": 1422, - "nodeType": "Block", - "src": "12568:133:3", - "statements": [ - { - "condition": { - "commonType": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "id": 1408, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "id": 1406, - "name": "a", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1397, - "src": "12582:1:3", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "BinaryOperation", - "operator": ">=", - "rightExpression": { - "id": 1407, - "name": "b", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1399, - "src": "12587:1:3", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "src": "12582:6:3", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "id": 1421, - "nodeType": "IfStatement", - "src": "12578:117:3", - "trueBody": { - "id": 1420, - "nodeType": "Block", - "src": "12590:105:3", - "statements": [ - { - "eventCall": { - "arguments": [ - { - "hexValue": "4572726f72", - "id": 1410, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "string", - "lValueRequested": false, - "nodeType": "Literal", - "src": "12626:7:3", - "typeDescriptions": { - "typeIdentifier": "t_stringliteral_e342daa49723ff3485f4ff5f755a17b8bc9c3c33bbd312ceee37c94eebfe45c1", - "typeString": "literal_string \"Error\"" - }, - "value": "Error" - }, - { - "id": 1411, - "name": "err", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1403, - "src": "12635:3:3", - "typeDescriptions": { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string memory" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_stringliteral_e342daa49723ff3485f4ff5f755a17b8bc9c3c33bbd312ceee37c94eebfe45c1", - "typeString": "literal_string \"Error\"" - }, - { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string memory" - } - ], - "id": 1409, - "name": "log_named_string", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 143, - "src": "12609:16:3", - "typeDescriptions": { - "typeIdentifier": "t_function_event_nonpayable$_t_string_memory_ptr_$_t_string_memory_ptr_$returns$__$", - "typeString": "function (string memory,string memory)" - } - }, - "id": 1412, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "12609:30:3", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 1413, - "nodeType": "EmitStatement", - "src": "12604:35:3" - }, - { - "expression": { - "arguments": [ - { - "id": 1415, - "name": "a", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1397, - "src": "12669:1:3", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - { - "id": 1416, - "name": "b", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1399, - "src": "12672:1:3", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - { - "id": 1417, - "name": "decimals", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1401, - "src": "12675:8:3", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - ], - "id": 1414, - "name": "assertLtDecimal", - "nodeType": "Identifier", - "overloadedDeclarations": [ - 1333, - 1361, - 1395, - 1423 - ], - "referencedDeclaration": 1395, - "src": "12653:15:3", - "typeDescriptions": { - "typeIdentifier": "t_function_internal_nonpayable$_t_uint256_$_t_uint256_$_t_uint256_$returns$__$", - "typeString": "function (uint256,uint256,uint256)" - } - }, - "id": 1418, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "12653:31:3", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 1419, - "nodeType": "ExpressionStatement", - "src": "12653:31:3" - } - ] - } - } - ] - }, - "implemented": true, - "kind": "function", - "modifiers": [], - "name": "assertLtDecimal", - "nameLocation": "12493:15:3", - "parameters": { - "id": 1404, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 1397, - "mutability": "mutable", - "name": "a", - "nameLocation": "12514:1:3", - "nodeType": "VariableDeclaration", - "scope": 1423, - "src": "12509:6:3", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 1396, - "name": "uint", - "nodeType": "ElementaryTypeName", - "src": "12509:4:3", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 1399, - "mutability": "mutable", - "name": "b", - "nameLocation": "12522:1:3", - "nodeType": "VariableDeclaration", - "scope": 1423, - "src": "12517:6:3", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 1398, - "name": "uint", - "nodeType": "ElementaryTypeName", - "src": "12517:4:3", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 1401, - "mutability": "mutable", - "name": "decimals", - "nameLocation": "12530:8:3", - "nodeType": "VariableDeclaration", - "scope": 1423, - "src": "12525:13:3", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 1400, - "name": "uint", - "nodeType": "ElementaryTypeName", - "src": "12525:4:3", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 1403, - "mutability": "mutable", - "name": "err", - "nameLocation": "12554:3:3", - "nodeType": "VariableDeclaration", - "scope": 1423, - "src": "12540:17:3", - "stateVariable": false, - "storageLocation": "memory", - "typeDescriptions": { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string" - }, - "typeName": { - "id": 1402, - "name": "string", - "nodeType": "ElementaryTypeName", - "src": "12540:6:3", - "typeDescriptions": { - "typeIdentifier": "t_string_storage_ptr", - "typeString": "string" - } - }, - "visibility": "internal" - } - ], - "src": "12508:50:3" - }, - "returnParameters": { - "id": 1405, - "nodeType": "ParameterList", - "parameters": [], - "src": "12568:0:3" - }, - "scope": 1844, - "stateMutability": "nonpayable", - "virtual": false, - "visibility": "internal" - }, - { - "id": 1453, - "nodeType": "FunctionDefinition", - "src": "12707:259:3", - "body": { - "id": 1452, - "nodeType": "Block", - "src": "12750:216:3", - "statements": [ - { - "condition": { - "commonType": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "id": 1432, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "id": 1430, - "name": "a", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1425, - "src": "12764:1:3", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "BinaryOperation", - "operator": ">", - "rightExpression": { - "id": 1431, - "name": "b", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1427, - "src": "12768:1:3", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "src": "12764:5:3", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "id": 1451, - "nodeType": "IfStatement", - "src": "12760:200:3", - "trueBody": { - "id": 1450, - "nodeType": "Block", - "src": "12771:189:3", - "statements": [ - { - "eventCall": { - "arguments": [ - { - "hexValue": "4572726f723a2061203c3d2062206e6f7420736174697366696564205b75696e745d", - "id": 1434, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "string", - "lValueRequested": false, - "nodeType": "Literal", - "src": "12794:36:3", - "typeDescriptions": { - "typeIdentifier": "t_stringliteral_6d5420eec28b94f3fd7dd1c7ce81f45c79bfa9fab37300faf965a8d6272e32ff", - "typeString": "literal_string \"Error: a <= b not satisfied [uint]\"" - }, - "value": "Error: a <= b not satisfied [uint]" - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_stringliteral_6d5420eec28b94f3fd7dd1c7ce81f45c79bfa9fab37300faf965a8d6272e32ff", - "typeString": "literal_string \"Error: a <= b not satisfied [uint]\"" - } - ], - "id": 1433, - "name": "log", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 63, - "src": "12790:3:3", - "typeDescriptions": { - "typeIdentifier": "t_function_event_nonpayable$_t_string_memory_ptr_$returns$__$", - "typeString": "function (string memory)" - } - }, - "id": 1435, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "12790:41:3", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 1436, - "nodeType": "EmitStatement", - "src": "12785:46:3" - }, - { - "eventCall": { - "arguments": [ - { - "hexValue": "202056616c75652061", - "id": 1438, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "string", - "lValueRequested": false, - "nodeType": "Literal", - "src": "12865:11:3", - "typeDescriptions": { - "typeIdentifier": "t_stringliteral_c592b529b874569f165479a5a4380dedf000796f11e04035f76bfa7310b31d26", - "typeString": "literal_string \" Value a\"" - }, - "value": " Value a" - }, - { - "id": 1439, - "name": "a", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1425, - "src": "12878:1:3", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_stringliteral_c592b529b874569f165479a5a4380dedf000796f11e04035f76bfa7310b31d26", - "typeString": "literal_string \" Value a\"" - }, - { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - ], - "id": 1437, - "name": "log_named_uint", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 131, - "src": "12850:14:3", - "typeDescriptions": { - "typeIdentifier": "t_function_event_nonpayable$_t_string_memory_ptr_$_t_uint256_$returns$__$", - "typeString": "function (string memory,uint256)" - } - }, - "id": 1440, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "12850:30:3", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 1441, - "nodeType": "EmitStatement", - "src": "12845:35:3" - }, - { - "eventCall": { - "arguments": [ - { - "hexValue": "202056616c75652062", - "id": 1443, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "string", - "lValueRequested": false, - "nodeType": "Literal", - "src": "12914:11:3", - "typeDescriptions": { - "typeIdentifier": "t_stringliteral_e4b1d025132960c3fb1a582cf2366864dc416744d1b9770aa69fe3749623ebc3", - "typeString": "literal_string \" Value b\"" - }, - "value": " Value b" - }, - { - "id": 1444, - "name": "b", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1427, - "src": "12927:1:3", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_stringliteral_e4b1d025132960c3fb1a582cf2366864dc416744d1b9770aa69fe3749623ebc3", - "typeString": "literal_string \" Value b\"" - }, - { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - ], - "id": 1442, - "name": "log_named_uint", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 131, - "src": "12899:14:3", - "typeDescriptions": { - "typeIdentifier": "t_function_event_nonpayable$_t_string_memory_ptr_$_t_uint256_$returns$__$", - "typeString": "function (string memory,uint256)" - } - }, - "id": 1445, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "12899:30:3", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 1446, - "nodeType": "EmitStatement", - "src": "12894:35:3" - }, - { - "expression": { - "arguments": [], - "expression": { - "argumentTypes": [], - "id": 1447, - "name": "fail", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 274, - "src": "12943:4:3", - "typeDescriptions": { - "typeIdentifier": "t_function_internal_nonpayable$__$returns$__$", - "typeString": "function ()" - } - }, - "id": 1448, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "12943:6:3", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 1449, - "nodeType": "ExpressionStatement", - "src": "12943:6:3" - } - ] - } - } - ] - }, - "implemented": true, - "kind": "function", - "modifiers": [], - "name": "assertLe", - "nameLocation": "12716:8:3", - "parameters": { - "id": 1428, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 1425, - "mutability": "mutable", - "name": "a", - "nameLocation": "12730:1:3", - "nodeType": "VariableDeclaration", - "scope": 1453, - "src": "12725:6:3", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 1424, - "name": "uint", - "nodeType": "ElementaryTypeName", - "src": "12725:4:3", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 1427, - "mutability": "mutable", - "name": "b", - "nameLocation": "12738:1:3", - "nodeType": "VariableDeclaration", - "scope": 1453, - "src": "12733:6:3", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 1426, - "name": "uint", - "nodeType": "ElementaryTypeName", - "src": "12733:4:3", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "visibility": "internal" - } - ], - "src": "12724:16:3" - }, - "returnParameters": { - "id": 1429, - "nodeType": "ParameterList", - "parameters": [], - "src": "12750:0:3" - }, - "scope": 1844, - "stateMutability": "nonpayable", - "virtual": false, - "visibility": "internal" - }, - { - "id": 1478, - "nodeType": "FunctionDefinition", - "src": "12971:177:3", - "body": { - "id": 1477, - "nodeType": "Block", - "src": "13033:115:3", - "statements": [ - { - "condition": { - "commonType": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "id": 1464, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "id": 1462, - "name": "a", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1455, - "src": "13047:1:3", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "BinaryOperation", - "operator": ">", - "rightExpression": { - "id": 1463, - "name": "b", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1457, - "src": "13051:1:3", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "src": "13047:5:3", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "id": 1476, - "nodeType": "IfStatement", - "src": "13043:99:3", - "trueBody": { - "id": 1475, - "nodeType": "Block", - "src": "13054:88:3", - "statements": [ - { - "eventCall": { - "arguments": [ - { - "hexValue": "4572726f72", - "id": 1466, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "string", - "lValueRequested": false, - "nodeType": "Literal", - "src": "13090:7:3", - "typeDescriptions": { - "typeIdentifier": "t_stringliteral_e342daa49723ff3485f4ff5f755a17b8bc9c3c33bbd312ceee37c94eebfe45c1", - "typeString": "literal_string \"Error\"" - }, - "value": "Error" - }, - { - "id": 1467, - "name": "err", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1459, - "src": "13099:3:3", - "typeDescriptions": { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string memory" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_stringliteral_e342daa49723ff3485f4ff5f755a17b8bc9c3c33bbd312ceee37c94eebfe45c1", - "typeString": "literal_string \"Error\"" - }, - { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string memory" - } - ], - "id": 1465, - "name": "log_named_string", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 143, - "src": "13073:16:3", - "typeDescriptions": { - "typeIdentifier": "t_function_event_nonpayable$_t_string_memory_ptr_$_t_string_memory_ptr_$returns$__$", - "typeString": "function (string memory,string memory)" - } - }, - "id": 1468, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "13073:30:3", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 1469, - "nodeType": "EmitStatement", - "src": "13068:35:3" - }, - { - "expression": { - "arguments": [ - { - "id": 1471, - "name": "a", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1455, - "src": "13126:1:3", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - { - "id": 1472, - "name": "b", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1457, - "src": "13129:1:3", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - ], - "id": 1470, - "name": "assertLe", - "nodeType": "Identifier", - "overloadedDeclarations": [ - 1453, - 1478, - 1508, - 1533 - ], - "referencedDeclaration": 1453, - "src": "13117:8:3", - "typeDescriptions": { - "typeIdentifier": "t_function_internal_nonpayable$_t_uint256_$_t_uint256_$returns$__$", - "typeString": "function (uint256,uint256)" - } - }, - "id": 1473, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "13117:14:3", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 1474, - "nodeType": "ExpressionStatement", - "src": "13117:14:3" - } - ] - } - } - ] - }, - "implemented": true, - "kind": "function", - "modifiers": [], - "name": "assertLe", - "nameLocation": "12980:8:3", - "parameters": { - "id": 1460, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 1455, - "mutability": "mutable", - "name": "a", - "nameLocation": "12994:1:3", - "nodeType": "VariableDeclaration", - "scope": 1478, - "src": "12989:6:3", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 1454, - "name": "uint", - "nodeType": "ElementaryTypeName", - "src": "12989:4:3", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 1457, - "mutability": "mutable", - "name": "b", - "nameLocation": "13002:1:3", - "nodeType": "VariableDeclaration", - "scope": 1478, - "src": "12997:6:3", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 1456, - "name": "uint", - "nodeType": "ElementaryTypeName", - "src": "12997:4:3", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 1459, - "mutability": "mutable", - "name": "err", - "nameLocation": "13019:3:3", - "nodeType": "VariableDeclaration", - "scope": 1478, - "src": "13005:17:3", - "stateVariable": false, - "storageLocation": "memory", - "typeDescriptions": { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string" - }, - "typeName": { - "id": 1458, - "name": "string", - "nodeType": "ElementaryTypeName", - "src": "13005:6:3", - "typeDescriptions": { - "typeIdentifier": "t_string_storage_ptr", - "typeString": "string" - } - }, - "visibility": "internal" - } - ], - "src": "12988:35:3" - }, - "returnParameters": { - "id": 1461, - "nodeType": "ParameterList", - "parameters": [], - "src": "13033:0:3" - }, - "scope": 1844, - "stateMutability": "nonpayable", - "virtual": false, - "visibility": "internal" - }, - { - "id": 1508, - "nodeType": "FunctionDefinition", - "src": "13153:254:3", - "body": { - "id": 1507, - "nodeType": "Block", - "src": "13194:213:3", - "statements": [ - { - "condition": { - "commonType": { - "typeIdentifier": "t_int256", - "typeString": "int256" - }, - "id": 1487, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "id": 1485, - "name": "a", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1480, - "src": "13208:1:3", - "typeDescriptions": { - "typeIdentifier": "t_int256", - "typeString": "int256" - } - }, - "nodeType": "BinaryOperation", - "operator": ">", - "rightExpression": { - "id": 1486, - "name": "b", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1482, - "src": "13212:1:3", - "typeDescriptions": { - "typeIdentifier": "t_int256", - "typeString": "int256" - } - }, - "src": "13208:5:3", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "id": 1506, - "nodeType": "IfStatement", - "src": "13204:197:3", - "trueBody": { - "id": 1505, - "nodeType": "Block", - "src": "13215:186:3", - "statements": [ - { - "eventCall": { - "arguments": [ - { - "hexValue": "4572726f723a2061203c3d2062206e6f7420736174697366696564205b696e745d", - "id": 1489, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "string", - "lValueRequested": false, - "nodeType": "Literal", - "src": "13238:35:3", - "typeDescriptions": { - "typeIdentifier": "t_stringliteral_558ba41c44b763b352271d6c22f0cb02f5c0c4dbb25ed68172916a4e6a662555", - "typeString": "literal_string \"Error: a <= b not satisfied [int]\"" - }, - "value": "Error: a <= b not satisfied [int]" - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_stringliteral_558ba41c44b763b352271d6c22f0cb02f5c0c4dbb25ed68172916a4e6a662555", - "typeString": "literal_string \"Error: a <= b not satisfied [int]\"" - } - ], - "id": 1488, - "name": "log", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 63, - "src": "13234:3:3", - "typeDescriptions": { - "typeIdentifier": "t_function_event_nonpayable$_t_string_memory_ptr_$returns$__$", - "typeString": "function (string memory)" - } - }, - "id": 1490, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "13234:40:3", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 1491, - "nodeType": "EmitStatement", - "src": "13229:45:3" - }, - { - "eventCall": { - "arguments": [ - { - "hexValue": "202056616c75652061", - "id": 1493, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "string", - "lValueRequested": false, - "nodeType": "Literal", - "src": "13307:11:3", - "typeDescriptions": { - "typeIdentifier": "t_stringliteral_c592b529b874569f165479a5a4380dedf000796f11e04035f76bfa7310b31d26", - "typeString": "literal_string \" Value a\"" - }, - "value": " Value a" - }, - { - "id": 1494, - "name": "a", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1480, - "src": "13320:1:3", - "typeDescriptions": { - "typeIdentifier": "t_int256", - "typeString": "int256" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_stringliteral_c592b529b874569f165479a5a4380dedf000796f11e04035f76bfa7310b31d26", - "typeString": "literal_string \" Value a\"" - }, - { - "typeIdentifier": "t_int256", - "typeString": "int256" - } - ], - "id": 1492, - "name": "log_named_int", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 125, - "src": "13293:13:3", - "typeDescriptions": { - "typeIdentifier": "t_function_event_nonpayable$_t_string_memory_ptr_$_t_int256_$returns$__$", - "typeString": "function (string memory,int256)" - } - }, - "id": 1495, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "13293:29:3", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 1496, - "nodeType": "EmitStatement", - "src": "13288:34:3" - }, - { - "eventCall": { - "arguments": [ - { - "hexValue": "202056616c75652062", - "id": 1498, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "string", - "lValueRequested": false, - "nodeType": "Literal", - "src": "13355:11:3", - "typeDescriptions": { - "typeIdentifier": "t_stringliteral_e4b1d025132960c3fb1a582cf2366864dc416744d1b9770aa69fe3749623ebc3", - "typeString": "literal_string \" Value b\"" - }, - "value": " Value b" - }, - { - "id": 1499, - "name": "b", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1482, - "src": "13368:1:3", - "typeDescriptions": { - "typeIdentifier": "t_int256", - "typeString": "int256" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_stringliteral_e4b1d025132960c3fb1a582cf2366864dc416744d1b9770aa69fe3749623ebc3", - "typeString": "literal_string \" Value b\"" - }, - { - "typeIdentifier": "t_int256", - "typeString": "int256" - } - ], - "id": 1497, - "name": "log_named_int", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 125, - "src": "13341:13:3", - "typeDescriptions": { - "typeIdentifier": "t_function_event_nonpayable$_t_string_memory_ptr_$_t_int256_$returns$__$", - "typeString": "function (string memory,int256)" - } - }, - "id": 1500, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "13341:29:3", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 1501, - "nodeType": "EmitStatement", - "src": "13336:34:3" - }, - { - "expression": { - "arguments": [], - "expression": { - "argumentTypes": [], - "id": 1502, - "name": "fail", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 274, - "src": "13384:4:3", - "typeDescriptions": { - "typeIdentifier": "t_function_internal_nonpayable$__$returns$__$", - "typeString": "function ()" - } - }, - "id": 1503, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "13384:6:3", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 1504, - "nodeType": "ExpressionStatement", - "src": "13384:6:3" - } - ] - } - } - ] - }, - "implemented": true, - "kind": "function", - "modifiers": [], - "name": "assertLe", - "nameLocation": "13162:8:3", - "parameters": { - "id": 1483, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 1480, - "mutability": "mutable", - "name": "a", - "nameLocation": "13175:1:3", - "nodeType": "VariableDeclaration", - "scope": 1508, - "src": "13171:5:3", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_int256", - "typeString": "int256" - }, - "typeName": { - "id": 1479, - "name": "int", - "nodeType": "ElementaryTypeName", - "src": "13171:3:3", - "typeDescriptions": { - "typeIdentifier": "t_int256", - "typeString": "int256" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 1482, - "mutability": "mutable", - "name": "b", - "nameLocation": "13182:1:3", - "nodeType": "VariableDeclaration", - "scope": 1508, - "src": "13178:5:3", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_int256", - "typeString": "int256" - }, - "typeName": { - "id": 1481, - "name": "int", - "nodeType": "ElementaryTypeName", - "src": "13178:3:3", - "typeDescriptions": { - "typeIdentifier": "t_int256", - "typeString": "int256" - } - }, - "visibility": "internal" - } - ], - "src": "13170:14:3" - }, - "returnParameters": { - "id": 1484, - "nodeType": "ParameterList", - "parameters": [], - "src": "13194:0:3" - }, - "scope": 1844, - "stateMutability": "nonpayable", - "virtual": false, - "visibility": "internal" - }, - { - "id": 1533, - "nodeType": "FunctionDefinition", - "src": "13412:175:3", - "body": { - "id": 1532, - "nodeType": "Block", - "src": "13472:115:3", - "statements": [ - { - "condition": { - "commonType": { - "typeIdentifier": "t_int256", - "typeString": "int256" - }, - "id": 1519, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "id": 1517, - "name": "a", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1510, - "src": "13486:1:3", - "typeDescriptions": { - "typeIdentifier": "t_int256", - "typeString": "int256" - } - }, - "nodeType": "BinaryOperation", - "operator": ">", - "rightExpression": { - "id": 1518, - "name": "b", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1512, - "src": "13490:1:3", - "typeDescriptions": { - "typeIdentifier": "t_int256", - "typeString": "int256" - } - }, - "src": "13486:5:3", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "id": 1531, - "nodeType": "IfStatement", - "src": "13482:99:3", - "trueBody": { - "id": 1530, - "nodeType": "Block", - "src": "13493:88:3", - "statements": [ - { - "eventCall": { - "arguments": [ - { - "hexValue": "4572726f72", - "id": 1521, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "string", - "lValueRequested": false, - "nodeType": "Literal", - "src": "13529:7:3", - "typeDescriptions": { - "typeIdentifier": "t_stringliteral_e342daa49723ff3485f4ff5f755a17b8bc9c3c33bbd312ceee37c94eebfe45c1", - "typeString": "literal_string \"Error\"" - }, - "value": "Error" - }, - { - "id": 1522, - "name": "err", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1514, - "src": "13538:3:3", - "typeDescriptions": { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string memory" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_stringliteral_e342daa49723ff3485f4ff5f755a17b8bc9c3c33bbd312ceee37c94eebfe45c1", - "typeString": "literal_string \"Error\"" - }, - { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string memory" - } - ], - "id": 1520, - "name": "log_named_string", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 143, - "src": "13512:16:3", - "typeDescriptions": { - "typeIdentifier": "t_function_event_nonpayable$_t_string_memory_ptr_$_t_string_memory_ptr_$returns$__$", - "typeString": "function (string memory,string memory)" - } - }, - "id": 1523, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "13512:30:3", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 1524, - "nodeType": "EmitStatement", - "src": "13507:35:3" - }, - { - "expression": { - "arguments": [ - { - "id": 1526, - "name": "a", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1510, - "src": "13565:1:3", - "typeDescriptions": { - "typeIdentifier": "t_int256", - "typeString": "int256" - } - }, - { - "id": 1527, - "name": "b", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1512, - "src": "13568:1:3", - "typeDescriptions": { - "typeIdentifier": "t_int256", - "typeString": "int256" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_int256", - "typeString": "int256" - }, - { - "typeIdentifier": "t_int256", - "typeString": "int256" - } - ], - "id": 1525, - "name": "assertLe", - "nodeType": "Identifier", - "overloadedDeclarations": [ - 1453, - 1478, - 1508, - 1533 - ], - "referencedDeclaration": 1508, - "src": "13556:8:3", - "typeDescriptions": { - "typeIdentifier": "t_function_internal_nonpayable$_t_int256_$_t_int256_$returns$__$", - "typeString": "function (int256,int256)" - } - }, - "id": 1528, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "13556:14:3", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 1529, - "nodeType": "ExpressionStatement", - "src": "13556:14:3" - } - ] - } - } - ] - }, - "implemented": true, - "kind": "function", - "modifiers": [], - "name": "assertLe", - "nameLocation": "13421:8:3", - "parameters": { - "id": 1515, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 1510, - "mutability": "mutable", - "name": "a", - "nameLocation": "13434:1:3", - "nodeType": "VariableDeclaration", - "scope": 1533, - "src": "13430:5:3", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_int256", - "typeString": "int256" - }, - "typeName": { - "id": 1509, - "name": "int", - "nodeType": "ElementaryTypeName", - "src": "13430:3:3", - "typeDescriptions": { - "typeIdentifier": "t_int256", - "typeString": "int256" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 1512, - "mutability": "mutable", - "name": "b", - "nameLocation": "13441:1:3", - "nodeType": "VariableDeclaration", - "scope": 1533, - "src": "13437:5:3", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_int256", - "typeString": "int256" - }, - "typeName": { - "id": 1511, - "name": "int", - "nodeType": "ElementaryTypeName", - "src": "13437:3:3", - "typeDescriptions": { - "typeIdentifier": "t_int256", - "typeString": "int256" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 1514, - "mutability": "mutable", - "name": "err", - "nameLocation": "13458:3:3", - "nodeType": "VariableDeclaration", - "scope": 1533, - "src": "13444:17:3", - "stateVariable": false, - "storageLocation": "memory", - "typeDescriptions": { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string" - }, - "typeName": { - "id": 1513, - "name": "string", - "nodeType": "ElementaryTypeName", - "src": "13444:6:3", - "typeDescriptions": { - "typeIdentifier": "t_string_storage_ptr", - "typeString": "string" - } - }, - "visibility": "internal" - } - ], - "src": "13429:33:3" - }, - "returnParameters": { - "id": 1516, - "nodeType": "ParameterList", - "parameters": [], - "src": "13472:0:3" - }, - "scope": 1844, - "stateMutability": "nonpayable", - "virtual": false, - "visibility": "internal" - }, - { - "id": 1567, - "nodeType": "FunctionDefinition", - "src": "13592:320:3", - "body": { - "id": 1566, - "nodeType": "Block", - "src": "13655:257:3", - "statements": [ - { - "condition": { - "commonType": { - "typeIdentifier": "t_int256", - "typeString": "int256" - }, - "id": 1544, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "id": 1542, - "name": "a", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1535, - "src": "13669:1:3", - "typeDescriptions": { - "typeIdentifier": "t_int256", - "typeString": "int256" - } - }, - "nodeType": "BinaryOperation", - "operator": ">", - "rightExpression": { - "id": 1543, - "name": "b", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1537, - "src": "13673:1:3", - "typeDescriptions": { - "typeIdentifier": "t_int256", - "typeString": "int256" - } - }, - "src": "13669:5:3", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "id": 1565, - "nodeType": "IfStatement", - "src": "13665:241:3", - "trueBody": { - "id": 1564, - "nodeType": "Block", - "src": "13676:230:3", - "statements": [ - { - "eventCall": { - "arguments": [ - { - "hexValue": "4572726f723a2061203c3d2062206e6f7420736174697366696564205b646563696d616c20696e745d", - "id": 1546, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "string", - "lValueRequested": false, - "nodeType": "Literal", - "src": "13699:43:3", - "typeDescriptions": { - "typeIdentifier": "t_stringliteral_a855fbfffc345e8a0ab544e824618dabd995fdc5bda653c7d4869b57deb1d23a", - "typeString": "literal_string \"Error: a <= b not satisfied [decimal int]\"" - }, - "value": "Error: a <= b not satisfied [decimal int]" - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_stringliteral_a855fbfffc345e8a0ab544e824618dabd995fdc5bda653c7d4869b57deb1d23a", - "typeString": "literal_string \"Error: a <= b not satisfied [decimal int]\"" - } - ], - "id": 1545, - "name": "log", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 63, - "src": "13695:3:3", - "typeDescriptions": { - "typeIdentifier": "t_function_event_nonpayable$_t_string_memory_ptr_$returns$__$", - "typeString": "function (string memory)" - } - }, - "id": 1547, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "13695:48:3", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 1548, - "nodeType": "EmitStatement", - "src": "13690:53:3" - }, - { - "eventCall": { - "arguments": [ - { - "hexValue": "202056616c75652061", - "id": 1550, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "string", - "lValueRequested": false, - "nodeType": "Literal", - "src": "13784:11:3", - "typeDescriptions": { - "typeIdentifier": "t_stringliteral_c592b529b874569f165479a5a4380dedf000796f11e04035f76bfa7310b31d26", - "typeString": "literal_string \" Value a\"" - }, - "value": " Value a" - }, - { - "id": 1551, - "name": "a", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1535, - "src": "13797:1:3", - "typeDescriptions": { - "typeIdentifier": "t_int256", - "typeString": "int256" - } - }, - { - "id": 1552, - "name": "decimals", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1539, - "src": "13800:8:3", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_stringliteral_c592b529b874569f165479a5a4380dedf000796f11e04035f76bfa7310b31d26", - "typeString": "literal_string \" Value a\"" - }, - { - "typeIdentifier": "t_int256", - "typeString": "int256" - }, - { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - ], - "id": 1549, - "name": "log_named_decimal_int", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 111, - "src": "13762:21:3", - "typeDescriptions": { - "typeIdentifier": "t_function_event_nonpayable$_t_string_memory_ptr_$_t_int256_$_t_uint256_$returns$__$", - "typeString": "function (string memory,int256,uint256)" - } - }, - "id": 1553, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "13762:47:3", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 1554, - "nodeType": "EmitStatement", - "src": "13757:52:3" - }, - { - "eventCall": { - "arguments": [ - { - "hexValue": "202056616c75652062", - "id": 1556, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "string", - "lValueRequested": false, - "nodeType": "Literal", - "src": "13850:11:3", - "typeDescriptions": { - "typeIdentifier": "t_stringliteral_e4b1d025132960c3fb1a582cf2366864dc416744d1b9770aa69fe3749623ebc3", - "typeString": "literal_string \" Value b\"" - }, - "value": " Value b" - }, - { - "id": 1557, - "name": "b", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1537, - "src": "13863:1:3", - "typeDescriptions": { - "typeIdentifier": "t_int256", - "typeString": "int256" - } - }, - { - "id": 1558, - "name": "decimals", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1539, - "src": "13866:8:3", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_stringliteral_e4b1d025132960c3fb1a582cf2366864dc416744d1b9770aa69fe3749623ebc3", - "typeString": "literal_string \" Value b\"" - }, - { - "typeIdentifier": "t_int256", - "typeString": "int256" - }, - { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - ], - "id": 1555, - "name": "log_named_decimal_int", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 111, - "src": "13828:21:3", - "typeDescriptions": { - "typeIdentifier": "t_function_event_nonpayable$_t_string_memory_ptr_$_t_int256_$_t_uint256_$returns$__$", - "typeString": "function (string memory,int256,uint256)" - } - }, - "id": 1559, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "13828:47:3", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 1560, - "nodeType": "EmitStatement", - "src": "13823:52:3" - }, - { - "expression": { - "arguments": [], - "expression": { - "argumentTypes": [], - "id": 1561, - "name": "fail", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 274, - "src": "13889:4:3", - "typeDescriptions": { - "typeIdentifier": "t_function_internal_nonpayable$__$returns$__$", - "typeString": "function ()" - } - }, - "id": 1562, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "13889:6:3", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 1563, - "nodeType": "ExpressionStatement", - "src": "13889:6:3" - } - ] - } - } - ] - }, - "implemented": true, - "kind": "function", - "modifiers": [], - "name": "assertLeDecimal", - "nameLocation": "13601:15:3", - "parameters": { - "id": 1540, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 1535, - "mutability": "mutable", - "name": "a", - "nameLocation": "13621:1:3", - "nodeType": "VariableDeclaration", - "scope": 1567, - "src": "13617:5:3", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_int256", - "typeString": "int256" - }, - "typeName": { - "id": 1534, - "name": "int", - "nodeType": "ElementaryTypeName", - "src": "13617:3:3", - "typeDescriptions": { - "typeIdentifier": "t_int256", - "typeString": "int256" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 1537, - "mutability": "mutable", - "name": "b", - "nameLocation": "13628:1:3", - "nodeType": "VariableDeclaration", - "scope": 1567, - "src": "13624:5:3", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_int256", - "typeString": "int256" - }, - "typeName": { - "id": 1536, - "name": "int", - "nodeType": "ElementaryTypeName", - "src": "13624:3:3", - "typeDescriptions": { - "typeIdentifier": "t_int256", - "typeString": "int256" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 1539, - "mutability": "mutable", - "name": "decimals", - "nameLocation": "13636:8:3", - "nodeType": "VariableDeclaration", - "scope": 1567, - "src": "13631:13:3", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 1538, - "name": "uint", - "nodeType": "ElementaryTypeName", - "src": "13631:4:3", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "visibility": "internal" - } - ], - "src": "13616:29:3" - }, - "returnParameters": { - "id": 1541, - "nodeType": "ParameterList", - "parameters": [], - "src": "13655:0:3" - }, - "scope": 1844, - "stateMutability": "nonpayable", - "virtual": false, - "visibility": "internal" - }, - { - "id": 1595, - "nodeType": "FunctionDefinition", - "src": "13917:214:3", - "body": { - "id": 1594, - "nodeType": "Block", - "src": "13999:132:3", - "statements": [ - { - "condition": { - "commonType": { - "typeIdentifier": "t_int256", - "typeString": "int256" - }, - "id": 1580, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "id": 1578, - "name": "a", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1569, - "src": "14013:1:3", - "typeDescriptions": { - "typeIdentifier": "t_int256", - "typeString": "int256" - } - }, - "nodeType": "BinaryOperation", - "operator": ">", - "rightExpression": { - "id": 1579, - "name": "b", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1571, - "src": "14017:1:3", - "typeDescriptions": { - "typeIdentifier": "t_int256", - "typeString": "int256" - } - }, - "src": "14013:5:3", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "id": 1593, - "nodeType": "IfStatement", - "src": "14009:116:3", - "trueBody": { - "id": 1592, - "nodeType": "Block", - "src": "14020:105:3", - "statements": [ - { - "eventCall": { - "arguments": [ - { - "hexValue": "4572726f72", - "id": 1582, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "string", - "lValueRequested": false, - "nodeType": "Literal", - "src": "14056:7:3", - "typeDescriptions": { - "typeIdentifier": "t_stringliteral_e342daa49723ff3485f4ff5f755a17b8bc9c3c33bbd312ceee37c94eebfe45c1", - "typeString": "literal_string \"Error\"" - }, - "value": "Error" - }, - { - "id": 1583, - "name": "err", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1575, - "src": "14065:3:3", - "typeDescriptions": { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string memory" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_stringliteral_e342daa49723ff3485f4ff5f755a17b8bc9c3c33bbd312ceee37c94eebfe45c1", - "typeString": "literal_string \"Error\"" - }, - { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string memory" - } - ], - "id": 1581, - "name": "log_named_string", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 143, - "src": "14039:16:3", - "typeDescriptions": { - "typeIdentifier": "t_function_event_nonpayable$_t_string_memory_ptr_$_t_string_memory_ptr_$returns$__$", - "typeString": "function (string memory,string memory)" - } - }, - "id": 1584, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "14039:30:3", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 1585, - "nodeType": "EmitStatement", - "src": "14034:35:3" - }, - { - "expression": { - "arguments": [ - { - "id": 1587, - "name": "a", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1569, - "src": "14099:1:3", - "typeDescriptions": { - "typeIdentifier": "t_int256", - "typeString": "int256" - } - }, - { - "id": 1588, - "name": "b", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1571, - "src": "14102:1:3", - "typeDescriptions": { - "typeIdentifier": "t_int256", - "typeString": "int256" - } - }, - { - "id": 1589, - "name": "decimals", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1573, - "src": "14105:8:3", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_int256", - "typeString": "int256" - }, - { - "typeIdentifier": "t_int256", - "typeString": "int256" - }, - { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - ], - "id": 1586, - "name": "assertLeDecimal", - "nodeType": "Identifier", - "overloadedDeclarations": [ - 1567, - 1595, - 1629, - 1657 - ], - "referencedDeclaration": 1567, - "src": "14083:15:3", - "typeDescriptions": { - "typeIdentifier": "t_function_internal_nonpayable$_t_int256_$_t_int256_$_t_uint256_$returns$__$", - "typeString": "function (int256,int256,uint256)" - } - }, - "id": 1590, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "14083:31:3", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 1591, - "nodeType": "ExpressionStatement", - "src": "14083:31:3" - } - ] - } - } - ] - }, - "implemented": true, - "kind": "function", - "modifiers": [], - "name": "assertLeDecimal", - "nameLocation": "13926:15:3", - "parameters": { - "id": 1576, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 1569, - "mutability": "mutable", - "name": "a", - "nameLocation": "13946:1:3", - "nodeType": "VariableDeclaration", - "scope": 1595, - "src": "13942:5:3", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_int256", - "typeString": "int256" - }, - "typeName": { - "id": 1568, - "name": "int", - "nodeType": "ElementaryTypeName", - "src": "13942:3:3", - "typeDescriptions": { - "typeIdentifier": "t_int256", - "typeString": "int256" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 1571, - "mutability": "mutable", - "name": "b", - "nameLocation": "13953:1:3", - "nodeType": "VariableDeclaration", - "scope": 1595, - "src": "13949:5:3", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_int256", - "typeString": "int256" - }, - "typeName": { - "id": 1570, - "name": "int", - "nodeType": "ElementaryTypeName", - "src": "13949:3:3", - "typeDescriptions": { - "typeIdentifier": "t_int256", - "typeString": "int256" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 1573, - "mutability": "mutable", - "name": "decimals", - "nameLocation": "13961:8:3", - "nodeType": "VariableDeclaration", - "scope": 1595, - "src": "13956:13:3", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 1572, - "name": "uint", - "nodeType": "ElementaryTypeName", - "src": "13956:4:3", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 1575, - "mutability": "mutable", - "name": "err", - "nameLocation": "13985:3:3", - "nodeType": "VariableDeclaration", - "scope": 1595, - "src": "13971:17:3", - "stateVariable": false, - "storageLocation": "memory", - "typeDescriptions": { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string" - }, - "typeName": { - "id": 1574, - "name": "string", - "nodeType": "ElementaryTypeName", - "src": "13971:6:3", - "typeDescriptions": { - "typeIdentifier": "t_string_storage_ptr", - "typeString": "string" - } - }, - "visibility": "internal" - } - ], - "src": "13941:48:3" - }, - "returnParameters": { - "id": 1577, - "nodeType": "ParameterList", - "parameters": [], - "src": "13999:0:3" - }, - "scope": 1844, - "stateMutability": "nonpayable", - "virtual": false, - "visibility": "internal" - }, - { - "id": 1629, - "nodeType": "FunctionDefinition", - "src": "14136:325:3", - "body": { - "id": 1628, - "nodeType": "Block", - "src": "14201:260:3", - "statements": [ - { - "condition": { - "commonType": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "id": 1606, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "id": 1604, - "name": "a", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1597, - "src": "14215:1:3", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "BinaryOperation", - "operator": ">", - "rightExpression": { - "id": 1605, - "name": "b", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1599, - "src": "14219:1:3", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "src": "14215:5:3", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "id": 1627, - "nodeType": "IfStatement", - "src": "14211:244:3", - "trueBody": { - "id": 1626, - "nodeType": "Block", - "src": "14222:233:3", - "statements": [ - { - "eventCall": { - "arguments": [ - { - "hexValue": "4572726f723a2061203c3d2062206e6f7420736174697366696564205b646563696d616c2075696e745d", - "id": 1608, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "string", - "lValueRequested": false, - "nodeType": "Literal", - "src": "14245:44:3", - "typeDescriptions": { - "typeIdentifier": "t_stringliteral_32bce37771ce1d01bc601c73b51f2296c0d8e2a50c2d19a6ac89c6b917715c51", - "typeString": "literal_string \"Error: a <= b not satisfied [decimal uint]\"" - }, - "value": "Error: a <= b not satisfied [decimal uint]" - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_stringliteral_32bce37771ce1d01bc601c73b51f2296c0d8e2a50c2d19a6ac89c6b917715c51", - "typeString": "literal_string \"Error: a <= b not satisfied [decimal uint]\"" - } - ], - "id": 1607, - "name": "log", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 63, - "src": "14241:3:3", - "typeDescriptions": { - "typeIdentifier": "t_function_event_nonpayable$_t_string_memory_ptr_$returns$__$", - "typeString": "function (string memory)" - } - }, - "id": 1609, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "14241:49:3", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 1610, - "nodeType": "EmitStatement", - "src": "14236:54:3" - }, - { - "eventCall": { - "arguments": [ - { - "hexValue": "202056616c75652061", - "id": 1612, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "string", - "lValueRequested": false, - "nodeType": "Literal", - "src": "14332:11:3", - "typeDescriptions": { - "typeIdentifier": "t_stringliteral_c592b529b874569f165479a5a4380dedf000796f11e04035f76bfa7310b31d26", - "typeString": "literal_string \" Value a\"" - }, - "value": " Value a" - }, - { - "id": 1613, - "name": "a", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1597, - "src": "14345:1:3", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - { - "id": 1614, - "name": "decimals", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1601, - "src": "14348:8:3", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_stringliteral_c592b529b874569f165479a5a4380dedf000796f11e04035f76bfa7310b31d26", - "typeString": "literal_string \" Value a\"" - }, - { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - ], - "id": 1611, - "name": "log_named_decimal_uint", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 119, - "src": "14309:22:3", - "typeDescriptions": { - "typeIdentifier": "t_function_event_nonpayable$_t_string_memory_ptr_$_t_uint256_$_t_uint256_$returns$__$", - "typeString": "function (string memory,uint256,uint256)" - } - }, - "id": 1615, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "14309:48:3", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 1616, - "nodeType": "EmitStatement", - "src": "14304:53:3" - }, - { - "eventCall": { - "arguments": [ - { - "hexValue": "202056616c75652062", - "id": 1618, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "string", - "lValueRequested": false, - "nodeType": "Literal", - "src": "14399:11:3", - "typeDescriptions": { - "typeIdentifier": "t_stringliteral_e4b1d025132960c3fb1a582cf2366864dc416744d1b9770aa69fe3749623ebc3", - "typeString": "literal_string \" Value b\"" - }, - "value": " Value b" - }, - { - "id": 1619, - "name": "b", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1599, - "src": "14412:1:3", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - { - "id": 1620, - "name": "decimals", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1601, - "src": "14415:8:3", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_stringliteral_e4b1d025132960c3fb1a582cf2366864dc416744d1b9770aa69fe3749623ebc3", - "typeString": "literal_string \" Value b\"" - }, - { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - ], - "id": 1617, - "name": "log_named_decimal_uint", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 119, - "src": "14376:22:3", - "typeDescriptions": { - "typeIdentifier": "t_function_event_nonpayable$_t_string_memory_ptr_$_t_uint256_$_t_uint256_$returns$__$", - "typeString": "function (string memory,uint256,uint256)" - } - }, - "id": 1621, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "14376:48:3", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 1622, - "nodeType": "EmitStatement", - "src": "14371:53:3" - }, - { - "expression": { - "arguments": [], - "expression": { - "argumentTypes": [], - "id": 1623, - "name": "fail", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 274, - "src": "14438:4:3", - "typeDescriptions": { - "typeIdentifier": "t_function_internal_nonpayable$__$returns$__$", - "typeString": "function ()" - } - }, - "id": 1624, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "14438:6:3", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 1625, - "nodeType": "ExpressionStatement", - "src": "14438:6:3" - } - ] - } - } - ] - }, - "implemented": true, - "kind": "function", - "modifiers": [], - "name": "assertLeDecimal", - "nameLocation": "14145:15:3", - "parameters": { - "id": 1602, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 1597, - "mutability": "mutable", - "name": "a", - "nameLocation": "14166:1:3", - "nodeType": "VariableDeclaration", - "scope": 1629, - "src": "14161:6:3", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 1596, - "name": "uint", - "nodeType": "ElementaryTypeName", - "src": "14161:4:3", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 1599, - "mutability": "mutable", - "name": "b", - "nameLocation": "14174:1:3", - "nodeType": "VariableDeclaration", - "scope": 1629, - "src": "14169:6:3", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 1598, - "name": "uint", - "nodeType": "ElementaryTypeName", - "src": "14169:4:3", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 1601, - "mutability": "mutable", - "name": "decimals", - "nameLocation": "14182:8:3", - "nodeType": "VariableDeclaration", - "scope": 1629, - "src": "14177:13:3", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 1600, - "name": "uint", - "nodeType": "ElementaryTypeName", - "src": "14177:4:3", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "visibility": "internal" - } - ], - "src": "14160:31:3" - }, - "returnParameters": { - "id": 1603, - "nodeType": "ParameterList", - "parameters": [], - "src": "14201:0:3" - }, - "scope": 1844, - "stateMutability": "nonpayable", - "virtual": false, - "visibility": "internal" - }, - { - "id": 1657, - "nodeType": "FunctionDefinition", - "src": "14466:216:3", - "body": { - "id": 1656, - "nodeType": "Block", - "src": "14550:132:3", - "statements": [ - { - "condition": { - "commonType": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "id": 1642, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "id": 1640, - "name": "a", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1631, - "src": "14564:1:3", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "BinaryOperation", - "operator": ">", - "rightExpression": { - "id": 1641, - "name": "b", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1633, - "src": "14568:1:3", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "src": "14564:5:3", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "id": 1655, - "nodeType": "IfStatement", - "src": "14560:116:3", - "trueBody": { - "id": 1654, - "nodeType": "Block", - "src": "14571:105:3", - "statements": [ - { - "eventCall": { - "arguments": [ - { - "hexValue": "4572726f72", - "id": 1644, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "string", - "lValueRequested": false, - "nodeType": "Literal", - "src": "14607:7:3", - "typeDescriptions": { - "typeIdentifier": "t_stringliteral_e342daa49723ff3485f4ff5f755a17b8bc9c3c33bbd312ceee37c94eebfe45c1", - "typeString": "literal_string \"Error\"" - }, - "value": "Error" - }, - { - "id": 1645, - "name": "err", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1637, - "src": "14616:3:3", - "typeDescriptions": { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string memory" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_stringliteral_e342daa49723ff3485f4ff5f755a17b8bc9c3c33bbd312ceee37c94eebfe45c1", - "typeString": "literal_string \"Error\"" - }, - { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string memory" - } - ], - "id": 1643, - "name": "log_named_string", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 143, - "src": "14590:16:3", - "typeDescriptions": { - "typeIdentifier": "t_function_event_nonpayable$_t_string_memory_ptr_$_t_string_memory_ptr_$returns$__$", - "typeString": "function (string memory,string memory)" - } - }, - "id": 1646, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "14590:30:3", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 1647, - "nodeType": "EmitStatement", - "src": "14585:35:3" - }, - { - "expression": { - "arguments": [ - { - "id": 1649, - "name": "a", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1631, - "src": "14650:1:3", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - { - "id": 1650, - "name": "b", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1633, - "src": "14653:1:3", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - { - "id": 1651, - "name": "decimals", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1635, - "src": "14656:8:3", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - ], - "id": 1648, - "name": "assertGeDecimal", - "nodeType": "Identifier", - "overloadedDeclarations": [ - 1099, - 1127, - 1161, - 1189 - ], - "referencedDeclaration": 1161, - "src": "14634:15:3", - "typeDescriptions": { - "typeIdentifier": "t_function_internal_nonpayable$_t_uint256_$_t_uint256_$_t_uint256_$returns$__$", - "typeString": "function (uint256,uint256,uint256)" - } - }, - "id": 1652, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "14634:31:3", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 1653, - "nodeType": "ExpressionStatement", - "src": "14634:31:3" - } - ] - } - } - ] - }, - "implemented": true, - "kind": "function", - "modifiers": [], - "name": "assertLeDecimal", - "nameLocation": "14475:15:3", - "parameters": { - "id": 1638, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 1631, - "mutability": "mutable", - "name": "a", - "nameLocation": "14496:1:3", - "nodeType": "VariableDeclaration", - "scope": 1657, - "src": "14491:6:3", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 1630, - "name": "uint", - "nodeType": "ElementaryTypeName", - "src": "14491:4:3", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 1633, - "mutability": "mutable", - "name": "b", - "nameLocation": "14504:1:3", - "nodeType": "VariableDeclaration", - "scope": 1657, - "src": "14499:6:3", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 1632, - "name": "uint", - "nodeType": "ElementaryTypeName", - "src": "14499:4:3", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 1635, - "mutability": "mutable", - "name": "decimals", - "nameLocation": "14512:8:3", - "nodeType": "VariableDeclaration", - "scope": 1657, - "src": "14507:13:3", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 1634, - "name": "uint", - "nodeType": "ElementaryTypeName", - "src": "14507:4:3", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 1637, - "mutability": "mutable", - "name": "err", - "nameLocation": "14536:3:3", - "nodeType": "VariableDeclaration", - "scope": 1657, - "src": "14522:17:3", - "stateVariable": false, - "storageLocation": "memory", - "typeDescriptions": { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string" - }, - "typeName": { - "id": 1636, - "name": "string", - "nodeType": "ElementaryTypeName", - "src": "14522:6:3", - "typeDescriptions": { - "typeIdentifier": "t_string_storage_ptr", - "typeString": "string" - } - }, - "visibility": "internal" - } - ], - "src": "14490:50:3" - }, - "returnParameters": { - "id": 1639, - "nodeType": "ParameterList", - "parameters": [], - "src": "14550:0:3" - }, - "scope": 1844, - "stateMutability": "nonpayable", - "virtual": false, - "visibility": "internal" - }, - { - "id": 1697, - "nodeType": "FunctionDefinition", - "src": "14688:344:3", - "body": { - "id": 1696, - "nodeType": "Block", - "src": "14749:283:3", - "statements": [ - { - "condition": { - "commonType": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - }, - "id": 1676, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "arguments": [ - { - "arguments": [ - { - "id": 1667, - "name": "a", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1659, - "src": "14790:1:3", - "typeDescriptions": { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string memory" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string memory" - } - ], - "expression": { - "id": 1665, - "name": "abi", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": -1, - "src": "14773:3:3", - "typeDescriptions": { - "typeIdentifier": "t_magic_abi", - "typeString": "abi" - } - }, - "id": 1666, - "isConstant": false, - "isLValue": false, - "isPure": true, - "lValueRequested": false, - "memberName": "encodePacked", - "nodeType": "MemberAccess", - "src": "14773:16:3", - "typeDescriptions": { - "typeIdentifier": "t_function_abiencodepacked_pure$__$returns$_t_bytes_memory_ptr_$", - "typeString": "function () pure returns (bytes memory)" - } - }, - "id": 1668, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "14773:19:3", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes memory" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes memory" - } - ], - "id": 1664, - "name": "keccak256", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": -8, - "src": "14763:9:3", - "typeDescriptions": { - "typeIdentifier": "t_function_keccak256_pure$_t_bytes_memory_ptr_$returns$_t_bytes32_$", - "typeString": "function (bytes memory) pure returns (bytes32)" - } - }, - "id": 1669, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "14763:30:3", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - }, - "nodeType": "BinaryOperation", - "operator": "!=", - "rightExpression": { - "arguments": [ - { - "arguments": [ - { - "id": 1673, - "name": "b", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1661, - "src": "14824:1:3", - "typeDescriptions": { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string memory" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string memory" - } - ], - "expression": { - "id": 1671, - "name": "abi", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": -1, - "src": "14807:3:3", - "typeDescriptions": { - "typeIdentifier": "t_magic_abi", - "typeString": "abi" - } - }, - "id": 1672, - "isConstant": false, - "isLValue": false, - "isPure": true, - "lValueRequested": false, - "memberName": "encodePacked", - "nodeType": "MemberAccess", - "src": "14807:16:3", - "typeDescriptions": { - "typeIdentifier": "t_function_abiencodepacked_pure$__$returns$_t_bytes_memory_ptr_$", - "typeString": "function () pure returns (bytes memory)" - } - }, - "id": 1674, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "14807:19:3", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes memory" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes memory" - } - ], - "id": 1670, - "name": "keccak256", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": -8, - "src": "14797:9:3", - "typeDescriptions": { - "typeIdentifier": "t_function_keccak256_pure$_t_bytes_memory_ptr_$returns$_t_bytes32_$", - "typeString": "function (bytes memory) pure returns (bytes32)" - } - }, - "id": 1675, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "14797:30:3", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - }, - "src": "14763:64:3", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "id": 1695, - "nodeType": "IfStatement", - "src": "14759:267:3", - "trueBody": { - "id": 1694, - "nodeType": "Block", - "src": "14829:197:3", - "statements": [ - { - "eventCall": { - "arguments": [ - { - "hexValue": "4572726f723a2061203d3d2062206e6f7420736174697366696564205b737472696e675d", - "id": 1678, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "string", - "lValueRequested": false, - "nodeType": "Literal", - "src": "14852:38:3", - "typeDescriptions": { - "typeIdentifier": "t_stringliteral_58e3ca0e65e73c038df3db6a7cab1bf7de300d13038b802ce0f4435889c48e5e", - "typeString": "literal_string \"Error: a == b not satisfied [string]\"" - }, - "value": "Error: a == b not satisfied [string]" - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_stringliteral_58e3ca0e65e73c038df3db6a7cab1bf7de300d13038b802ce0f4435889c48e5e", - "typeString": "literal_string \"Error: a == b not satisfied [string]\"" - } - ], - "id": 1677, - "name": "log", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 63, - "src": "14848:3:3", - "typeDescriptions": { - "typeIdentifier": "t_function_event_nonpayable$_t_string_memory_ptr_$returns$__$", - "typeString": "function (string memory)" - } - }, - "id": 1679, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "14848:43:3", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 1680, - "nodeType": "EmitStatement", - "src": "14843:48:3" - }, - { - "eventCall": { - "arguments": [ - { - "hexValue": "20204578706563746564", - "id": 1682, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "string", - "lValueRequested": false, - "nodeType": "Literal", - "src": "14927:12:3", - "typeDescriptions": { - "typeIdentifier": "t_stringliteral_42fa07d7c51ce5de92a0fc65dbf7e7800814fd01c258dc50e84d5be59184bf0b", - "typeString": "literal_string \" Expected\"" - }, - "value": " Expected" - }, - { - "id": 1683, - "name": "b", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1661, - "src": "14941:1:3", - "typeDescriptions": { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string memory" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_stringliteral_42fa07d7c51ce5de92a0fc65dbf7e7800814fd01c258dc50e84d5be59184bf0b", - "typeString": "literal_string \" Expected\"" - }, - { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string memory" - } - ], - "id": 1681, - "name": "log_named_string", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 143, - "src": "14910:16:3", - "typeDescriptions": { - "typeIdentifier": "t_function_event_nonpayable$_t_string_memory_ptr_$_t_string_memory_ptr_$returns$__$", - "typeString": "function (string memory,string memory)" - } - }, - "id": 1684, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "14910:33:3", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 1685, - "nodeType": "EmitStatement", - "src": "14905:38:3" - }, - { - "eventCall": { - "arguments": [ - { - "hexValue": "2020202041637475616c", - "id": 1687, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "string", - "lValueRequested": false, - "nodeType": "Literal", - "src": "14979:12:3", - "typeDescriptions": { - "typeIdentifier": "t_stringliteral_d7896f3f645b3ba89da46bf231a5df16e525e587a84bc9b284dfb39958fb219b", - "typeString": "literal_string \" Actual\"" - }, - "value": " Actual" - }, - { - "id": 1688, - "name": "a", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1659, - "src": "14993:1:3", - "typeDescriptions": { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string memory" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_stringliteral_d7896f3f645b3ba89da46bf231a5df16e525e587a84bc9b284dfb39958fb219b", - "typeString": "literal_string \" Actual\"" - }, - { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string memory" - } - ], - "id": 1686, - "name": "log_named_string", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 143, - "src": "14962:16:3", - "typeDescriptions": { - "typeIdentifier": "t_function_event_nonpayable$_t_string_memory_ptr_$_t_string_memory_ptr_$returns$__$", - "typeString": "function (string memory,string memory)" - } - }, - "id": 1689, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "14962:33:3", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 1690, - "nodeType": "EmitStatement", - "src": "14957:38:3" - }, - { - "expression": { - "arguments": [], - "expression": { - "argumentTypes": [], - "id": 1691, - "name": "fail", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 274, - "src": "15009:4:3", - "typeDescriptions": { - "typeIdentifier": "t_function_internal_nonpayable$__$returns$__$", - "typeString": "function ()" - } - }, - "id": 1692, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "15009:6:3", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 1693, - "nodeType": "ExpressionStatement", - "src": "15009:6:3" - } - ] - } - } - ] - }, - "implemented": true, - "kind": "function", - "modifiers": [], - "name": "assertEq", - "nameLocation": "14697:8:3", - "parameters": { - "id": 1662, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 1659, - "mutability": "mutable", - "name": "a", - "nameLocation": "14720:1:3", - "nodeType": "VariableDeclaration", - "scope": 1697, - "src": "14706:15:3", - "stateVariable": false, - "storageLocation": "memory", - "typeDescriptions": { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string" - }, - "typeName": { - "id": 1658, - "name": "string", - "nodeType": "ElementaryTypeName", - "src": "14706:6:3", - "typeDescriptions": { - "typeIdentifier": "t_string_storage_ptr", - "typeString": "string" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 1661, - "mutability": "mutable", - "name": "b", - "nameLocation": "14737:1:3", - "nodeType": "VariableDeclaration", - "scope": 1697, - "src": "14723:15:3", - "stateVariable": false, - "storageLocation": "memory", - "typeDescriptions": { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string" - }, - "typeName": { - "id": 1660, - "name": "string", - "nodeType": "ElementaryTypeName", - "src": "14723:6:3", - "typeDescriptions": { - "typeIdentifier": "t_string_storage_ptr", - "typeString": "string" - } - }, - "visibility": "internal" - } - ], - "src": "14705:34:3" - }, - "returnParameters": { - "id": 1663, - "nodeType": "ParameterList", - "parameters": [], - "src": "14749:0:3" - }, - "scope": 1844, - "stateMutability": "nonpayable", - "virtual": false, - "visibility": "internal" - }, - { - "id": 1732, - "nodeType": "FunctionDefinition", - "src": "15037:254:3", - "body": { - "id": 1731, - "nodeType": "Block", - "src": "15117:174:3", - "statements": [ - { - "condition": { - "commonType": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - }, - "id": 1718, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "arguments": [ - { - "arguments": [ - { - "id": 1709, - "name": "a", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1699, - "src": "15158:1:3", - "typeDescriptions": { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string memory" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string memory" - } - ], - "expression": { - "id": 1707, - "name": "abi", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": -1, - "src": "15141:3:3", - "typeDescriptions": { - "typeIdentifier": "t_magic_abi", - "typeString": "abi" - } - }, - "id": 1708, - "isConstant": false, - "isLValue": false, - "isPure": true, - "lValueRequested": false, - "memberName": "encodePacked", - "nodeType": "MemberAccess", - "src": "15141:16:3", - "typeDescriptions": { - "typeIdentifier": "t_function_abiencodepacked_pure$__$returns$_t_bytes_memory_ptr_$", - "typeString": "function () pure returns (bytes memory)" - } - }, - "id": 1710, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "15141:19:3", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes memory" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes memory" - } - ], - "id": 1706, - "name": "keccak256", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": -8, - "src": "15131:9:3", - "typeDescriptions": { - "typeIdentifier": "t_function_keccak256_pure$_t_bytes_memory_ptr_$returns$_t_bytes32_$", - "typeString": "function (bytes memory) pure returns (bytes32)" - } - }, - "id": 1711, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "15131:30:3", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - }, - "nodeType": "BinaryOperation", - "operator": "!=", - "rightExpression": { - "arguments": [ - { - "arguments": [ - { - "id": 1715, - "name": "b", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1701, - "src": "15192:1:3", - "typeDescriptions": { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string memory" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string memory" - } - ], - "expression": { - "id": 1713, - "name": "abi", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": -1, - "src": "15175:3:3", - "typeDescriptions": { - "typeIdentifier": "t_magic_abi", - "typeString": "abi" - } - }, - "id": 1714, - "isConstant": false, - "isLValue": false, - "isPure": true, - "lValueRequested": false, - "memberName": "encodePacked", - "nodeType": "MemberAccess", - "src": "15175:16:3", - "typeDescriptions": { - "typeIdentifier": "t_function_abiencodepacked_pure$__$returns$_t_bytes_memory_ptr_$", - "typeString": "function () pure returns (bytes memory)" - } - }, - "id": 1716, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "15175:19:3", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes memory" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes memory" - } - ], - "id": 1712, - "name": "keccak256", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": -8, - "src": "15165:9:3", - "typeDescriptions": { - "typeIdentifier": "t_function_keccak256_pure$_t_bytes_memory_ptr_$returns$_t_bytes32_$", - "typeString": "function (bytes memory) pure returns (bytes32)" - } - }, - "id": 1717, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "15165:30:3", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - }, - "src": "15131:64:3", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "id": 1730, - "nodeType": "IfStatement", - "src": "15127:158:3", - "trueBody": { - "id": 1729, - "nodeType": "Block", - "src": "15197:88:3", - "statements": [ - { - "eventCall": { - "arguments": [ - { - "hexValue": "4572726f72", - "id": 1720, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "string", - "lValueRequested": false, - "nodeType": "Literal", - "src": "15233:7:3", - "typeDescriptions": { - "typeIdentifier": "t_stringliteral_e342daa49723ff3485f4ff5f755a17b8bc9c3c33bbd312ceee37c94eebfe45c1", - "typeString": "literal_string \"Error\"" - }, - "value": "Error" - }, - { - "id": 1721, - "name": "err", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1703, - "src": "15242:3:3", - "typeDescriptions": { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string memory" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_stringliteral_e342daa49723ff3485f4ff5f755a17b8bc9c3c33bbd312ceee37c94eebfe45c1", - "typeString": "literal_string \"Error\"" - }, - { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string memory" - } - ], - "id": 1719, - "name": "log_named_string", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 143, - "src": "15216:16:3", - "typeDescriptions": { - "typeIdentifier": "t_function_event_nonpayable$_t_string_memory_ptr_$_t_string_memory_ptr_$returns$__$", - "typeString": "function (string memory,string memory)" - } - }, - "id": 1722, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "15216:30:3", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 1723, - "nodeType": "EmitStatement", - "src": "15211:35:3" - }, - { - "expression": { - "arguments": [ - { - "id": 1725, - "name": "a", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1699, - "src": "15269:1:3", - "typeDescriptions": { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string memory" - } - }, - { - "id": 1726, - "name": "b", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1701, - "src": "15272:1:3", - "typeDescriptions": { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string memory" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string memory" - }, - { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string memory" - } - ], - "id": 1724, - "name": "assertEq", - "nodeType": "Identifier", - "overloadedDeclarations": [ - 378, - 403, - 433, - 458, - 517, - 542, - 572, - 597, - 1697, - 1732 - ], - "referencedDeclaration": 1697, - "src": "15260:8:3", - "typeDescriptions": { - "typeIdentifier": "t_function_internal_nonpayable$_t_string_memory_ptr_$_t_string_memory_ptr_$returns$__$", - "typeString": "function (string memory,string memory)" - } - }, - "id": 1727, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "15260:14:3", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 1728, - "nodeType": "ExpressionStatement", - "src": "15260:14:3" - } - ] - } - } - ] - }, - "implemented": true, - "kind": "function", - "modifiers": [], - "name": "assertEq", - "nameLocation": "15046:8:3", - "parameters": { - "id": 1704, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 1699, - "mutability": "mutable", - "name": "a", - "nameLocation": "15069:1:3", - "nodeType": "VariableDeclaration", - "scope": 1732, - "src": "15055:15:3", - "stateVariable": false, - "storageLocation": "memory", - "typeDescriptions": { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string" - }, - "typeName": { - "id": 1698, - "name": "string", - "nodeType": "ElementaryTypeName", - "src": "15055:6:3", - "typeDescriptions": { - "typeIdentifier": "t_string_storage_ptr", - "typeString": "string" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 1701, - "mutability": "mutable", - "name": "b", - "nameLocation": "15086:1:3", - "nodeType": "VariableDeclaration", - "scope": 1732, - "src": "15072:15:3", - "stateVariable": false, - "storageLocation": "memory", - "typeDescriptions": { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string" - }, - "typeName": { - "id": 1700, - "name": "string", - "nodeType": "ElementaryTypeName", - "src": "15072:6:3", - "typeDescriptions": { - "typeIdentifier": "t_string_storage_ptr", - "typeString": "string" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 1703, - "mutability": "mutable", - "name": "err", - "nameLocation": "15103:3:3", - "nodeType": "VariableDeclaration", - "scope": 1732, - "src": "15089:17:3", - "stateVariable": false, - "storageLocation": "memory", - "typeDescriptions": { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string" - }, - "typeName": { - "id": 1702, - "name": "string", - "nodeType": "ElementaryTypeName", - "src": "15089:6:3", - "typeDescriptions": { - "typeIdentifier": "t_string_storage_ptr", - "typeString": "string" - } - }, - "visibility": "internal" - } - ], - "src": "15054:53:3" - }, - "returnParameters": { - "id": 1705, - "nodeType": "ParameterList", - "parameters": [], - "src": "15117:0:3" - }, - "scope": 1844, - "stateMutability": "nonpayable", - "virtual": false, - "visibility": "internal" - }, - { - "id": 1784, - "nodeType": "FunctionDefinition", - "src": "15297:345:3", - "body": { - "id": 1783, - "nodeType": "Block", - "src": "15379:263:3", - "statements": [ - { - "expression": { - "id": 1743, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftHandSide": { - "id": 1741, - "name": "ok", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1739, - "src": "15389:2:3", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "nodeType": "Assignment", - "operator": "=", - "rightHandSide": { - "hexValue": "74727565", - "id": 1742, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "bool", - "lValueRequested": false, - "nodeType": "Literal", - "src": "15394:4:3", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - "value": "true" - }, - "src": "15389:9:3", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "id": 1744, - "nodeType": "ExpressionStatement", - "src": "15389:9:3" - }, - { - "condition": { - "commonType": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "id": 1749, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "expression": { - "id": 1745, - "name": "a", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1734, - "src": "15412:1:3", - "typeDescriptions": { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes memory" - } - }, - "id": 1746, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberName": "length", - "nodeType": "MemberAccess", - "src": "15412:8:3", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "BinaryOperation", - "operator": "==", - "rightExpression": { - "expression": { - "id": 1747, - "name": "b", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1736, - "src": "15424:1:3", - "typeDescriptions": { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes memory" - } - }, - "id": 1748, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberName": "length", - "nodeType": "MemberAccess", - "src": "15424:8:3", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "src": "15412:20:3", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "falseBody": { - "id": 1781, - "nodeType": "Block", - "src": "15601:35:3", - "statements": [ - { - "expression": { - "id": 1779, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftHandSide": { - "id": 1777, - "name": "ok", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1739, - "src": "15615:2:3", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "nodeType": "Assignment", - "operator": "=", - "rightHandSide": { - "hexValue": "66616c7365", - "id": 1778, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "bool", - "lValueRequested": false, - "nodeType": "Literal", - "src": "15620:5:3", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - "value": "false" - }, - "src": "15615:10:3", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "id": 1780, - "nodeType": "ExpressionStatement", - "src": "15615:10:3" - } - ] - }, - "id": 1782, - "nodeType": "IfStatement", - "src": "15408:228:3", - "trueBody": { - "id": 1776, - "nodeType": "Block", - "src": "15434:161:3", - "statements": [ - { - "body": { - "id": 1774, - "nodeType": "Block", - "src": "15484:101:3", - "statements": [ - { - "condition": { - "commonType": { - "typeIdentifier": "t_bytes1", - "typeString": "bytes1" - }, - "id": 1767, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "baseExpression": { - "id": 1761, - "name": "a", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1734, - "src": "15506:1:3", - "typeDescriptions": { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes memory" - } - }, - "id": 1763, - "indexExpression": { - "id": 1762, - "name": "i", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1751, - "src": "15508:1:3", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "nodeType": "IndexAccess", - "src": "15506:4:3", - "typeDescriptions": { - "typeIdentifier": "t_bytes1", - "typeString": "bytes1" - } - }, - "nodeType": "BinaryOperation", - "operator": "!=", - "rightExpression": { - "baseExpression": { - "id": 1764, - "name": "b", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1736, - "src": "15514:1:3", - "typeDescriptions": { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes memory" - } - }, - "id": 1766, - "indexExpression": { - "id": 1765, - "name": "i", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1751, - "src": "15516:1:3", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "nodeType": "IndexAccess", - "src": "15514:4:3", - "typeDescriptions": { - "typeIdentifier": "t_bytes1", - "typeString": "bytes1" - } - }, - "src": "15506:12:3", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "id": 1773, - "nodeType": "IfStatement", - "src": "15502:69:3", - "trueBody": { - "id": 1772, - "nodeType": "Block", - "src": "15520:51:3", - "statements": [ - { - "expression": { - "id": 1770, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftHandSide": { - "id": 1768, - "name": "ok", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1739, - "src": "15542:2:3", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "nodeType": "Assignment", - "operator": "=", - "rightHandSide": { - "hexValue": "66616c7365", - "id": 1769, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "bool", - "lValueRequested": false, - "nodeType": "Literal", - "src": "15547:5:3", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - "value": "false" - }, - "src": "15542:10:3", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "id": 1771, - "nodeType": "ExpressionStatement", - "src": "15542:10:3" - } - ] - } - } - ] - }, - "condition": { - "commonType": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "id": 1757, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "id": 1754, - "name": "i", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1751, - "src": "15465:1:3", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "BinaryOperation", - "operator": "<", - "rightExpression": { - "expression": { - "id": 1755, - "name": "a", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1734, - "src": "15469:1:3", - "typeDescriptions": { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes memory" - } - }, - "id": 1756, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberName": "length", - "nodeType": "MemberAccess", - "src": "15469:8:3", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "src": "15465:12:3", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "id": 1775, - "initializationExpression": { - "assignments": [ - 1751 - ], - "declarations": [ - { - "constant": false, - "id": 1751, - "mutability": "mutable", - "name": "i", - "nameLocation": "15458:1:3", - "nodeType": "VariableDeclaration", - "scope": 1775, - "src": "15453:6:3", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 1750, - "name": "uint", - "nodeType": "ElementaryTypeName", - "src": "15453:4:3", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "visibility": "internal" - } - ], - "id": 1753, - "initialValue": { - "hexValue": "30", - "id": 1752, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "number", - "lValueRequested": false, - "nodeType": "Literal", - "src": "15462:1:3", - "typeDescriptions": { - "typeIdentifier": "t_rational_0_by_1", - "typeString": "int_const 0" - }, - "value": "0" - }, - "nodeType": "VariableDeclarationStatement", - "src": "15453:10:3" - }, - "loopExpression": { - "expression": { - "id": 1759, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "nodeType": "UnaryOperation", - "operator": "++", - "prefix": false, - "src": "15479:3:3", - "subExpression": { - "id": 1758, - "name": "i", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1751, - "src": "15479:1:3", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "id": 1760, - "nodeType": "ExpressionStatement", - "src": "15479:3:3" - }, - "nodeType": "ForStatement", - "src": "15448:137:3" - } - ] - } - } - ] - }, - "implemented": true, - "kind": "function", - "modifiers": [], - "name": "checkEq0", - "nameLocation": "15306:8:3", - "parameters": { - "id": 1737, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 1734, - "mutability": "mutable", - "name": "a", - "nameLocation": "15328:1:3", - "nodeType": "VariableDeclaration", - "scope": 1784, - "src": "15315:14:3", - "stateVariable": false, - "storageLocation": "memory", - "typeDescriptions": { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes" - }, - "typeName": { - "id": 1733, - "name": "bytes", - "nodeType": "ElementaryTypeName", - "src": "15315:5:3", - "typeDescriptions": { - "typeIdentifier": "t_bytes_storage_ptr", - "typeString": "bytes" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 1736, - "mutability": "mutable", - "name": "b", - "nameLocation": "15344:1:3", - "nodeType": "VariableDeclaration", - "scope": 1784, - "src": "15331:14:3", - "stateVariable": false, - "storageLocation": "memory", - "typeDescriptions": { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes" - }, - "typeName": { - "id": 1735, - "name": "bytes", - "nodeType": "ElementaryTypeName", - "src": "15331:5:3", - "typeDescriptions": { - "typeIdentifier": "t_bytes_storage_ptr", - "typeString": "bytes" - } - }, - "visibility": "internal" - } - ], - "src": "15314:32:3" - }, - "returnParameters": { - "id": 1740, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 1739, - "mutability": "mutable", - "name": "ok", - "nameLocation": "15375:2:3", - "nodeType": "VariableDeclaration", - "scope": 1784, - "src": "15370:7:3", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - "typeName": { - "id": 1738, - "name": "bool", - "nodeType": "ElementaryTypeName", - "src": "15370:4:3", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "visibility": "internal" - } - ], - "src": "15369:9:3" - }, - "scope": 1844, - "stateMutability": "pure", - "virtual": false, - "visibility": "internal" - }, - { - "id": 1816, - "nodeType": "FunctionDefinition", - "src": "15647:291:3", - "body": { - "id": 1815, - "nodeType": "Block", - "src": "15707:231:3", - "statements": [ - { - "condition": { - "id": 1795, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "nodeType": "UnaryOperation", - "operator": "!", - "prefix": true, - "src": "15721:15:3", - "subExpression": { - "arguments": [ - { - "id": 1792, - "name": "a", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1786, - "src": "15731:1:3", - "typeDescriptions": { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes memory" - } - }, - { - "id": 1793, - "name": "b", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1788, - "src": "15734:1:3", - "typeDescriptions": { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes memory" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes memory" - }, - { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes memory" - } - ], - "id": 1791, - "name": "checkEq0", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1784, - "src": "15722:8:3", - "typeDescriptions": { - "typeIdentifier": "t_function_internal_pure$_t_bytes_memory_ptr_$_t_bytes_memory_ptr_$returns$_t_bool_$", - "typeString": "function (bytes memory,bytes memory) pure returns (bool)" - } - }, - "id": 1794, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "15722:14:3", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "id": 1814, - "nodeType": "IfStatement", - "src": "15717:215:3", - "trueBody": { - "id": 1813, - "nodeType": "Block", - "src": "15738:194:3", - "statements": [ - { - "eventCall": { - "arguments": [ - { - "hexValue": "4572726f723a2061203d3d2062206e6f7420736174697366696564205b62797465735d", - "id": 1797, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "string", - "lValueRequested": false, - "nodeType": "Literal", - "src": "15761:37:3", - "typeDescriptions": { - "typeIdentifier": "t_stringliteral_9bb7b728691fe2872efdd27bd07c4a95b3586c3b7ec3afa731a7c21a76e39cfc", - "typeString": "literal_string \"Error: a == b not satisfied [bytes]\"" - }, - "value": "Error: a == b not satisfied [bytes]" - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_stringliteral_9bb7b728691fe2872efdd27bd07c4a95b3586c3b7ec3afa731a7c21a76e39cfc", - "typeString": "literal_string \"Error: a == b not satisfied [bytes]\"" - } - ], - "id": 1796, - "name": "log", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 63, - "src": "15757:3:3", - "typeDescriptions": { - "typeIdentifier": "t_function_event_nonpayable$_t_string_memory_ptr_$returns$__$", - "typeString": "function (string memory)" - } - }, - "id": 1798, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "15757:42:3", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 1799, - "nodeType": "EmitStatement", - "src": "15752:47:3" - }, - { - "eventCall": { - "arguments": [ - { - "hexValue": "20204578706563746564", - "id": 1801, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "string", - "lValueRequested": false, - "nodeType": "Literal", - "src": "15834:12:3", - "typeDescriptions": { - "typeIdentifier": "t_stringliteral_42fa07d7c51ce5de92a0fc65dbf7e7800814fd01c258dc50e84d5be59184bf0b", - "typeString": "literal_string \" Expected\"" - }, - "value": " Expected" - }, - { - "id": 1802, - "name": "b", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1788, - "src": "15848:1:3", - "typeDescriptions": { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes memory" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_stringliteral_42fa07d7c51ce5de92a0fc65dbf7e7800814fd01c258dc50e84d5be59184bf0b", - "typeString": "literal_string \" Expected\"" - }, - { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes memory" - } - ], - "id": 1800, - "name": "log_named_bytes", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 137, - "src": "15818:15:3", - "typeDescriptions": { - "typeIdentifier": "t_function_event_nonpayable$_t_string_memory_ptr_$_t_bytes_memory_ptr_$returns$__$", - "typeString": "function (string memory,bytes memory)" - } - }, - "id": 1803, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "15818:32:3", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 1804, - "nodeType": "EmitStatement", - "src": "15813:37:3" - }, - { - "eventCall": { - "arguments": [ - { - "hexValue": "2020202041637475616c", - "id": 1806, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "string", - "lValueRequested": false, - "nodeType": "Literal", - "src": "15885:12:3", - "typeDescriptions": { - "typeIdentifier": "t_stringliteral_d7896f3f645b3ba89da46bf231a5df16e525e587a84bc9b284dfb39958fb219b", - "typeString": "literal_string \" Actual\"" - }, - "value": " Actual" - }, - { - "id": 1807, - "name": "a", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1786, - "src": "15899:1:3", - "typeDescriptions": { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes memory" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_stringliteral_d7896f3f645b3ba89da46bf231a5df16e525e587a84bc9b284dfb39958fb219b", - "typeString": "literal_string \" Actual\"" - }, - { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes memory" - } - ], - "id": 1805, - "name": "log_named_bytes", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 137, - "src": "15869:15:3", - "typeDescriptions": { - "typeIdentifier": "t_function_event_nonpayable$_t_string_memory_ptr_$_t_bytes_memory_ptr_$returns$__$", - "typeString": "function (string memory,bytes memory)" - } - }, - "id": 1808, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "15869:32:3", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 1809, - "nodeType": "EmitStatement", - "src": "15864:37:3" - }, - { - "expression": { - "arguments": [], - "expression": { - "argumentTypes": [], - "id": 1810, - "name": "fail", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 274, - "src": "15915:4:3", - "typeDescriptions": { - "typeIdentifier": "t_function_internal_nonpayable$__$returns$__$", - "typeString": "function ()" - } - }, - "id": 1811, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "15915:6:3", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 1812, - "nodeType": "ExpressionStatement", - "src": "15915:6:3" - } - ] - } - } - ] - }, - "implemented": true, - "kind": "function", - "modifiers": [], - "name": "assertEq0", - "nameLocation": "15656:9:3", - "parameters": { - "id": 1789, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 1786, - "mutability": "mutable", - "name": "a", - "nameLocation": "15679:1:3", - "nodeType": "VariableDeclaration", - "scope": 1816, - "src": "15666:14:3", - "stateVariable": false, - "storageLocation": "memory", - "typeDescriptions": { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes" - }, - "typeName": { - "id": 1785, - "name": "bytes", - "nodeType": "ElementaryTypeName", - "src": "15666:5:3", - "typeDescriptions": { - "typeIdentifier": "t_bytes_storage_ptr", - "typeString": "bytes" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 1788, - "mutability": "mutable", - "name": "b", - "nameLocation": "15695:1:3", - "nodeType": "VariableDeclaration", - "scope": 1816, - "src": "15682:14:3", - "stateVariable": false, - "storageLocation": "memory", - "typeDescriptions": { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes" - }, - "typeName": { - "id": 1787, - "name": "bytes", - "nodeType": "ElementaryTypeName", - "src": "15682:5:3", - "typeDescriptions": { - "typeIdentifier": "t_bytes_storage_ptr", - "typeString": "bytes" - } - }, - "visibility": "internal" - } - ], - "src": "15665:32:3" - }, - "returnParameters": { - "id": 1790, - "nodeType": "ParameterList", - "parameters": [], - "src": "15707:0:3" - }, - "scope": 1844, - "stateMutability": "nonpayable", - "virtual": false, - "visibility": "internal" - }, - { - "id": 1843, - "nodeType": "FunctionDefinition", - "src": "15943:205:3", - "body": { - "id": 1842, - "nodeType": "Block", - "src": "16022:126:3", - "statements": [ - { - "condition": { - "id": 1829, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "nodeType": "UnaryOperation", - "operator": "!", - "prefix": true, - "src": "16036:15:3", - "subExpression": { - "arguments": [ - { - "id": 1826, - "name": "a", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1818, - "src": "16046:1:3", - "typeDescriptions": { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes memory" - } - }, - { - "id": 1827, - "name": "b", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1820, - "src": "16049:1:3", - "typeDescriptions": { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes memory" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes memory" - }, - { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes memory" - } - ], - "id": 1825, - "name": "checkEq0", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1784, - "src": "16037:8:3", - "typeDescriptions": { - "typeIdentifier": "t_function_internal_pure$_t_bytes_memory_ptr_$_t_bytes_memory_ptr_$returns$_t_bool_$", - "typeString": "function (bytes memory,bytes memory) pure returns (bool)" - } - }, - "id": 1828, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "16037:14:3", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "id": 1841, - "nodeType": "IfStatement", - "src": "16032:110:3", - "trueBody": { - "id": 1840, - "nodeType": "Block", - "src": "16053:89:3", - "statements": [ - { - "eventCall": { - "arguments": [ - { - "hexValue": "4572726f72", - "id": 1831, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "string", - "lValueRequested": false, - "nodeType": "Literal", - "src": "16089:7:3", - "typeDescriptions": { - "typeIdentifier": "t_stringliteral_e342daa49723ff3485f4ff5f755a17b8bc9c3c33bbd312ceee37c94eebfe45c1", - "typeString": "literal_string \"Error\"" - }, - "value": "Error" - }, - { - "id": 1832, - "name": "err", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1822, - "src": "16098:3:3", - "typeDescriptions": { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string memory" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_stringliteral_e342daa49723ff3485f4ff5f755a17b8bc9c3c33bbd312ceee37c94eebfe45c1", - "typeString": "literal_string \"Error\"" - }, - { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string memory" - } - ], - "id": 1830, - "name": "log_named_string", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 143, - "src": "16072:16:3", - "typeDescriptions": { - "typeIdentifier": "t_function_event_nonpayable$_t_string_memory_ptr_$_t_string_memory_ptr_$returns$__$", - "typeString": "function (string memory,string memory)" - } - }, - "id": 1833, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "16072:30:3", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 1834, - "nodeType": "EmitStatement", - "src": "16067:35:3" - }, - { - "expression": { - "arguments": [ - { - "id": 1836, - "name": "a", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1818, - "src": "16126:1:3", - "typeDescriptions": { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes memory" - } - }, - { - "id": 1837, - "name": "b", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1820, - "src": "16129:1:3", - "typeDescriptions": { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes memory" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes memory" - }, - { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes memory" - } - ], - "id": 1835, - "name": "assertEq0", - "nodeType": "Identifier", - "overloadedDeclarations": [ - 1816, - 1843 - ], - "referencedDeclaration": 1816, - "src": "16116:9:3", - "typeDescriptions": { - "typeIdentifier": "t_function_internal_nonpayable$_t_bytes_memory_ptr_$_t_bytes_memory_ptr_$returns$__$", - "typeString": "function (bytes memory,bytes memory)" - } - }, - "id": 1838, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "16116:15:3", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 1839, - "nodeType": "ExpressionStatement", - "src": "16116:15:3" - } - ] - } - } - ] - }, - "implemented": true, - "kind": "function", - "modifiers": [], - "name": "assertEq0", - "nameLocation": "15952:9:3", - "parameters": { - "id": 1823, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 1818, - "mutability": "mutable", - "name": "a", - "nameLocation": "15975:1:3", - "nodeType": "VariableDeclaration", - "scope": 1843, - "src": "15962:14:3", - "stateVariable": false, - "storageLocation": "memory", - "typeDescriptions": { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes" - }, - "typeName": { - "id": 1817, - "name": "bytes", - "nodeType": "ElementaryTypeName", - "src": "15962:5:3", - "typeDescriptions": { - "typeIdentifier": "t_bytes_storage_ptr", - "typeString": "bytes" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 1820, - "mutability": "mutable", - "name": "b", - "nameLocation": "15991:1:3", - "nodeType": "VariableDeclaration", - "scope": 1843, - "src": "15978:14:3", - "stateVariable": false, - "storageLocation": "memory", - "typeDescriptions": { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes" - }, - "typeName": { - "id": 1819, - "name": "bytes", - "nodeType": "ElementaryTypeName", - "src": "15978:5:3", - "typeDescriptions": { - "typeIdentifier": "t_bytes_storage_ptr", - "typeString": "bytes" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 1822, - "mutability": "mutable", - "name": "err", - "nameLocation": "16008:3:3", - "nodeType": "VariableDeclaration", - "scope": 1843, - "src": "15994:17:3", - "stateVariable": false, - "storageLocation": "memory", - "typeDescriptions": { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string" - }, - "typeName": { - "id": 1821, - "name": "string", - "nodeType": "ElementaryTypeName", - "src": "15994:6:3", - "typeDescriptions": { - "typeIdentifier": "t_string_storage_ptr", - "typeString": "string" - } - }, - "visibility": "internal" - } - ], - "src": "15961:51:3" - }, - "returnParameters": { - "id": 1824, - "nodeType": "ParameterList", - "parameters": [], - "src": "16022:0:3" - }, - "scope": 1844, - "stateMutability": "nonpayable", - "virtual": false, - "visibility": "internal" - } - ], - "abstract": false, - "baseContracts": [], - "canonicalName": "DSTest", - "contractDependencies": [], - "contractKind": "contract", - "fullyImplemented": true, - "linearizedBaseContracts": [ - 1844 - ], - "name": "DSTest", - "nameLocation": "724:6:3", - "scope": 1845, - "usedErrors": [] - } - ], - "license": "GPL-3.0-or-later" - } -} \ No newline at end of file diff --git a/src/AssetCreationManualP2P.sol b/src/AssetCreationManualP2P.sol new file mode 100644 index 0000000..8351276 --- /dev/null +++ b/src/AssetCreationManualP2P.sol @@ -0,0 +1,155 @@ +//SPDX License Identifier: MIT + +pragma solidity ^0.8.0; + +import "@openzeppelin/contracts/token/ERC20/utils/TokenTimelock.sol"; +import "@openzeppelin/contracts/token/ERC20/utils/SafeERC20.sol"; + +contract AssetCreationManualP2P { + using SafeERC20 for IERC20; +/* Technical Description +This contract initalizes a Manual P2P asset creation stand-alone contract. + +The core idea of this contract is to have the user initalize the contract by +supplying a ERC20 to a token address for holding. The user and the creator +have the option to end the contract earlier from their initially supplied +wallet addresses. At end term, the creator will pay gas to recieve the funds +in the contract. + + Simple Description +This creates a contract between 2 people. One person pays to create the contract +and supplys the money (stakeholder), and the other pays to receive the money +(benefitary). The contracts holds the money. Both people have the option to pay +to end the contract early. +*/ + uint8 private immutable deadlineInterval; //meant to be 2, 3, or 4 + uint256 private immutable releaseTime; //couldnt compare uint256 with function view returns (uint256) + + mapping (address => bool) public whiteList; + mapping (bool => address) internal listWhite; + + TokenTimelock public tokenTimeLock; + + constructor ( + uint256 _releaseTime, + address _creator, + IERC20 _tokens, + uint8 _deadlineInterval + ) { + require(_creator != address(0), "ERC20:transfer from zero address"); + + tokenTimeLock = new TokenTimelock(_tokens, _creator, _releaseTime); + + whiteList[payable(_creator)] = true; + listWhite[whiteList[_creator]] = _creator; + whiteList[payable(msg.sender)] = true; + listWhite[!whiteList[msg.sender]] = msg.sender; + deadlineInterval = _deadlineInterval; + releaseTime = _releaseTime; + } + + modifier onlyWhiteList { + require(whiteList[msg.sender] == true, "Only WhiteList"); + _; //figure out why this is here in example + } + + function startContract(uint256 _amount) payable public onlyWhiteList { + require(_amount > 0, "Cannot transfer 0 or less"); + + //Got to keep working on this + tokenTimeLock.token().safeIncreaseAllowance(address(tokenTimeLock), _amount); + tokenTimeLock.token().safeTransferFrom(getUser(), address(tokenTimeLock), _amount); + } + + function getUser() public view returns (address) { + return listWhite[false]; + } + + function getCreator() public view returns (address) { + return tokenTimeLock.beneficiary(); + //or listWhite[true]; + } + + function getAmount() public view returns (uint256) { + return tokenTimeLock.token().balanceOf(address(tokenTimeLock)); + } + + function releaseFunds() public onlyWhiteList { + + if (block.timestamp > releaseTime) { + releaseToCreator(); + + // Four-Fold Deadlines + } else if (deadlineInterval == 4) { + + if (block.timestamp > (3*releaseTime)/4) { + //75% creator, 25% user + releaseToUser(getAmount()/4); + releaseToCreator(); + + } else if (block.timestamp > (2*releaseTime)/4) { + splitRelease(); + + } else if (block.timestamp > (releaseTime)/4) { + //25 creator, 75% user + releaseToUser((3*getAmount())/4); + releaseToCreator(); + + } else { + quickRelease(); + } + + // Three Fold Deadlines + } else if (deadlineInterval == 3) { + + if (block.timestamp > (2*releaseTime)/3) { + //66% creator, 33% user + releaseToUser(getAmount()/3); + releaseToCreator(); + + } else if (block.timestamp > (releaseTime)/3) { + // 33 creator, 66 user + releaseToUser((2*getAmount())/3); + releaseToCreator(); + + } else { + quickRelease(); + } + + // Two Fold Deadline + } else if (deadlineInterval == 2) { + + if (block.timestamp > (releaseTime)/2) { + splitRelease(); + + } else { + quickRelease(); + } + } else { + //can write custom intervals + } + } + + //Releases 95% to User, 5% to Creator from the contract vault + function quickRelease () private { + releaseToUser((19*getAmount())/20); + releaseToCreator(); + } + + function splitRelease() private { + releaseToUser(getAmount()/2); + releaseToCreator(); + } + + function releaseToUser(uint256 amount) payable public onlyWhiteList { + //transfer here + } + + function releaseToCreator() payable public onlyWhiteList { + tokenTimeLock.release(); + } + + function customRelease(uint256 creatorCut) private { + //can write this + } +} \ No newline at end of file diff --git a/src/AssetCreationr1.sol b/src/AssetCreationr1.sol deleted file mode 100644 index 6ad95a3..0000000 --- a/src/AssetCreationr1.sol +++ /dev/null @@ -1,111 +0,0 @@ -//SPDX License Identifier: MIT - -pragma solidity ^0.8.0; - -import "@openzeppelin/contracts/token/ERC20/IERC20.sol"; -import "@openzeppelin/contracts/token/ERC20/utils/TokenTimelock.sol"; -import "@chainlink/contracts/src/v0.8/KeeperCompatible.sol"; - -//use is tokentimelock more in future -contract AssetCreation is KeeperCompatibleInterface { - - TokenTimelock private tokenTimeLock; - - uint256 private duration; - uint256 private startTime; - uint256 private endTime; - uint256 constant USER_PENALTY = 10; // 10=10%, 20=5%, etc - - uint256 private immutable i_raisedAmount; - address private immutable i_assetUser; - - address payable private tokens; - - //payable? - address private assetCreator; - - address constant vaultDAO = 0xeCf6d20544D0e84ca3Ab683F0394158E6c75eAaE; - - IERC20 public ierc20; - - //DAO initalizes contract for known user - constructor ( - uint256 amount, - uint256 _raisedAmount, - address _user - ) { - //require (msg.sender == vaultDAO, "You are not the DAO"); - i_assetUser = _user; - i_raisedAmount = _raisedAmount; - //I need to learn how to do transfers properly - //ierc20.transferFrom(vaultDAO, tokens, amount); - } - - // called by user, duration in seconds - function startContract (address _creatorAddr, uint256 _duration) public { - //change to msg.sender - (checkIfUser(i_assetUser)); //add logic to check that assetCreator is not assigned yet - assetCreator = _creatorAddr; - startTime = block.timestamp; - duration = _duration; - endTime = startTime + _duration; - tokenTimeLock = new TokenTimelock (ierc20, _creatorAddr, endTime); - } - - function checkIfUser (address _userAddr) public view returns (bool) { - if (_userAddr == i_assetUser) { - return true; - } else { - return false; - } - } - - function getUser () public view returns (address) { - return i_assetUser; - } - - function getCreator () public view returns (address) { - return assetCreator; - } - - function checkTimeRemaining () public view returns (uint256) { - return endTime - block.timestamp; - } - - //calls end contract - function callEndContract () public { - //change to msg.sender - require (checkIfUser(i_assetUser), "You cannot end this contract"); - endContract(true); - } - - //checks if contract duration expired - function checkUpkeep (bytes calldata) external view returns ( - bool upkeepNeeded, bytes memory performData) { - upkeepNeeded = (block.timestamp >= endTime); - } - - //executes endContract - function performUpkeep(bytes calldata) external override { - if(block.timestamp >= endTime) { - endContract(false); - } - } - - function endContract(bool _isUser) internal virtual { - - if(_isUser) { - //use split tokens in future? - if (block.timestamp >= endTime - (duration/2)) { - //ierc20.transfer(assetCreator, ierc20.balanceOf(tokens)/2); - //ierc20.transfer(i_assetUser, ierc20.balanceOf(tokens)); - } else { - //ierc20.transfer(vaultDAO, ((ierc20.balanceOf(tokens) - i_raisedAmount) / USER_PENALTY) + i_raisedAmount); - //ierc20.transfer(i_assetUser, ierc20.balanceOf(tokens)); - } - } else { - //called by keeper, need to figure out how txs work - //bool sentTx = ierc20.transferFrom(tokens,assetCreator,ierc20.balanceOf(tokens)); ??? - } - } -} \ No newline at end of file diff --git a/src/mocks/mockERC20.sol b/src/mocks/mockERC20.sol new file mode 100644 index 0000000..3910ffa --- /dev/null +++ b/src/mocks/mockERC20.sol @@ -0,0 +1,16 @@ +// SPDX-License-Identifier: MIT +pragma solidity ^0.8.4; + +import "@openzeppelin/contracts/token/ERC20/ERC20.sol"; +import "@openzeppelin/contracts/token/ERC20/extensions/ERC20Burnable.sol"; +import "@openzeppelin/contracts/access/Ownable.sol"; + +contract TestTokenS is ERC20, ERC20Burnable, Ownable { + constructor() ERC20("TestTokenS", "TTS") { + _mint(msg.sender, 10000 * 10 ** decimals()); + } + + function mint(address to, uint256 amount) public onlyOwner { + _mint(to, amount); + } +} \ No newline at end of file diff --git a/test/AssetCreation.t.sol b/test/AssetCreation.t.sol deleted file mode 100644 index 15e9510..0000000 --- a/test/AssetCreation.t.sol +++ /dev/null @@ -1,65 +0,0 @@ -// SPDX-License-Identifier: UNLICENSED -pragma solidity ^0.8.13; - -import "ds-test/src/test.sol"; -import "../src/AssetCreationr1.sol"; - -interface CheatCodes { - function warp(uint256) external; -} - -contract AssetCreationTest is DSTest { - CheatCodes constant cheats = CheatCodes(HEVM_ADDRESS); - - AssetCreation private eg; - - uint256 constant amount = 0; - uint256 constant raisedAmount = 300; - uint256 constant duration = 300; - address public user = 0xeCf6d20544D0e84ca3Ab683F0394158E6c75eAaE; //vault address atm - address private creator; - - function setUp() public { - eg = new AssetCreation(amount, raisedAmount, user); - creator = 0x1234567890123456789012345678901234567890; - eg.startContract(creator, duration); - } - - function testStartContract() public { - assertEq(creator, eg.getCreator()); - } - - function testCheckIfUser() public { - assertEq(user, eg.getUser()); - } - - function testTimeRemaining() public view { - eg.checkTimeRemaining(); - } - - function testCallEndContract() public { - cheats.warp(block.timestamp + duration/3); - eg.callEndContract(); - assertTrue(true); - cheats.warp(block.timestamp + duration/2); - eg.callEndContract(); - assertTrue(true); - } - - function testCheckUpkeep() public { - bytes memory data = ''; - bool upkeepNeeded = false; - (upkeepNeeded, ) = eg.checkUpkeep(data); - assertTrue(upkeepNeeded == false); - cheats.warp(block.timestamp + duration); - (upkeepNeeded, ) = eg.checkUpkeep(data); - assertTrue(upkeepNeeded); - } - - function testPerformUpkeep() public { - bytes memory data = ''; - cheats.warp(block.timestamp + duration); - eg.performUpkeep(data); - assertTrue(true); - } -} diff --git a/test/AssetCreationManualP2P.t.sol b/test/AssetCreationManualP2P.t.sol new file mode 100644 index 0000000..c14f6c4 --- /dev/null +++ b/test/AssetCreationManualP2P.t.sol @@ -0,0 +1,94 @@ +// SPDX-License-Identifier: MIT +pragma solidity ^0.8.13; + +//import "lib/forge-std/src/Test.sol"; //cant get remapping to work +import "ds-test/src/test.sol"; +import "../src/mocks/mockERC20.sol"; +import "../src/AssetCreationManualP2P.sol"; +import "@openzeppelin/contracts/token/ERC20/IERC20.sol"; + +interface CheatCodes { + function warp(uint256) external; +} + +contract AssetCreationManualP2PTest is DSTest { + CheatCodes constant cheats = CheatCodes(HEVM_ADDRESS); + + AssetCreationManualP2P private eg; + TestTokenS private ek; + + uint256 constant public _releaseTime= 100; + uint256 constant public _amount = 1000; + uint8 constant public _deadlineInterval = 4; + address payable public _creator; + IERC20 private tokens; + + function setUp() public { + _creator = payable(0x1234567890123456789012345678901234567890); + ek = new TestTokenS(); + eg = new AssetCreationManualP2P( + _releaseTime, + _creator, + tokens, + _deadlineInterval); + } + + function testStartContract() public { + eg.startContract(_amount); + assertEq(tokens.balanceOf(eg.tokenTimeLock.address), _amount); + //assertEq(tokens.balanceOf(eg.tokenTimeLock.address), _amount); + } + + function testGetAmount() public { + assertEq(_amount, eg.getAmount()); + } + + function testGetCreator() public { + assertEq(_creator, eg.getCreator()); + } + + function testGetUser() public { + assertEq(address(this), eg.getUser()); + } + + // All following tests fail if any of 4 tests above fail + + function testQuickEnd() public { + cheats.warp(block.timestamp + 1); + eg.releaseFunds(); + assertEq(tokens.balanceOf(eg.getCreator()), _amount/20); + assertEq(tokens.balanceOf(eg.getUser()), (19*_amount)/20); + } + + // Quarterly Ending + function testFirstQuarterEnd() public { + // 1st Interval + cheats.warp(block.timestamp + 26); + eg.releaseFunds(); + assertEq(tokens.balanceOf(eg.getCreator()), _amount/4); + assertEq(tokens.balanceOf(eg.getUser()), (3*_amount)/4); + } + + function testSecondQuarterEnd() public { + // 2nd Interval + cheats.warp(block.timestamp + 26); + eg.releaseFunds(); + assertEq(tokens.balanceOf(eg.getCreator()), (2*_amount)/4); + assertEq(tokens.balanceOf(eg.getUser()), (2*_amount)/4); + } + + function testThirdQuarterEnd() public { + // 3rd Interval + cheats.warp(block.timestamp + 26); + eg.releaseFunds(); + assertEq(tokens.balanceOf(eg.getCreator()), (3*_amount)/4); + assertEq(tokens.balanceOf(eg.getUser()), _amount/4); + } + + function testFourthQuarterEnd() public { + // 4th Interval + cheats.warp(block.timestamp + 26); + eg.releaseFunds(); + assertEq(tokens.balanceOf(eg.getCreator()), _amount); + } +} \ No newline at end of file