{ "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": "0x6080806040523461002357600160ff19600054161760005561024090816100298239f35b600080fdfe6080604052600436101561001257600080fd5b6000803560e01c8063ba414fa6146100575763fa7626d41461003357600080fd5b3461005457806003193601126100545760ff60209154166040519015158152f35b80fd5b503461005457806003193601126100545760206100726100b4565b6040519015158152f35b90601f8019910116810190811067ffffffffffffffff82111761009e57604052565b634e487b7160e01b600052604160045260246000fd5b6000805460081c60ff16156100cd575460081c60ff1690565b80737109709ecfa91a80626ff3989d68f67f5b1dd12d803b6100ee57505090565b90915060405160209180838301526519985a5b195960d21b604083015260408252606082019167ffffffffffffffff92818110848211176101f65791828692936040526080840190630667f9d760e41b8252845187855b8281106101de5750509061016f60248787989488950185608482015203600481018452018261007c565b51925af1503d156101d6573d9081116101c25760405190610199601f8201601f191684018361007c565b81523d838383013e5b81818051810103126101be570151908115158203610054575090565b8280fd5b634e487b7160e01b83526041600452602483fd5b5060606101a2565b808801808301516084909101528a9650899101610145565b634e487b7160e01b86526041600452602486fdfea2646970667358221220e8b22d16e514098eeea03e40322d4f33f38fd65fcc44539a8d596c298cf857b564736f6c63430008110033", "sourceMap": "715:15435:2:-:0;;;;;;;1594:4;715:15435;;1594:4;715:15435;;;1594:4;715:15435;;;;;;;;;;;", "linkReferences": {} }, "deployedBytecode": { "object": "0x6080604052600436101561001257600080fd5b6000803560e01c8063ba414fa6146100575763fa7626d41461003357600080fd5b3461005457806003193601126100545760ff60209154166040519015158152f35b80fd5b503461005457806003193601126100545760206100726100b4565b6040519015158152f35b90601f8019910116810190811067ffffffffffffffff82111761009e57604052565b634e487b7160e01b600052604160045260246000fd5b6000805460081c60ff16156100cd575460081c60ff1690565b80737109709ecfa91a80626ff3989d68f67f5b1dd12d803b6100ee57505090565b90915060405160209180838301526519985a5b195960d21b604083015260408252606082019167ffffffffffffffff92818110848211176101f65791828692936040526080840190630667f9d760e41b8252845187855b8281106101de5750509061016f60248787989488950185608482015203600481018452018261007c565b51925af1503d156101d6573d9081116101c25760405190610199601f8201601f191684018361007c565b81523d838383013e5b81818051810103126101be570151908115158203610054575090565b8280fd5b634e487b7160e01b83526041600452602483fd5b5060606101a2565b808801808301516084909101528a9650899101610145565b634e487b7160e01b86526041600452602486fdfea2646970667358221220e8b22d16e514098eeea03e40322d4f33f38fd65fcc44539a8d596c298cf857b564736f6c63430008110033", "sourceMap": "715:15435:2:-:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;1671:64;;;;;;;;;;;;;;;;;;;;;:::o;:::-;;;;;;;;;;;;1819:584;1873:7;715:15435;;;;;;;;;;;;;;;1896:14::o;1869:528::-;1941:25;2939:104;;;1980:374;;2367:19;;;:::o;1980:374::-;715:15435;;;;;2196:43;;;;;;1671:64;;;;715:15435;1671:64;;;715:15435;2196:43;;715:15435;1671:64;;;;;;;;;;;;;;;;;;;715:15435;1671:64;2086:175;;;1671:64;;;;;;;;;;;;;;;;;;;2086:175;1671:64;;;;;;;;;;;;;2086:175;;;;;;;;;:::i;:::-;2047:232;;;;-1:-1:-1;1671:64:2;;;;;;;;;;715:15435;;;1671:64;;;;-1:-1:-1;;1671:64:2;;;715:15435;1671:64;:::i;:::-;;;;;;;;;;;;;;2312:27;;1671:64;;;;2312:27;1671:64;715:15435;;;;1671:64;;;;2297:42;2367:19;:::o;1671:64::-;715:15435;;;1671:64;-1:-1:-1;;;1671:64:2;;;2086:175;1671:64;;;;;;715:15435;1671:64;;;;;;;;;;;;;;;;;-1:-1:-1;1671:64:2;;;;;;-1:-1:-1;;;1671:64:2;;;;;;;", "linkReferences": {} }, "methodIdentifiers": { "IS_TEST()": "fa7626d4", "failed()": "ba414fa6" }, "rawMetadata": "{\"compiler\":{\"version\":\"0.8.17+commit.8df45f5f\"},\"language\":\"Solidity\",\"output\":{\"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\"}],\"devdoc\":{\"kind\":\"dev\",\"methods\":{},\"version\":1},\"userdoc\":{\"kind\":\"user\",\"methods\":{},\"version\":1}},\"settings\":{\"compilationTarget\":{\"lib/forge-std/lib/ds-test/src/test.sol\":\"DSTest\"},\"evmVersion\":\"london\",\"libraries\":{},\"metadata\":{\"bytecodeHash\":\"ipfs\"},\"optimizer\":{\"enabled\":true,\"runs\":200},\"remappings\":[\":@ensdomains/=node_modules/@ensdomains/\",\":@openzeppelin/=node_modules/@openzeppelin/\",\":ds-test/=lib/forge-std/lib/ds-test/src/\",\":eth-gas-reporter/=node_modules/eth-gas-reporter/\",\":forge-std/=lib/forge-std/src/\",\":hardhat-deploy/=node_modules/hardhat-deploy/\",\":hardhat/=node_modules/hardhat/\"],\"viaIR\":true},\"sources\":{\"lib/forge-std/lib/ds-test/src/test.sol\":{\"keccak256\":\"0xb39cd1d5220cb474947b131e15a4538334b7e886af244b440ae5c9c6bba96a54\",\"license\":\"GPL-3.0-or-later\",\"urls\":[\"bzz-raw://3101520221449ac0070bda3881311a71d9aa87e5210765e875246922cb5cb5f5\",\"dweb:/ipfs/Qmbg6kAHNoG7ox9N9Xqd9Ere2H2XixMFWFqvyPwFCzB3Gr\"]}},\"version\":1}", "metadata": { "compiler": { "version": "0.8.17+commit.8df45f5f" }, "language": "Solidity", "output": { "abi": [ { "inputs": [ { "internalType": "string", "name": "", "type": "string", "indexed": false } ], "type": "event", "name": "log", "anonymous": false }, { "inputs": [ { "internalType": "address", "name": "", "type": "address", "indexed": false } ], "type": "event", "name": "log_address", "anonymous": false }, { "inputs": [ { "internalType": "bytes", "name": "", "type": "bytes", "indexed": false } ], "type": "event", "name": "log_bytes", "anonymous": false }, { "inputs": [ { "internalType": "bytes32", "name": "", "type": "bytes32", "indexed": false } ], "type": "event", "name": "log_bytes32", "anonymous": false }, { "inputs": [ { "internalType": "int256", "name": "", "type": "int256", "indexed": false } ], "type": "event", "name": "log_int", "anonymous": false }, { "inputs": [ { "internalType": "string", "name": "key", "type": "string", "indexed": false }, { "internalType": "address", "name": "val", "type": "address", "indexed": false } ], "type": "event", "name": "log_named_address", "anonymous": false }, { "inputs": [ { "internalType": "string", "name": "key", "type": "string", "indexed": false }, { "internalType": "bytes", "name": "val", "type": "bytes", "indexed": false } ], "type": "event", "name": "log_named_bytes", "anonymous": false }, { "inputs": [ { "internalType": "string", "name": "key", "type": "string", "indexed": false }, { "internalType": "bytes32", "name": "val", "type": "bytes32", "indexed": false } ], "type": "event", "name": "log_named_bytes32", "anonymous": false }, { "inputs": [ { "internalType": "string", "name": "key", "type": "string", "indexed": false }, { "internalType": "int256", "name": "val", "type": "int256", "indexed": false }, { "internalType": "uint256", "name": "decimals", "type": "uint256", "indexed": false } ], "type": "event", "name": "log_named_decimal_int", "anonymous": false }, { "inputs": [ { "internalType": "string", "name": "key", "type": "string", "indexed": false }, { "internalType": "uint256", "name": "val", "type": "uint256", "indexed": false }, { "internalType": "uint256", "name": "decimals", "type": "uint256", "indexed": false } ], "type": "event", "name": "log_named_decimal_uint", "anonymous": false }, { "inputs": [ { "internalType": "string", "name": "key", "type": "string", "indexed": false }, { "internalType": "int256", "name": "val", "type": "int256", "indexed": false } ], "type": "event", "name": "log_named_int", "anonymous": false }, { "inputs": [ { "internalType": "string", "name": "key", "type": "string", "indexed": false }, { "internalType": "string", "name": "val", "type": "string", "indexed": false } ], "type": "event", "name": "log_named_string", "anonymous": false }, { "inputs": [ { "internalType": "string", "name": "key", "type": "string", "indexed": false }, { "internalType": "uint256", "name": "val", "type": "uint256", "indexed": false } ], "type": "event", "name": "log_named_uint", "anonymous": false }, { "inputs": [ { "internalType": "string", "name": "", "type": "string", "indexed": false } ], "type": "event", "name": "log_string", "anonymous": false }, { "inputs": [ { "internalType": "uint256", "name": "", "type": "uint256", "indexed": false } ], "type": "event", "name": "log_uint", "anonymous": false }, { "inputs": [ { "internalType": "bytes", "name": "", "type": "bytes", "indexed": false } ], "type": "event", "name": "logs", "anonymous": false }, { "inputs": [], "stateMutability": "view", "type": "function", "name": "IS_TEST", "outputs": [ { "internalType": "bool", "name": "", "type": "bool" } ] }, { "inputs": [], "stateMutability": "nonpayable", "type": "function", "name": "failed", "outputs": [ { "internalType": "bool", "name": "", "type": "bool" } ] } ], "devdoc": { "kind": "dev", "methods": {}, "version": 1 }, "userdoc": { "kind": "user", "methods": {}, "version": 1 } }, "settings": { "remappings": [ ":@ensdomains/=node_modules/@ensdomains/", ":@openzeppelin/=node_modules/@openzeppelin/", ":ds-test/=lib/forge-std/lib/ds-test/src/", ":eth-gas-reporter/=node_modules/eth-gas-reporter/", ":forge-std/=lib/forge-std/src/", ":hardhat-deploy/=node_modules/hardhat-deploy/", ":hardhat/=node_modules/hardhat/" ], "optimizer": { "enabled": true, "runs": 200 }, "metadata": { "bytecodeHash": "ipfs" }, "compilationTarget": { "lib/forge-std/lib/ds-test/src/test.sol": "DSTest" }, "libraries": {}, "viaIR": true }, "sources": { "lib/forge-std/lib/ds-test/src/test.sol": { "keccak256": "0xb39cd1d5220cb474947b131e15a4538334b7e886af244b440ae5c9c6bba96a54", "urls": [ "bzz-raw://3101520221449ac0070bda3881311a71d9aa87e5210765e875246922cb5cb5f5", "dweb:/ipfs/Qmbg6kAHNoG7ox9N9Xqd9Ere2H2XixMFWFqvyPwFCzB3Gr" ], "license": "GPL-3.0-or-later" } }, "version": 1 }, "ast": { "absolutePath": "lib/forge-std/lib/ds-test/src/test.sol", "id": 2513, "exportedSymbols": { "DSTest": [ 2512 ] }, "nodeType": "SourceUnit", "src": "689:15462:2", "nodes": [ { "id": 727, "nodeType": "PragmaDirective", "src": "689:24:2", "nodes": [], "literals": [ "solidity", ">=", "0.5", ".0" ] }, { "id": 2512, "nodeType": "ContractDefinition", "src": "715:15435:2", "nodes": [ { "id": 731, "nodeType": "EventDefinition", "src": "737:38:2", "nodes": [], "anonymous": false, "eventSelector": "41304facd9323d75b11bcdd609cb38effffdb05710f7caf0e9b16c6d9d709f50", "name": "log", "nameLocation": "743:3:2", "parameters": { "id": 730, "nodeType": "ParameterList", "parameters": [ { "constant": false, "id": 729, "indexed": false, "mutability": "mutable", "name": "", "nameLocation": "-1:-1:-1", "nodeType": "VariableDeclaration", "scope": 731, "src": "767:6:2", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { "typeIdentifier": "t_string_memory_ptr", "typeString": "string" }, "typeName": { "id": 728, "name": "string", "nodeType": "ElementaryTypeName", "src": "767:6:2", "typeDescriptions": { "typeIdentifier": "t_string_storage_ptr", "typeString": "string" } }, "visibility": "internal" } ], "src": "766:8:2" } }, { "id": 735, "nodeType": "EventDefinition", "src": "780:37:2", "nodes": [], "anonymous": false, "eventSelector": "e7950ede0394b9f2ce4a5a1bf5a7e1852411f7e6661b4308c913c4bfd11027e4", "name": "logs", "nameLocation": "786:4:2", "parameters": { "id": 734, "nodeType": "ParameterList", "parameters": [ { "constant": false, "id": 733, "indexed": false, "mutability": "mutable", "name": "", "nameLocation": "-1:-1:-1", "nodeType": "VariableDeclaration", "scope": 735, "src": "810:5:2", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { "typeIdentifier": "t_bytes_memory_ptr", "typeString": "bytes" }, "typeName": { "id": 732, "name": "bytes", "nodeType": "ElementaryTypeName", "src": "810:5:2", "typeDescriptions": { "typeIdentifier": "t_bytes_storage_ptr", "typeString": "bytes" } }, "visibility": "internal" } ], "src": "809:7:2" } }, { "id": 739, "nodeType": "EventDefinition", "src": "823:39:2", "nodes": [], "anonymous": false, "eventSelector": "7ae74c527414ae135fd97047b12921a5ec3911b804197855d67e25c7b75ee6f3", "name": "log_address", "nameLocation": "829:11:2", "parameters": { "id": 738, "nodeType": "ParameterList", "parameters": [ { "constant": false, "id": 737, "indexed": false, "mutability": "mutable", "name": "", "nameLocation": "-1:-1:-1", "nodeType": "VariableDeclaration", "scope": 739, "src": "853:7:2", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" }, "typeName": { "id": 736, "name": "address", "nodeType": "ElementaryTypeName", "src": "853:7:2", "stateMutability": "nonpayable", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" } }, "visibility": "internal" } ], "src": "852:9:2" } }, { "id": 743, "nodeType": "EventDefinition", "src": "867:39:2", "nodes": [], "anonymous": false, "eventSelector": "e81699b85113eea1c73e10588b2b035e55893369632173afd43feb192fac64e3", "name": "log_bytes32", "nameLocation": "873:11:2", "parameters": { "id": 742, "nodeType": "ParameterList", "parameters": [ { "constant": false, "id": 741, "indexed": false, "mutability": "mutable", "name": "", "nameLocation": "-1:-1:-1", "nodeType": "VariableDeclaration", "scope": 743, "src": "897:7:2", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" }, "typeName": { "id": 740, "name": "bytes32", "nodeType": "ElementaryTypeName", "src": "897:7:2", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" } }, "visibility": "internal" } ], "src": "896:9:2" } }, { "id": 747, "nodeType": "EventDefinition", "src": "911:35:2", "nodes": [], "anonymous": false, "eventSelector": "0eb5d52624c8d28ada9fc55a8c502ed5aa3fbe2fb6e91b71b5f376882b1d2fb8", "name": "log_int", "nameLocation": "917:7:2", "parameters": { "id": 746, "nodeType": "ParameterList", "parameters": [ { "constant": false, "id": 745, "indexed": false, "mutability": "mutable", "name": "", "nameLocation": "-1:-1:-1", "nodeType": "VariableDeclaration", "scope": 747, "src": "941:3:2", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { "typeIdentifier": "t_int256", "typeString": "int256" }, "typeName": { "id": 744, "name": "int", "nodeType": "ElementaryTypeName", "src": "941:3:2", "typeDescriptions": { "typeIdentifier": "t_int256", "typeString": "int256" } }, "visibility": "internal" } ], "src": "940:5:2" } }, { "id": 751, "nodeType": "EventDefinition", "src": "951:36:2", "nodes": [], "anonymous": false, "eventSelector": "2cab9790510fd8bdfbd2115288db33fec66691d476efc5427cfd4c0969301755", "name": "log_uint", "nameLocation": "957:8:2", "parameters": { "id": 750, "nodeType": "ParameterList", "parameters": [ { "constant": false, "id": 749, "indexed": false, "mutability": "mutable", "name": "", "nameLocation": "-1:-1:-1", "nodeType": "VariableDeclaration", "scope": 751, "src": "981:4:2", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" }, "typeName": { "id": 748, "name": "uint", "nodeType": "ElementaryTypeName", "src": "981:4:2", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, "visibility": "internal" } ], "src": "980:6:2" } }, { "id": 755, "nodeType": "EventDefinition", "src": "992:37:2", "nodes": [], "anonymous": false, "eventSelector": "23b62ad0584d24a75f0bf3560391ef5659ec6db1269c56e11aa241d637f19b20", "name": "log_bytes", "nameLocation": "998:9:2", "parameters": { "id": 754, "nodeType": "ParameterList", "parameters": [ { "constant": false, "id": 753, "indexed": false, "mutability": "mutable", "name": "", "nameLocation": "-1:-1:-1", "nodeType": "VariableDeclaration", "scope": 755, "src": "1022:5:2", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { "typeIdentifier": "t_bytes_memory_ptr", "typeString": "bytes" }, "typeName": { "id": 752, "name": "bytes", "nodeType": "ElementaryTypeName", "src": "1022:5:2", "typeDescriptions": { "typeIdentifier": "t_bytes_storage_ptr", "typeString": "bytes" } }, "visibility": "internal" } ], "src": "1021:7:2" } }, { "id": 759, "nodeType": "EventDefinition", "src": "1034:38:2", "nodes": [], "anonymous": false, "eventSelector": "0b2e13ff20ac7b474198655583edf70dedd2c1dc980e329c4fbb2fc0748b796b", "name": "log_string", "nameLocation": "1040:10:2", "parameters": { "id": 758, "nodeType": "ParameterList", "parameters": [ { "constant": false, "id": 757, "indexed": false, "mutability": "mutable", "name": "", "nameLocation": "-1:-1:-1", "nodeType": "VariableDeclaration", "scope": 759, "src": "1064:6:2", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { "typeIdentifier": "t_string_memory_ptr", "typeString": "string" }, "typeName": { "id": 756, "name": "string", "nodeType": "ElementaryTypeName", "src": "1064:6:2", "typeDescriptions": { "typeIdentifier": "t_string_storage_ptr", "typeString": "string" } }, "visibility": "internal" } ], "src": "1063:8:2" } }, { "id": 765, "nodeType": "EventDefinition", "src": "1078:55:2", "nodes": [], "anonymous": false, "eventSelector": "9c4e8541ca8f0dc1c413f9108f66d82d3cecb1bddbce437a61caa3175c4cc96f", "name": "log_named_address", "nameLocation": "1084:17:2", "parameters": { "id": 764, "nodeType": "ParameterList", "parameters": [ { "constant": false, "id": 761, "indexed": false, "mutability": "mutable", "name": "key", "nameLocation": "1115:3:2", "nodeType": "VariableDeclaration", "scope": 765, "src": "1108:10:2", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { "typeIdentifier": "t_string_memory_ptr", "typeString": "string" }, "typeName": { "id": 760, "name": "string", "nodeType": "ElementaryTypeName", "src": "1108:6:2", "typeDescriptions": { "typeIdentifier": "t_string_storage_ptr", "typeString": "string" } }, "visibility": "internal" }, { "constant": false, "id": 763, "indexed": false, "mutability": "mutable", "name": "val", "nameLocation": "1128:3:2", "nodeType": "VariableDeclaration", "scope": 765, "src": "1120:11:2", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" }, "typeName": { "id": 762, "name": "address", "nodeType": "ElementaryTypeName", "src": "1120:7:2", "stateMutability": "nonpayable", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" } }, "visibility": "internal" } ], "src": "1107:25:2" } }, { "id": 771, "nodeType": "EventDefinition", "src": "1138:55:2", "nodes": [], "anonymous": false, "eventSelector": "afb795c9c61e4fe7468c386f925d7a5429ecad9c0495ddb8d38d690614d32f99", "name": "log_named_bytes32", "nameLocation": "1144:17:2", "parameters": { "id": 770, "nodeType": "ParameterList", "parameters": [ { "constant": false, "id": 767, "indexed": false, "mutability": "mutable", "name": "key", "nameLocation": "1175:3:2", "nodeType": "VariableDeclaration", "scope": 771, "src": "1168:10:2", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { "typeIdentifier": "t_string_memory_ptr", "typeString": "string" }, "typeName": { "id": 766, "name": "string", "nodeType": "ElementaryTypeName", "src": "1168:6:2", "typeDescriptions": { "typeIdentifier": "t_string_storage_ptr", "typeString": "string" } }, "visibility": "internal" }, { "constant": false, "id": 769, "indexed": false, "mutability": "mutable", "name": "val", "nameLocation": "1188:3:2", "nodeType": "VariableDeclaration", "scope": 771, "src": "1180:11:2", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" }, "typeName": { "id": 768, "name": "bytes32", "nodeType": "ElementaryTypeName", "src": "1180:7:2", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" } }, "visibility": "internal" } ], "src": "1167:25:2" } }, { "id": 779, "nodeType": "EventDefinition", "src": "1198:66:2", "nodes": [], "anonymous": false, "eventSelector": "5da6ce9d51151ba10c09a559ef24d520b9dac5c5b8810ae8434e4d0d86411a95", "name": "log_named_decimal_int", "nameLocation": "1204:21:2", "parameters": { "id": 778, "nodeType": "ParameterList", "parameters": [ { "constant": false, "id": 773, "indexed": false, "mutability": "mutable", "name": "key", "nameLocation": "1235:3:2", "nodeType": "VariableDeclaration", "scope": 779, "src": "1228:10:2", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { "typeIdentifier": "t_string_memory_ptr", "typeString": "string" }, "typeName": { "id": 772, "name": "string", "nodeType": "ElementaryTypeName", "src": "1228:6:2", "typeDescriptions": { "typeIdentifier": "t_string_storage_ptr", "typeString": "string" } }, "visibility": "internal" }, { "constant": false, "id": 775, "indexed": false, "mutability": "mutable", "name": "val", "nameLocation": "1244:3:2", "nodeType": "VariableDeclaration", "scope": 779, "src": "1240:7:2", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { "typeIdentifier": "t_int256", "typeString": "int256" }, "typeName": { "id": 774, "name": "int", "nodeType": "ElementaryTypeName", "src": "1240:3:2", "typeDescriptions": { "typeIdentifier": "t_int256", "typeString": "int256" } }, "visibility": "internal" }, { "constant": false, "id": 777, "indexed": false, "mutability": "mutable", "name": "decimals", "nameLocation": "1254:8:2", "nodeType": "VariableDeclaration", "scope": 779, "src": "1249:13:2", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" }, "typeName": { "id": 776, "name": "uint", "nodeType": "ElementaryTypeName", "src": "1249:4:2", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, "visibility": "internal" } ], "src": "1227:36:2" } }, { "id": 787, "nodeType": "EventDefinition", "src": "1269:67:2", "nodes": [], "anonymous": false, "eventSelector": "eb8ba43ced7537421946bd43e828b8b2b8428927aa8f801c13d934bf11aca57b", "name": "log_named_decimal_uint", "nameLocation": "1275:22:2", "parameters": { "id": 786, "nodeType": "ParameterList", "parameters": [ { "constant": false, "id": 781, "indexed": false, "mutability": "mutable", "name": "key", "nameLocation": "1306:3:2", "nodeType": "VariableDeclaration", "scope": 787, "src": "1299:10:2", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { "typeIdentifier": "t_string_memory_ptr", "typeString": "string" }, "typeName": { "id": 780, "name": "string", "nodeType": "ElementaryTypeName", "src": "1299:6:2", "typeDescriptions": { "typeIdentifier": "t_string_storage_ptr", "typeString": "string" } }, "visibility": "internal" }, { "constant": false, "id": 783, "indexed": false, "mutability": "mutable", "name": "val", "nameLocation": "1316:3:2", "nodeType": "VariableDeclaration", "scope": 787, "src": "1311:8:2", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" }, "typeName": { "id": 782, "name": "uint", "nodeType": "ElementaryTypeName", "src": "1311:4:2", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, "visibility": "internal" }, { "constant": false, "id": 785, "indexed": false, "mutability": "mutable", "name": "decimals", "nameLocation": "1326:8:2", "nodeType": "VariableDeclaration", "scope": 787, "src": "1321:13:2", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" }, "typeName": { "id": 784, "name": "uint", "nodeType": "ElementaryTypeName", "src": "1321:4:2", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, "visibility": "internal" } ], "src": "1298:37:2" } }, { "id": 793, "nodeType": "EventDefinition", "src": "1341:51:2", "nodes": [], "anonymous": false, "eventSelector": "2fe632779174374378442a8e978bccfbdcc1d6b2b0d81f7e8eb776ab2286f168", "name": "log_named_int", "nameLocation": "1347:13:2", "parameters": { "id": 792, "nodeType": "ParameterList", "parameters": [ { "constant": false, "id": 789, "indexed": false, "mutability": "mutable", "name": "key", "nameLocation": "1378:3:2", "nodeType": "VariableDeclaration", "scope": 793, "src": "1371:10:2", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { "typeIdentifier": "t_string_memory_ptr", "typeString": "string" }, "typeName": { "id": 788, "name": "string", "nodeType": "ElementaryTypeName", "src": "1371:6:2", "typeDescriptions": { "typeIdentifier": "t_string_storage_ptr", "typeString": "string" } }, "visibility": "internal" }, { "constant": false, "id": 791, "indexed": false, "mutability": "mutable", "name": "val", "nameLocation": "1387:3:2", "nodeType": "VariableDeclaration", "scope": 793, "src": "1383:7:2", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { "typeIdentifier": "t_int256", "typeString": "int256" }, "typeName": { "id": 790, "name": "int", "nodeType": "ElementaryTypeName", "src": "1383:3:2", "typeDescriptions": { "typeIdentifier": "t_int256", "typeString": "int256" } }, "visibility": "internal" } ], "src": "1370:21:2" } }, { "id": 799, "nodeType": "EventDefinition", "src": "1397:52:2", "nodes": [], "anonymous": false, "eventSelector": "b2de2fbe801a0df6c0cbddfd448ba3c41d48a040ca35c56c8196ef0fcae721a8", "name": "log_named_uint", "nameLocation": "1403:14:2", "parameters": { "id": 798, "nodeType": "ParameterList", "parameters": [ { "constant": false, "id": 795, "indexed": false, "mutability": "mutable", "name": "key", "nameLocation": "1434:3:2", "nodeType": "VariableDeclaration", "scope": 799, "src": "1427:10:2", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { "typeIdentifier": "t_string_memory_ptr", "typeString": "string" }, "typeName": { "id": 794, "name": "string", "nodeType": "ElementaryTypeName", "src": "1427:6:2", "typeDescriptions": { "typeIdentifier": "t_string_storage_ptr", "typeString": "string" } }, "visibility": "internal" }, { "constant": false, "id": 797, "indexed": false, "mutability": "mutable", "name": "val", "nameLocation": "1444:3:2", "nodeType": "VariableDeclaration", "scope": 799, "src": "1439:8:2", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" }, "typeName": { "id": 796, "name": "uint", "nodeType": "ElementaryTypeName", "src": "1439:4:2", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, "visibility": "internal" } ], "src": "1426:22:2" } }, { "id": 805, "nodeType": "EventDefinition", "src": "1454:53:2", "nodes": [], "anonymous": false, "eventSelector": "d26e16cad4548705e4c9e2d94f98ee91c289085ee425594fd5635fa2964ccf18", "name": "log_named_bytes", "nameLocation": "1460:15:2", "parameters": { "id": 804, "nodeType": "ParameterList", "parameters": [ { "constant": false, "id": 801, "indexed": false, "mutability": "mutable", "name": "key", "nameLocation": "1491:3:2", "nodeType": "VariableDeclaration", "scope": 805, "src": "1484:10:2", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { "typeIdentifier": "t_string_memory_ptr", "typeString": "string" }, "typeName": { "id": 800, "name": "string", "nodeType": "ElementaryTypeName", "src": "1484:6:2", "typeDescriptions": { "typeIdentifier": "t_string_storage_ptr", "typeString": "string" } }, "visibility": "internal" }, { "constant": false, "id": 803, "indexed": false, "mutability": "mutable", "name": "val", "nameLocation": "1502:3:2", "nodeType": "VariableDeclaration", "scope": 805, "src": "1496:9:2", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { "typeIdentifier": "t_bytes_memory_ptr", "typeString": "bytes" }, "typeName": { "id": 802, "name": "bytes", "nodeType": "ElementaryTypeName", "src": "1496:5:2", "typeDescriptions": { "typeIdentifier": "t_bytes_storage_ptr", "typeString": "bytes" } }, "visibility": "internal" } ], "src": "1483:23:2" } }, { "id": 811, "nodeType": "EventDefinition", "src": "1512:54:2", "nodes": [], "anonymous": false, "eventSelector": "280f4446b28a1372417dda658d30b95b2992b12ac9c7f378535f29a97acf3583", "name": "log_named_string", "nameLocation": "1518:16:2", "parameters": { "id": 810, "nodeType": "ParameterList", "parameters": [ { "constant": false, "id": 807, "indexed": false, "mutability": "mutable", "name": "key", "nameLocation": "1549:3:2", "nodeType": "VariableDeclaration", "scope": 811, "src": "1542:10:2", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { "typeIdentifier": "t_string_memory_ptr", "typeString": "string" }, "typeName": { "id": 806, "name": "string", "nodeType": "ElementaryTypeName", "src": "1542:6:2", "typeDescriptions": { "typeIdentifier": "t_string_storage_ptr", "typeString": "string" } }, "visibility": "internal" }, { "constant": false, "id": 809, "indexed": false, "mutability": "mutable", "name": "val", "nameLocation": "1561:3:2", "nodeType": "VariableDeclaration", "scope": 811, "src": "1554:10:2", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { "typeIdentifier": "t_string_memory_ptr", "typeString": "string" }, "typeName": { "id": 808, "name": "string", "nodeType": "ElementaryTypeName", "src": "1554:6:2", "typeDescriptions": { "typeIdentifier": "t_string_storage_ptr", "typeString": "string" } }, "visibility": "internal" } ], "src": "1541:24:2" } }, { "id": 814, "nodeType": "VariableDeclaration", "src": "1572:26:2", "nodes": [], "constant": false, "functionSelector": "fa7626d4", "mutability": "mutable", "name": "IS_TEST", "nameLocation": "1584:7:2", "scope": 2512, "stateVariable": true, "storageLocation": "default", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" }, "typeName": { "id": 812, "name": "bool", "nodeType": "ElementaryTypeName", "src": "1572:4:2", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, "value": { "hexValue": "74727565", "id": 813, "isConstant": false, "isLValue": false, "isPure": true, "kind": "bool", "lValueRequested": false, "nodeType": "Literal", "src": "1594:4:2", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" }, "value": "true" }, "visibility": "public" }, { "id": 816, "nodeType": "VariableDeclaration", "src": "1604:20:2", "nodes": [], "constant": false, "mutability": "mutable", "name": "_failed", "nameLocation": "1617:7:2", "scope": 2512, "stateVariable": true, "storageLocation": "default", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" }, "typeName": { "id": 815, "name": "bool", "nodeType": "ElementaryTypeName", "src": "1604:4:2", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, "visibility": "private" }, { "id": 833, "nodeType": "VariableDeclaration", "src": "1631:104:2", "nodes": [], "constant": true, "mutability": "constant", "name": "HEVM_ADDRESS", "nameLocation": "1648:12:2", "scope": 2512, "stateVariable": true, "storageLocation": "default", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" }, "typeName": { "id": 817, "name": "address", "nodeType": "ElementaryTypeName", "src": "1631:7:2", "stateMutability": "nonpayable", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" } }, "value": { "arguments": [ { "arguments": [ { "arguments": [ { "arguments": [ { "arguments": [ { "hexValue": "6865766d20636865617420636f6465", "id": 827, "isConstant": false, "isLValue": false, "isPure": true, "kind": "string", "lValueRequested": false, "nodeType": "Literal", "src": "1713:17:2", "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": 826, "name": "keccak256", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": -8, "src": "1703:9:2", "typeDescriptions": { "typeIdentifier": "t_function_keccak256_pure$_t_bytes_memory_ptr_$returns$_t_bytes32_$", "typeString": "function (bytes memory) pure returns (bytes32)" } }, "id": 828, "isConstant": false, "isLValue": false, "isPure": true, "kind": "functionCall", "lValueRequested": false, "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "1703:28:2", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" } } ], "expression": { "argumentTypes": [ { "typeIdentifier": "t_bytes32", "typeString": "bytes32" } ], "id": 825, "isConstant": false, "isLValue": false, "isPure": true, "lValueRequested": false, "nodeType": "ElementaryTypeNameExpression", "src": "1695:7:2", "typeDescriptions": { "typeIdentifier": "t_type$_t_uint256_$", "typeString": "type(uint256)" }, "typeName": { "id": 824, "name": "uint256", "nodeType": "ElementaryTypeName", "src": "1695:7:2", "typeDescriptions": {} } }, "id": 829, "isConstant": false, "isLValue": false, "isPure": true, "kind": "typeConversion", "lValueRequested": false, "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "1695:37:2", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } } ], "expression": { "argumentTypes": [ { "typeIdentifier": "t_uint256", "typeString": "uint256" } ], "id": 823, "isConstant": false, "isLValue": false, "isPure": true, "lValueRequested": false, "nodeType": "ElementaryTypeNameExpression", "src": "1687:7:2", "typeDescriptions": { "typeIdentifier": "t_type$_t_uint160_$", "typeString": "type(uint160)" }, "typeName": { "id": 822, "name": "uint160", "nodeType": "ElementaryTypeName", "src": "1687:7:2", "typeDescriptions": {} } }, "id": 830, "isConstant": false, "isLValue": false, "isPure": true, "kind": "typeConversion", "lValueRequested": false, "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "1687:46:2", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_uint160", "typeString": "uint160" } } ], "expression": { "argumentTypes": [ { "typeIdentifier": "t_uint160", "typeString": "uint160" } ], "id": 821, "isConstant": false, "isLValue": false, "isPure": true, "lValueRequested": false, "nodeType": "ElementaryTypeNameExpression", "src": "1679:7:2", "typeDescriptions": { "typeIdentifier": "t_type$_t_bytes20_$", "typeString": "type(bytes20)" }, "typeName": { "id": 820, "name": "bytes20", "nodeType": "ElementaryTypeName", "src": "1679:7:2", "typeDescriptions": {} } }, "id": 831, "isConstant": false, "isLValue": false, "isPure": true, "kind": "typeConversion", "lValueRequested": false, "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "1679:55:2", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_bytes20", "typeString": "bytes20" } } ], "expression": { "argumentTypes": [ { "typeIdentifier": "t_bytes20", "typeString": "bytes20" } ], "id": 819, "isConstant": false, "isLValue": false, "isPure": true, "lValueRequested": false, "nodeType": "ElementaryTypeNameExpression", "src": "1671:7:2", "typeDescriptions": { "typeIdentifier": "t_type$_t_address_$", "typeString": "type(address)" }, "typeName": { "id": 818, "name": "address", "nodeType": "ElementaryTypeName", "src": "1671:7:2", "typeDescriptions": {} } }, "id": 832, "isConstant": false, "isLValue": false, "isPure": true, "kind": "typeConversion", "lValueRequested": false, "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "1671:64:2", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" } }, "visibility": "internal" }, { "id": 837, "nodeType": "ModifierDefinition", "src": "1742:27:2", "nodes": [], "body": { "id": 836, "nodeType": "Block", "src": "1763:6:2", "nodes": [], "statements": [ { "id": 835, "nodeType": "PlaceholderStatement", "src": "1765:1:2" } ] }, "name": "mayRevert", "nameLocation": "1751:9:2", "parameters": { "id": 834, "nodeType": "ParameterList", "parameters": [], "src": "1760:2:2" }, "virtual": false, "visibility": "internal" }, { "id": 843, "nodeType": "ModifierDefinition", "src": "1774:39:2", "nodes": [], "body": { "id": 842, "nodeType": "Block", "src": "1807:6:2", "nodes": [], "statements": [ { "id": 841, "nodeType": "PlaceholderStatement", "src": "1809:1:2" } ] }, "name": "testopts", "nameLocation": "1783:8:2", "parameters": { "id": 840, "nodeType": "ParameterList", "parameters": [ { "constant": false, "id": 839, "mutability": "mutable", "name": "", "nameLocation": "-1:-1:-1", "nodeType": "VariableDeclaration", "scope": 843, "src": "1792:13:2", "stateVariable": false, "storageLocation": "memory", "typeDescriptions": { "typeIdentifier": "t_string_memory_ptr", "typeString": "string" }, "typeName": { "id": 838, "name": "string", "nodeType": "ElementaryTypeName", "src": "1792:6:2", "typeDescriptions": { "typeIdentifier": "t_string_storage_ptr", "typeString": "string" } }, "visibility": "internal" } ], "src": "1791:15:2" }, "virtual": false, "visibility": "internal" }, { "id": 898, "nodeType": "FunctionDefinition", "src": "1819:584:2", "nodes": [], "body": { "id": 897, "nodeType": "Block", "src": "1859:544:2", "nodes": [], "statements": [ { "condition": { "id": 848, "name": "_failed", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 816, "src": "1873:7:2", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, "falseBody": { "id": 895, "nodeType": "Block", "src": "1927:470:2", "statements": [ { "assignments": [ 853 ], "declarations": [ { "constant": false, "id": 853, "mutability": "mutable", "name": "globalFailed", "nameLocation": "1946:12:2", "nodeType": "VariableDeclaration", "scope": 895, "src": "1941:17:2", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" }, "typeName": { "id": 852, "name": "bool", "nodeType": "ElementaryTypeName", "src": "1941:4:2", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, "visibility": "internal" } ], "id": 855, "initialValue": { "hexValue": "66616c7365", "id": 854, "isConstant": false, "isLValue": false, "isPure": true, "kind": "bool", "lValueRequested": false, "nodeType": "Literal", "src": "1961:5:2", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" }, "value": "false" }, "nodeType": "VariableDeclarationStatement", "src": "1941:25:2" }, { "condition": { "arguments": [], "expression": { "argumentTypes": [], "id": 856, "name": "hasHEVMContext", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 957, "src": "1984:14:2", "typeDescriptions": { "typeIdentifier": "t_function_internal_view$__$returns$_t_bool_$", "typeString": "function () view returns (bool)" } }, "id": 857, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "1984:16:2", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, "id": 892, "nodeType": "IfStatement", "src": "1980:374:2", "trueBody": { "id": 891, "nodeType": "Block", "src": "2002:352:2", "statements": [ { "assignments": [ null, 859 ], "declarations": [ null, { "constant": false, "id": 859, "mutability": "mutable", "name": "retdata", "nameLocation": "2036:7:2", "nodeType": "VariableDeclaration", "scope": 891, "src": "2023:20:2", "stateVariable": false, "storageLocation": "memory", "typeDescriptions": { "typeIdentifier": "t_bytes_memory_ptr", "typeString": "bytes" }, "typeName": { "id": 858, "name": "bytes", "nodeType": "ElementaryTypeName", "src": "2023:5:2", "typeDescriptions": { "typeIdentifier": "t_bytes_storage_ptr", "typeString": "bytes" } }, "visibility": "internal" } ], "id": 880, "initialValue": { "arguments": [ { "arguments": [ { "arguments": [ { "arguments": [ { "hexValue": "6c6f616428616464726573732c6279746573333229", "id": 867, "isConstant": false, "isLValue": false, "isPure": true, "kind": "string", "lValueRequested": false, "nodeType": "Literal", "src": "2145:23:2", "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": 866, "name": "keccak256", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": -8, "src": "2135:9:2", "typeDescriptions": { "typeIdentifier": "t_function_keccak256_pure$_t_bytes_memory_ptr_$returns$_t_bytes32_$", "typeString": "function (bytes memory) pure returns (bytes32)" } }, "id": 868, "isConstant": false, "isLValue": false, "isPure": true, "kind": "functionCall", "lValueRequested": false, "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "2135:34:2", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" } } ], "expression": { "argumentTypes": [ { "typeIdentifier": "t_bytes32", "typeString": "bytes32" } ], "id": 865, "isConstant": false, "isLValue": false, "isPure": true, "lValueRequested": false, "nodeType": "ElementaryTypeNameExpression", "src": "2128:6:2", "typeDescriptions": { "typeIdentifier": "t_type$_t_bytes4_$", "typeString": "type(bytes4)" }, "typeName": { "id": 864, "name": "bytes4", "nodeType": "ElementaryTypeName", "src": "2128:6:2", "typeDescriptions": {} } }, "id": 869, "isConstant": false, "isLValue": false, "isPure": true, "kind": "typeConversion", "lValueRequested": false, "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "2128:42:2", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_bytes4", "typeString": "bytes4" } }, { "arguments": [ { "id": 872, "name": "HEVM_ADDRESS", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 833, "src": "2207:12:2", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" } }, { "arguments": [ { "hexValue": "6661696c6564", "id": 875, "isConstant": false, "isLValue": false, "isPure": true, "kind": "string", "lValueRequested": false, "nodeType": "Literal", "src": "2229:8:2", "typeDescriptions": { "typeIdentifier": "t_stringliteral_8f44d68b1a26169d304522fa2f95aa938d98120d628d1db5726120ca84e53b43", "typeString": "literal_string \"failed\"" }, "value": "failed" } ], "expression": { "argumentTypes": [ { "typeIdentifier": "t_stringliteral_8f44d68b1a26169d304522fa2f95aa938d98120d628d1db5726120ca84e53b43", "typeString": "literal_string \"failed\"" } ], "id": 874, "isConstant": false, "isLValue": false, "isPure": true, "lValueRequested": false, "nodeType": "ElementaryTypeNameExpression", "src": "2221:7:2", "typeDescriptions": { "typeIdentifier": "t_type$_t_bytes32_$", "typeString": "type(bytes32)" }, "typeName": { "id": 873, "name": "bytes32", "nodeType": "ElementaryTypeName", "src": "2221:7:2", "typeDescriptions": {} } }, "id": 876, "isConstant": false, "isLValue": false, "isPure": true, "kind": "typeConversion", "lValueRequested": false, "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "2221:17:2", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" } } ], "expression": { "argumentTypes": [ { "typeIdentifier": "t_address", "typeString": "address" }, { "typeIdentifier": "t_bytes32", "typeString": "bytes32" } ], "expression": { "id": 870, "name": "abi", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": -1, "src": "2196:3:2", "typeDescriptions": { "typeIdentifier": "t_magic_abi", "typeString": "abi" } }, "id": 871, "isConstant": false, "isLValue": false, "isPure": true, "lValueRequested": false, "memberLocation": "2200:6:2", "memberName": "encode", "nodeType": "MemberAccess", "src": "2196:10:2", "typeDescriptions": { "typeIdentifier": "t_function_abiencode_pure$__$returns$_t_bytes_memory_ptr_$", "typeString": "function () pure returns (bytes memory)" } }, "id": 877, "isConstant": false, "isLValue": false, "isPure": true, "kind": "functionCall", "lValueRequested": false, "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "2196:43:2", "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": 862, "name": "abi", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": -1, "src": "2086:3:2", "typeDescriptions": { "typeIdentifier": "t_magic_abi", "typeString": "abi" } }, "id": 863, "isConstant": false, "isLValue": false, "isPure": true, "lValueRequested": false, "memberLocation": "2090:12:2", "memberName": "encodePacked", "nodeType": "MemberAccess", "src": "2086:16:2", "typeDescriptions": { "typeIdentifier": "t_function_abiencodepacked_pure$__$returns$_t_bytes_memory_ptr_$", "typeString": "function () pure returns (bytes memory)" } }, "id": 878, "isConstant": false, "isLValue": false, "isPure": true, "kind": "functionCall", "lValueRequested": false, "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "2086:175:2", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_bytes_memory_ptr", "typeString": "bytes memory" } } ], "expression": { "argumentTypes": [ { "typeIdentifier": "t_bytes_memory_ptr", "typeString": "bytes memory" } ], "expression": { "id": 860, "name": "HEVM_ADDRESS", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 833, "src": "2047:12:2", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" } }, "id": 861, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "memberLocation": "2060:4:2", "memberName": "call", "nodeType": "MemberAccess", "src": "2047:17:2", "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": 879, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "2047:232:2", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_tuple$_t_bool_$_t_bytes_memory_ptr_$", "typeString": "tuple(bool,bytes memory)" } }, "nodeType": "VariableDeclarationStatement", "src": "2020:259:2" }, { "expression": { "id": 889, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftHandSide": { "id": 881, "name": "globalFailed", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 853, "src": "2297:12:2", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, "nodeType": "Assignment", "operator": "=", "rightHandSide": { "arguments": [ { "id": 884, "name": "retdata", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 859, "src": "2323:7:2", "typeDescriptions": { "typeIdentifier": "t_bytes_memory_ptr", "typeString": "bytes memory" } }, { "components": [ { "id": 886, "isConstant": false, "isLValue": false, "isPure": true, "lValueRequested": false, "nodeType": "ElementaryTypeNameExpression", "src": "2333:4:2", "typeDescriptions": { "typeIdentifier": "t_type$_t_bool_$", "typeString": "type(bool)" }, "typeName": { "id": 885, "name": "bool", "nodeType": "ElementaryTypeName", "src": "2333:4:2", "typeDescriptions": {} } } ], "id": 887, "isConstant": false, "isInlineArray": false, "isLValue": false, "isPure": true, "lValueRequested": false, "nodeType": "TupleExpression", "src": "2332:6:2", "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": 882, "name": "abi", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": -1, "src": "2312:3:2", "typeDescriptions": { "typeIdentifier": "t_magic_abi", "typeString": "abi" } }, "id": 883, "isConstant": false, "isLValue": false, "isPure": true, "lValueRequested": false, "memberLocation": "2316:6:2", "memberName": "decode", "nodeType": "MemberAccess", "src": "2312:10:2", "typeDescriptions": { "typeIdentifier": "t_function_abidecode_pure$__$returns$__$", "typeString": "function () pure" } }, "id": 888, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "2312:27:2", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, "src": "2297:42:2", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, "id": 890, "nodeType": "ExpressionStatement", "src": "2297:42:2" } ] } }, { "expression": { "id": 893, "name": "globalFailed", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 853, "src": "2374:12:2", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, "functionReturnParameters": 847, "id": 894, "nodeType": "Return", "src": "2367:19:2" } ] }, "id": 896, "nodeType": "IfStatement", "src": "1869:528:2", "trueBody": { "id": 851, "nodeType": "Block", "src": "1882:39:2", "statements": [ { "expression": { "id": 849, "name": "_failed", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 816, "src": "1903:7:2", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, "functionReturnParameters": 847, "id": 850, "nodeType": "Return", "src": "1896:14:2" } ] } } ] }, "functionSelector": "ba414fa6", "implemented": true, "kind": "function", "modifiers": [], "name": "failed", "nameLocation": "1828:6:2", "parameters": { "id": 844, "nodeType": "ParameterList", "parameters": [], "src": "1834:2:2" }, "returnParameters": { "id": 847, "nodeType": "ParameterList", "parameters": [ { "constant": false, "id": 846, "mutability": "mutable", "name": "", "nameLocation": "-1:-1:-1", "nodeType": "VariableDeclaration", "scope": 898, "src": "1853:4:2", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" }, "typeName": { "id": 845, "name": "bool", "nodeType": "ElementaryTypeName", "src": "1853:4:2", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, "visibility": "internal" } ], "src": "1852:6:2" }, "scope": 2512, "stateMutability": "nonpayable", "virtual": false, "visibility": "public" }, { "id": 942, "nodeType": "FunctionDefinition", "src": "2410:424:2", "nodes": [], "body": { "id": 941, "nodeType": "Block", "src": "2435:399:2", "nodes": [], "statements": [ { "condition": { "arguments": [], "expression": { "argumentTypes": [], "id": 901, "name": "hasHEVMContext", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 957, "src": "2449:14:2", "typeDescriptions": { "typeIdentifier": "t_function_internal_view$__$returns$_t_bool_$", "typeString": "function () view returns (bool)" } }, "id": 902, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "2449:16:2", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, "id": 936, "nodeType": "IfStatement", "src": "2445:359:2", "trueBody": { "id": 935, "nodeType": "Block", "src": "2467:337:2", "statements": [ { "assignments": [ 904, null ], "declarations": [ { "constant": false, "id": 904, "mutability": "mutable", "name": "status", "nameLocation": "2487:6:2", "nodeType": "VariableDeclaration", "scope": 935, "src": "2482:11:2", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" }, "typeName": { "id": 903, "name": "bool", "nodeType": "ElementaryTypeName", "src": "2482:4:2", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, "visibility": "internal" }, null ], "id": 932, "initialValue": { "arguments": [ { "arguments": [ { "arguments": [ { "arguments": [ { "hexValue": "73746f726528616464726573732c627974657333322c6279746573333229", "id": 912, "isConstant": false, "isLValue": false, "isPure": true, "kind": "string", "lValueRequested": false, "nodeType": "Literal", "src": "2589:32:2", "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": 911, "name": "keccak256", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": -8, "src": "2579:9:2", "typeDescriptions": { "typeIdentifier": "t_function_keccak256_pure$_t_bytes_memory_ptr_$returns$_t_bytes32_$", "typeString": "function (bytes memory) pure returns (bytes32)" } }, "id": 913, "isConstant": false, "isLValue": false, "isPure": true, "kind": "functionCall", "lValueRequested": false, "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "2579:43:2", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" } } ], "expression": { "argumentTypes": [ { "typeIdentifier": "t_bytes32", "typeString": "bytes32" } ], "id": 910, "isConstant": false, "isLValue": false, "isPure": true, "lValueRequested": false, "nodeType": "ElementaryTypeNameExpression", "src": "2572:6:2", "typeDescriptions": { "typeIdentifier": "t_type$_t_bytes4_$", "typeString": "type(bytes4)" }, "typeName": { "id": 909, "name": "bytes4", "nodeType": "ElementaryTypeName", "src": "2572:6:2", "typeDescriptions": {} } }, "id": 914, "isConstant": false, "isLValue": false, "isPure": true, "kind": "typeConversion", "lValueRequested": false, "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "2572:51:2", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_bytes4", "typeString": "bytes4" } }, { "arguments": [ { "id": 917, "name": "HEVM_ADDRESS", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 833, "src": "2656:12:2", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" } }, { "arguments": [ { "hexValue": "6661696c6564", "id": 920, "isConstant": false, "isLValue": false, "isPure": true, "kind": "string", "lValueRequested": false, "nodeType": "Literal", "src": "2678:8:2", "typeDescriptions": { "typeIdentifier": "t_stringliteral_8f44d68b1a26169d304522fa2f95aa938d98120d628d1db5726120ca84e53b43", "typeString": "literal_string \"failed\"" }, "value": "failed" } ], "expression": { "argumentTypes": [ { "typeIdentifier": "t_stringliteral_8f44d68b1a26169d304522fa2f95aa938d98120d628d1db5726120ca84e53b43", "typeString": "literal_string \"failed\"" } ], "id": 919, "isConstant": false, "isLValue": false, "isPure": true, "lValueRequested": false, "nodeType": "ElementaryTypeNameExpression", "src": "2670:7:2", "typeDescriptions": { "typeIdentifier": "t_type$_t_bytes32_$", "typeString": "type(bytes32)" }, "typeName": { "id": 918, "name": "bytes32", "nodeType": "ElementaryTypeName", "src": "2670:7:2", "typeDescriptions": {} } }, "id": 921, "isConstant": false, "isLValue": false, "isPure": true, "kind": "typeConversion", "lValueRequested": false, "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "2670:17:2", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" } }, { "arguments": [ { "arguments": [ { "hexValue": "30783031", "id": 926, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", "src": "2705:4:2", "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": 925, "isConstant": false, "isLValue": false, "isPure": true, "lValueRequested": false, "nodeType": "ElementaryTypeNameExpression", "src": "2697:7:2", "typeDescriptions": { "typeIdentifier": "t_type$_t_uint256_$", "typeString": "type(uint256)" }, "typeName": { "id": 924, "name": "uint256", "nodeType": "ElementaryTypeName", "src": "2697:7:2", "typeDescriptions": {} } }, "id": 927, "isConstant": false, "isLValue": false, "isPure": true, "kind": "typeConversion", "lValueRequested": false, "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "2697:13:2", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } } ], "expression": { "argumentTypes": [ { "typeIdentifier": "t_uint256", "typeString": "uint256" } ], "id": 923, "isConstant": false, "isLValue": false, "isPure": true, "lValueRequested": false, "nodeType": "ElementaryTypeNameExpression", "src": "2689:7:2", "typeDescriptions": { "typeIdentifier": "t_type$_t_bytes32_$", "typeString": "type(bytes32)" }, "typeName": { "id": 922, "name": "bytes32", "nodeType": "ElementaryTypeName", "src": "2689:7:2", "typeDescriptions": {} } }, "id": 928, "isConstant": false, "isLValue": false, "isPure": true, "kind": "typeConversion", "lValueRequested": false, "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "2689:22:2", "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": 915, "name": "abi", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": -1, "src": "2645:3:2", "typeDescriptions": { "typeIdentifier": "t_magic_abi", "typeString": "abi" } }, "id": 916, "isConstant": false, "isLValue": false, "isPure": true, "lValueRequested": false, "memberLocation": "2649:6:2", "memberName": "encode", "nodeType": "MemberAccess", "src": "2645:10:2", "typeDescriptions": { "typeIdentifier": "t_function_abiencode_pure$__$returns$_t_bytes_memory_ptr_$", "typeString": "function () pure returns (bytes memory)" } }, "id": 929, "isConstant": false, "isLValue": false, "isPure": true, "kind": "functionCall", "lValueRequested": false, "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "2645:67:2", "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": 907, "name": "abi", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": -1, "src": "2534:3:2", "typeDescriptions": { "typeIdentifier": "t_magic_abi", "typeString": "abi" } }, "id": 908, "isConstant": false, "isLValue": false, "isPure": true, "lValueRequested": false, "memberLocation": "2538:12:2", "memberName": "encodePacked", "nodeType": "MemberAccess", "src": "2534:16:2", "typeDescriptions": { "typeIdentifier": "t_function_abiencodepacked_pure$__$returns$_t_bytes_memory_ptr_$", "typeString": "function () pure returns (bytes memory)" } }, "id": 930, "isConstant": false, "isLValue": false, "isPure": true, "kind": "functionCall", "lValueRequested": false, "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "2534:196:2", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_bytes_memory_ptr", "typeString": "bytes memory" } } ], "expression": { "argumentTypes": [ { "typeIdentifier": "t_bytes_memory_ptr", "typeString": "bytes memory" } ], "expression": { "id": 905, "name": "HEVM_ADDRESS", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 833, "src": "2499:12:2", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" } }, "id": 906, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "memberLocation": "2512:4:2", "memberName": "call", "nodeType": "MemberAccess", "src": "2499:17:2", "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": 931, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "2499:245:2", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_tuple$_t_bool_$_t_bytes_memory_ptr_$", "typeString": "tuple(bool,bytes memory)" } }, "nodeType": "VariableDeclarationStatement", "src": "2481:263:2" }, { "expression": { "id": 933, "name": "status", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 904, "src": "2758:6:2", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, "id": 934, "nodeType": "ExpressionStatement", "src": "2758:6:2" } ] } }, { "expression": { "id": 939, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftHandSide": { "id": 937, "name": "_failed", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 816, "src": "2813:7:2", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, "nodeType": "Assignment", "operator": "=", "rightHandSide": { "hexValue": "74727565", "id": 938, "isConstant": false, "isLValue": false, "isPure": true, "kind": "bool", "lValueRequested": false, "nodeType": "Literal", "src": "2823:4:2", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" }, "value": "true" }, "src": "2813:14:2", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, "id": 940, "nodeType": "ExpressionStatement", "src": "2813:14:2" } ] }, "implemented": true, "kind": "function", "modifiers": [], "name": "fail", "nameLocation": "2419:4:2", "parameters": { "id": 899, "nodeType": "ParameterList", "parameters": [], "src": "2423:2:2" }, "returnParameters": { "id": 900, "nodeType": "ParameterList", "parameters": [], "src": "2435:0:2" }, "scope": 2512, "stateMutability": "nonpayable", "virtual": false, "visibility": "internal" }, { "id": 957, "nodeType": "FunctionDefinition", "src": "2840:242:2", "nodes": [], "body": { "id": 956, "nodeType": "Block", "src": "2895:187:2", "nodes": [], "statements": [ { "assignments": [ 948 ], "declarations": [ { "constant": false, "id": 948, "mutability": "mutable", "name": "hevmCodeSize", "nameLocation": "2913:12:2", "nodeType": "VariableDeclaration", "scope": 956, "src": "2905:20:2", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" }, "typeName": { "id": 947, "name": "uint256", "nodeType": "ElementaryTypeName", "src": "2905:7:2", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, "visibility": "internal" } ], "id": 950, "initialValue": { "hexValue": "30", "id": 949, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", "src": "2928:1:2", "typeDescriptions": { "typeIdentifier": "t_rational_0_by_1", "typeString": "int_const 0" }, "value": "0" }, "nodeType": "VariableDeclarationStatement", "src": "2905:24:2" }, { "AST": { "nodeType": "YulBlock", "src": "2948:95:2", "statements": [ { "nodeType": "YulAssignment", "src": "2962:71:2", "value": { "arguments": [ { "kind": "number", "nodeType": "YulLiteral", "src": "2990:42:2", "type": "", "value": "0x7109709ECfa91a80626fF3989D68f67F5b1DD12D" } ], "functionName": { "name": "extcodesize", "nodeType": "YulIdentifier", "src": "2978:11:2" }, "nodeType": "YulFunctionCall", "src": "2978:55:2" }, "variableNames": [ { "name": "hevmCodeSize", "nodeType": "YulIdentifier", "src": "2962:12:2" } ] } ] }, "evmVersion": "london", "externalReferences": [ { "declaration": 948, "isOffset": false, "isSlot": false, "src": "2962:12:2", "valueSize": 1 } ], "id": 951, "nodeType": "InlineAssembly", "src": "2939:104:2" }, { "expression": { "commonType": { "typeIdentifier": "t_uint256", "typeString": "uint256" }, "id": 954, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { "id": 952, "name": "hevmCodeSize", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 948, "src": "3059:12:2", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, "nodeType": "BinaryOperation", "operator": ">", "rightExpression": { "hexValue": "30", "id": 953, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", "src": "3074:1:2", "typeDescriptions": { "typeIdentifier": "t_rational_0_by_1", "typeString": "int_const 0" }, "value": "0" }, "src": "3059:16:2", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, "functionReturnParameters": 946, "id": 955, "nodeType": "Return", "src": "3052:23:2" } ] }, "implemented": true, "kind": "function", "modifiers": [], "name": "hasHEVMContext", "nameLocation": "2849:14:2", "parameters": { "id": 943, "nodeType": "ParameterList", "parameters": [], "src": "2863:2:2" }, "returnParameters": { "id": 946, "nodeType": "ParameterList", "parameters": [ { "constant": false, "id": 945, "mutability": "mutable", "name": "", "nameLocation": "-1:-1:-1", "nodeType": "VariableDeclaration", "scope": 957, "src": "2889:4:2", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" }, "typeName": { "id": 944, "name": "bool", "nodeType": "ElementaryTypeName", "src": "2889:4:2", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, "visibility": "internal" } ], "src": "2888:6:2" }, "scope": 2512, "stateMutability": "view", "virtual": false, "visibility": "internal" }, { "id": 978, "nodeType": "ModifierDefinition", "src": "3088:161:2", "nodes": [], "body": { "id": 977, "nodeType": "Block", "src": "3108:141:2", "nodes": [], "statements": [ { "assignments": [ 960 ], "declarations": [ { "constant": false, "id": 960, "mutability": "mutable", "name": "startGas", "nameLocation": "3123:8:2", "nodeType": "VariableDeclaration", "scope": 977, "src": "3118:13:2", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" }, "typeName": { "id": 959, "name": "uint", "nodeType": "ElementaryTypeName", "src": "3118:4:2", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, "visibility": "internal" } ], "id": 963, "initialValue": { "arguments": [], "expression": { "argumentTypes": [], "id": 961, "name": "gasleft", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": -7, "src": "3134:7:2", "typeDescriptions": { "typeIdentifier": "t_function_gasleft_view$__$returns$_t_uint256_$", "typeString": "function () view returns (uint256)" } }, "id": 962, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "3134:9:2", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, "nodeType": "VariableDeclarationStatement", "src": "3118:25:2" }, { "id": 964, "nodeType": "PlaceholderStatement", "src": "3153:1:2" }, { "assignments": [ 966 ], "declarations": [ { "constant": false, "id": 966, "mutability": "mutable", "name": "endGas", "nameLocation": "3169:6:2", "nodeType": "VariableDeclaration", "scope": 977, "src": "3164:11:2", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" }, "typeName": { "id": 965, "name": "uint", "nodeType": "ElementaryTypeName", "src": "3164:4:2", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, "visibility": "internal" } ], "id": 969, "initialValue": { "arguments": [], "expression": { "argumentTypes": [], "id": 967, "name": "gasleft", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": -7, "src": "3178:7:2", "typeDescriptions": { "typeIdentifier": "t_function_gasleft_view$__$returns$_t_uint256_$", "typeString": "function () view returns (uint256)" } }, "id": 968, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "3178:9:2", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, "nodeType": "VariableDeclarationStatement", "src": "3164:23:2" }, { "eventCall": { "arguments": [ { "hexValue": "676173", "id": 971, "isConstant": false, "isLValue": false, "isPure": true, "kind": "string", "lValueRequested": false, "nodeType": "Literal", "src": "3217:5:2", "typeDescriptions": { "typeIdentifier": "t_stringliteral_4498c2139ad6cf2beef3ae7bec34c4856d471c8680dfd28d553f117df74df6b7", "typeString": "literal_string \"gas\"" }, "value": "gas" }, { "commonType": { "typeIdentifier": "t_uint256", "typeString": "uint256" }, "id": 974, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { "id": 972, "name": "startGas", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 960, "src": "3224:8:2", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, "nodeType": "BinaryOperation", "operator": "-", "rightExpression": { "id": 973, "name": "endGas", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 966, "src": "3235:6:2", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, "src": "3224:17:2", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } } ], "expression": { "argumentTypes": [ { "typeIdentifier": "t_stringliteral_4498c2139ad6cf2beef3ae7bec34c4856d471c8680dfd28d553f117df74df6b7", "typeString": "literal_string \"gas\"" }, { "typeIdentifier": "t_uint256", "typeString": "uint256" } ], "id": 970, "name": "log_named_uint", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 799, "src": "3202:14:2", "typeDescriptions": { "typeIdentifier": "t_function_event_nonpayable$_t_string_memory_ptr_$_t_uint256_$returns$__$", "typeString": "function (string memory,uint256)" } }, "id": 975, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "3202:40:2", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, "id": 976, "nodeType": "EmitStatement", "src": "3197:45:2" } ] }, "name": "logs_gas", "nameLocation": "3097:8:2", "parameters": { "id": 958, "nodeType": "ParameterList", "parameters": [], "src": "3105:2:2" }, "virtual": false, "visibility": "internal" }, { "id": 995, "nodeType": "FunctionDefinition", "src": "3255:157:2", "nodes": [], "body": { "id": 994, "nodeType": "Block", "src": "3300:112:2", "nodes": [], "statements": [ { "condition": { "id": 984, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "nodeType": "UnaryOperation", "operator": "!", "prefix": true, "src": "3314:10:2", "subExpression": { "id": 983, "name": "condition", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 980, "src": "3315:9:2", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, "id": 993, "nodeType": "IfStatement", "src": "3310:96:2", "trueBody": { "id": 992, "nodeType": "Block", "src": "3326:80:2", "statements": [ { "eventCall": { "arguments": [ { "hexValue": "4572726f723a20417373657274696f6e204661696c6564", "id": 986, "isConstant": false, "isLValue": false, "isPure": true, "kind": "string", "lValueRequested": false, "nodeType": "Literal", "src": "3349:25:2", "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": 985, "name": "log", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 731, "src": "3345:3:2", "typeDescriptions": { "typeIdentifier": "t_function_event_nonpayable$_t_string_memory_ptr_$returns$__$", "typeString": "function (string memory)" } }, "id": 987, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "3345:30:2", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, "id": 988, "nodeType": "EmitStatement", "src": "3340:35:2" }, { "expression": { "arguments": [], "expression": { "argumentTypes": [], "id": 989, "name": "fail", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 942, "src": "3389:4:2", "typeDescriptions": { "typeIdentifier": "t_function_internal_nonpayable$__$returns$__$", "typeString": "function ()" } }, "id": 990, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "3389:6:2", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, "id": 991, "nodeType": "ExpressionStatement", "src": "3389:6:2" } ] } } ] }, "implemented": true, "kind": "function", "modifiers": [], "name": "assertTrue", "nameLocation": "3264:10:2", "parameters": { "id": 981, "nodeType": "ParameterList", "parameters": [ { "constant": false, "id": 980, "mutability": "mutable", "name": "condition", "nameLocation": "3280:9:2", "nodeType": "VariableDeclaration", "scope": 995, "src": "3275:14:2", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" }, "typeName": { "id": 979, "name": "bool", "nodeType": "ElementaryTypeName", "src": "3275:4:2", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, "visibility": "internal" } ], "src": "3274:16:2" }, "returnParameters": { "id": 982, "nodeType": "ParameterList", "parameters": [], "src": "3300:0:2" }, "scope": 2512, "stateMutability": "nonpayable", "virtual": false, "visibility": "internal" }, { "id": 1016, "nodeType": "FunctionDefinition", "src": "3418:191:2", "nodes": [], "body": { "id": 1015, "nodeType": "Block", "src": "3482:127:2", "nodes": [], "statements": [ { "condition": { "id": 1003, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "nodeType": "UnaryOperation", "operator": "!", "prefix": true, "src": "3496:10:2", "subExpression": { "id": 1002, "name": "condition", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 997, "src": "3497:9:2", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, "id": 1014, "nodeType": "IfStatement", "src": "3492:111:2", "trueBody": { "id": 1013, "nodeType": "Block", "src": "3508:95:2", "statements": [ { "eventCall": { "arguments": [ { "hexValue": "4572726f72", "id": 1005, "isConstant": false, "isLValue": false, "isPure": true, "kind": "string", "lValueRequested": false, "nodeType": "Literal", "src": "3544:7:2", "typeDescriptions": { "typeIdentifier": "t_stringliteral_e342daa49723ff3485f4ff5f755a17b8bc9c3c33bbd312ceee37c94eebfe45c1", "typeString": "literal_string \"Error\"" }, "value": "Error" }, { "id": 1006, "name": "err", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 999, "src": "3553:3:2", "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": 1004, "name": "log_named_string", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 811, "src": "3527:16:2", "typeDescriptions": { "typeIdentifier": "t_function_event_nonpayable$_t_string_memory_ptr_$_t_string_memory_ptr_$returns$__$", "typeString": "function (string memory,string memory)" } }, "id": 1007, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "3527:30:2", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, "id": 1008, "nodeType": "EmitStatement", "src": "3522:35:2" }, { "expression": { "arguments": [ { "id": 1010, "name": "condition", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 997, "src": "3582:9:2", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } } ], "expression": { "argumentTypes": [ { "typeIdentifier": "t_bool", "typeString": "bool" } ], "id": 1009, "name": "assertTrue", "nodeType": "Identifier", "overloadedDeclarations": [ 995, 1016 ], "referencedDeclaration": 995, "src": "3571:10:2", "typeDescriptions": { "typeIdentifier": "t_function_internal_nonpayable$_t_bool_$returns$__$", "typeString": "function (bool)" } }, "id": 1011, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "3571:21:2", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, "id": 1012, "nodeType": "ExpressionStatement", "src": "3571:21:2" } ] } } ] }, "implemented": true, "kind": "function", "modifiers": [], "name": "assertTrue", "nameLocation": "3427:10:2", "parameters": { "id": 1000, "nodeType": "ParameterList", "parameters": [ { "constant": false, "id": 997, "mutability": "mutable", "name": "condition", "nameLocation": "3443:9:2", "nodeType": "VariableDeclaration", "scope": 1016, "src": "3438:14:2", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" }, "typeName": { "id": 996, "name": "bool", "nodeType": "ElementaryTypeName", "src": "3438:4:2", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, "visibility": "internal" }, { "constant": false, "id": 999, "mutability": "mutable", "name": "err", "nameLocation": "3468:3:2", "nodeType": "VariableDeclaration", "scope": 1016, "src": "3454:17:2", "stateVariable": false, "storageLocation": "memory", "typeDescriptions": { "typeIdentifier": "t_string_memory_ptr", "typeString": "string" }, "typeName": { "id": 998, "name": "string", "nodeType": "ElementaryTypeName", "src": "3454:6:2", "typeDescriptions": { "typeIdentifier": "t_string_storage_ptr", "typeString": "string" } }, "visibility": "internal" } ], "src": "3437:35:2" }, "returnParameters": { "id": 1001, "nodeType": "ParameterList", "parameters": [], "src": "3482:0:2" }, "scope": 2512, "stateMutability": "nonpayable", "virtual": false, "visibility": "internal" }, { "id": 1046, "nodeType": "FunctionDefinition", "src": "3615:277:2", "nodes": [], "body": { "id": 1045, "nodeType": "Block", "src": "3664:228:2", "nodes": [], "statements": [ { "condition": { "commonType": { "typeIdentifier": "t_address", "typeString": "address" }, "id": 1025, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { "id": 1023, "name": "a", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 1018, "src": "3678:1:2", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" } }, "nodeType": "BinaryOperation", "operator": "!=", "rightExpression": { "id": 1024, "name": "b", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 1020, "src": "3683:1:2", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" } }, "src": "3678:6:2", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, "id": 1044, "nodeType": "IfStatement", "src": "3674:212:2", "trueBody": { "id": 1043, "nodeType": "Block", "src": "3686:200:2", "statements": [ { "eventCall": { "arguments": [ { "hexValue": "4572726f723a2061203d3d2062206e6f7420736174697366696564205b616464726573735d", "id": 1027, "isConstant": false, "isLValue": false, "isPure": true, "kind": "string", "lValueRequested": false, "nodeType": "Literal", "src": "3709:39:2", "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": 1026, "name": "log", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 731, "src": "3705:3:2", "typeDescriptions": { "typeIdentifier": "t_function_event_nonpayable$_t_string_memory_ptr_$returns$__$", "typeString": "function (string memory)" } }, "id": 1028, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "3705:44:2", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, "id": 1029, "nodeType": "EmitStatement", "src": "3700:49:2" }, { "eventCall": { "arguments": [ { "hexValue": "20204578706563746564", "id": 1031, "isConstant": false, "isLValue": false, "isPure": true, "kind": "string", "lValueRequested": false, "nodeType": "Literal", "src": "3786:12:2", "typeDescriptions": { "typeIdentifier": "t_stringliteral_42fa07d7c51ce5de92a0fc65dbf7e7800814fd01c258dc50e84d5be59184bf0b", "typeString": "literal_string \" Expected\"" }, "value": " Expected" }, { "id": 1032, "name": "b", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 1020, "src": "3800:1:2", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" } } ], "expression": { "argumentTypes": [ { "typeIdentifier": "t_stringliteral_42fa07d7c51ce5de92a0fc65dbf7e7800814fd01c258dc50e84d5be59184bf0b", "typeString": "literal_string \" Expected\"" }, { "typeIdentifier": "t_address", "typeString": "address" } ], "id": 1030, "name": "log_named_address", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 765, "src": "3768:17:2", "typeDescriptions": { "typeIdentifier": "t_function_event_nonpayable$_t_string_memory_ptr_$_t_address_$returns$__$", "typeString": "function (string memory,address)" } }, "id": 1033, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "3768:34:2", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, "id": 1034, "nodeType": "EmitStatement", "src": "3763:39:2" }, { "eventCall": { "arguments": [ { "hexValue": "2020202041637475616c", "id": 1036, "isConstant": false, "isLValue": false, "isPure": true, "kind": "string", "lValueRequested": false, "nodeType": "Literal", "src": "3839:12:2", "typeDescriptions": { "typeIdentifier": "t_stringliteral_d7896f3f645b3ba89da46bf231a5df16e525e587a84bc9b284dfb39958fb219b", "typeString": "literal_string \" Actual\"" }, "value": " Actual" }, { "id": 1037, "name": "a", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 1018, "src": "3853:1:2", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" } } ], "expression": { "argumentTypes": [ { "typeIdentifier": "t_stringliteral_d7896f3f645b3ba89da46bf231a5df16e525e587a84bc9b284dfb39958fb219b", "typeString": "literal_string \" Actual\"" }, { "typeIdentifier": "t_address", "typeString": "address" } ], "id": 1035, "name": "log_named_address", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 765, "src": "3821:17:2", "typeDescriptions": { "typeIdentifier": "t_function_event_nonpayable$_t_string_memory_ptr_$_t_address_$returns$__$", "typeString": "function (string memory,address)" } }, "id": 1038, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "3821:34:2", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, "id": 1039, "nodeType": "EmitStatement", "src": "3816:39:2" }, { "expression": { "arguments": [], "expression": { "argumentTypes": [], "id": 1040, "name": "fail", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 942, "src": "3869:4:2", "typeDescriptions": { "typeIdentifier": "t_function_internal_nonpayable$__$returns$__$", "typeString": "function ()" } }, "id": 1041, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "3869:6:2", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, "id": 1042, "nodeType": "ExpressionStatement", "src": "3869:6:2" } ] } } ] }, "implemented": true, "kind": "function", "modifiers": [], "name": "assertEq", "nameLocation": "3624:8:2", "parameters": { "id": 1021, "nodeType": "ParameterList", "parameters": [ { "constant": false, "id": 1018, "mutability": "mutable", "name": "a", "nameLocation": "3641:1:2", "nodeType": "VariableDeclaration", "scope": 1046, "src": "3633:9:2", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" }, "typeName": { "id": 1017, "name": "address", "nodeType": "ElementaryTypeName", "src": "3633:7:2", "stateMutability": "nonpayable", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" } }, "visibility": "internal" }, { "constant": false, "id": 1020, "mutability": "mutable", "name": "b", "nameLocation": "3652:1:2", "nodeType": "VariableDeclaration", "scope": 1046, "src": "3644:9:2", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" }, "typeName": { "id": 1019, "name": "address", "nodeType": "ElementaryTypeName", "src": "3644:7:2", "stateMutability": "nonpayable", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" } }, "visibility": "internal" } ], "src": "3632:22:2" }, "returnParameters": { "id": 1022, "nodeType": "ParameterList", "parameters": [], "src": "3664:0:2" }, "scope": 2512, "stateMutability": "nonpayable", "virtual": false, "visibility": "internal" }, { "id": 1071, "nodeType": "FunctionDefinition", "src": "3897:185:2", "nodes": [], "body": { "id": 1070, "nodeType": "Block", "src": "3965:117:2", "nodes": [], "statements": [ { "condition": { "commonType": { "typeIdentifier": "t_address", "typeString": "address" }, "id": 1057, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { "id": 1055, "name": "a", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 1048, "src": "3979:1:2", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" } }, "nodeType": "BinaryOperation", "operator": "!=", "rightExpression": { "id": 1056, "name": "b", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 1050, "src": "3984:1:2", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" } }, "src": "3979:6:2", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, "id": 1069, "nodeType": "IfStatement", "src": "3975:101:2", "trueBody": { "id": 1068, "nodeType": "Block", "src": "3987:89:2", "statements": [ { "eventCall": { "arguments": [ { "hexValue": "4572726f72", "id": 1059, "isConstant": false, "isLValue": false, "isPure": true, "kind": "string", "lValueRequested": false, "nodeType": "Literal", "src": "4024:7:2", "typeDescriptions": { "typeIdentifier": "t_stringliteral_e342daa49723ff3485f4ff5f755a17b8bc9c3c33bbd312ceee37c94eebfe45c1", "typeString": "literal_string \"Error\"" }, "value": "Error" }, { "id": 1060, "name": "err", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 1052, "src": "4033:3:2", "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": 1058, "name": "log_named_string", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 811, "src": "4006:16:2", "typeDescriptions": { "typeIdentifier": "t_function_event_nonpayable$_t_string_memory_ptr_$_t_string_memory_ptr_$returns$__$", "typeString": "function (string memory,string memory)" } }, "id": 1061, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "4006:31:2", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, "id": 1062, "nodeType": "EmitStatement", "src": "4001:36:2" }, { "expression": { "arguments": [ { "id": 1064, "name": "a", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 1048, "src": "4060:1:2", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" } }, { "id": 1065, "name": "b", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 1050, "src": "4063:1:2", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" } } ], "expression": { "argumentTypes": [ { "typeIdentifier": "t_address", "typeString": "address" }, { "typeIdentifier": "t_address", "typeString": "address" } ], "id": 1063, "name": "assertEq", "nodeType": "Identifier", "overloadedDeclarations": [ 1046, 1071, 1101, 1126, 1185, 1210, 1240, 1265, 2365, 2400 ], "referencedDeclaration": 1046, "src": "4051:8:2", "typeDescriptions": { "typeIdentifier": "t_function_internal_nonpayable$_t_address_$_t_address_$returns$__$", "typeString": "function (address,address)" } }, "id": 1066, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "4051:14:2", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, "id": 1067, "nodeType": "ExpressionStatement", "src": "4051:14:2" } ] } } ] }, "implemented": true, "kind": "function", "modifiers": [], "name": "assertEq", "nameLocation": "3906:8:2", "parameters": { "id": 1053, "nodeType": "ParameterList", "parameters": [ { "constant": false, "id": 1048, "mutability": "mutable", "name": "a", "nameLocation": "3923:1:2", "nodeType": "VariableDeclaration", "scope": 1071, "src": "3915:9:2", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" }, "typeName": { "id": 1047, "name": "address", "nodeType": "ElementaryTypeName", "src": "3915:7:2", "stateMutability": "nonpayable", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" } }, "visibility": "internal" }, { "constant": false, "id": 1050, "mutability": "mutable", "name": "b", "nameLocation": "3934:1:2", "nodeType": "VariableDeclaration", "scope": 1071, "src": "3926:9:2", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" }, "typeName": { "id": 1049, "name": "address", "nodeType": "ElementaryTypeName", "src": "3926:7:2", "stateMutability": "nonpayable", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" } }, "visibility": "internal" }, { "constant": false, "id": 1052, "mutability": "mutable", "name": "err", "nameLocation": "3951:3:2", "nodeType": "VariableDeclaration", "scope": 1071, "src": "3937:17:2", "stateVariable": false, "storageLocation": "memory", "typeDescriptions": { "typeIdentifier": "t_string_memory_ptr", "typeString": "string" }, "typeName": { "id": 1051, "name": "string", "nodeType": "ElementaryTypeName", "src": "3937:6:2", "typeDescriptions": { "typeIdentifier": "t_string_storage_ptr", "typeString": "string" } }, "visibility": "internal" } ], "src": "3914:41:2" }, "returnParameters": { "id": 1054, "nodeType": "ParameterList", "parameters": [], "src": "3965:0:2" }, "scope": 2512, "stateMutability": "nonpayable", "virtual": false, "visibility": "internal" }, { "id": 1101, "nodeType": "FunctionDefinition", "src": "4088:277:2", "nodes": [], "body": { "id": 1100, "nodeType": "Block", "src": "4137:228:2", "nodes": [], "statements": [ { "condition": { "commonType": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" }, "id": 1080, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { "id": 1078, "name": "a", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 1073, "src": "4151:1:2", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" } }, "nodeType": "BinaryOperation", "operator": "!=", "rightExpression": { "id": 1079, "name": "b", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 1075, "src": "4156:1:2", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" } }, "src": "4151:6:2", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, "id": 1099, "nodeType": "IfStatement", "src": "4147:212:2", "trueBody": { "id": 1098, "nodeType": "Block", "src": "4159:200:2", "statements": [ { "eventCall": { "arguments": [ { "hexValue": "4572726f723a2061203d3d2062206e6f7420736174697366696564205b627974657333325d", "id": 1082, "isConstant": false, "isLValue": false, "isPure": true, "kind": "string", "lValueRequested": false, "nodeType": "Literal", "src": "4182:39:2", "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": 1081, "name": "log", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 731, "src": "4178:3:2", "typeDescriptions": { "typeIdentifier": "t_function_event_nonpayable$_t_string_memory_ptr_$returns$__$", "typeString": "function (string memory)" } }, "id": 1083, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "4178:44:2", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, "id": 1084, "nodeType": "EmitStatement", "src": "4173:49:2" }, { "eventCall": { "arguments": [ { "hexValue": "20204578706563746564", "id": 1086, "isConstant": false, "isLValue": false, "isPure": true, "kind": "string", "lValueRequested": false, "nodeType": "Literal", "src": "4259:12:2", "typeDescriptions": { "typeIdentifier": "t_stringliteral_42fa07d7c51ce5de92a0fc65dbf7e7800814fd01c258dc50e84d5be59184bf0b", "typeString": "literal_string \" Expected\"" }, "value": " Expected" }, { "id": 1087, "name": "b", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 1075, "src": "4273:1:2", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" } } ], "expression": { "argumentTypes": [ { "typeIdentifier": "t_stringliteral_42fa07d7c51ce5de92a0fc65dbf7e7800814fd01c258dc50e84d5be59184bf0b", "typeString": "literal_string \" Expected\"" }, { "typeIdentifier": "t_bytes32", "typeString": "bytes32" } ], "id": 1085, "name": "log_named_bytes32", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 771, "src": "4241:17:2", "typeDescriptions": { "typeIdentifier": "t_function_event_nonpayable$_t_string_memory_ptr_$_t_bytes32_$returns$__$", "typeString": "function (string memory,bytes32)" } }, "id": 1088, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "4241:34:2", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, "id": 1089, "nodeType": "EmitStatement", "src": "4236:39:2" }, { "eventCall": { "arguments": [ { "hexValue": "2020202041637475616c", "id": 1091, "isConstant": false, "isLValue": false, "isPure": true, "kind": "string", "lValueRequested": false, "nodeType": "Literal", "src": "4312:12:2", "typeDescriptions": { "typeIdentifier": "t_stringliteral_d7896f3f645b3ba89da46bf231a5df16e525e587a84bc9b284dfb39958fb219b", "typeString": "literal_string \" Actual\"" }, "value": " Actual" }, { "id": 1092, "name": "a", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 1073, "src": "4326:1:2", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" } } ], "expression": { "argumentTypes": [ { "typeIdentifier": "t_stringliteral_d7896f3f645b3ba89da46bf231a5df16e525e587a84bc9b284dfb39958fb219b", "typeString": "literal_string \" Actual\"" }, { "typeIdentifier": "t_bytes32", "typeString": "bytes32" } ], "id": 1090, "name": "log_named_bytes32", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 771, "src": "4294:17:2", "typeDescriptions": { "typeIdentifier": "t_function_event_nonpayable$_t_string_memory_ptr_$_t_bytes32_$returns$__$", "typeString": "function (string memory,bytes32)" } }, "id": 1093, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "4294:34:2", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, "id": 1094, "nodeType": "EmitStatement", "src": "4289:39:2" }, { "expression": { "arguments": [], "expression": { "argumentTypes": [], "id": 1095, "name": "fail", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 942, "src": "4342:4:2", "typeDescriptions": { "typeIdentifier": "t_function_internal_nonpayable$__$returns$__$", "typeString": "function ()" } }, "id": 1096, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "4342:6:2", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, "id": 1097, "nodeType": "ExpressionStatement", "src": "4342:6:2" } ] } } ] }, "implemented": true, "kind": "function", "modifiers": [], "name": "assertEq", "nameLocation": "4097:8:2", "parameters": { "id": 1076, "nodeType": "ParameterList", "parameters": [ { "constant": false, "id": 1073, "mutability": "mutable", "name": "a", "nameLocation": "4114:1:2", "nodeType": "VariableDeclaration", "scope": 1101, "src": "4106:9:2", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" }, "typeName": { "id": 1072, "name": "bytes32", "nodeType": "ElementaryTypeName", "src": "4106:7:2", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" } }, "visibility": "internal" }, { "constant": false, "id": 1075, "mutability": "mutable", "name": "b", "nameLocation": "4125:1:2", "nodeType": "VariableDeclaration", "scope": 1101, "src": "4117:9:2", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" }, "typeName": { "id": 1074, "name": "bytes32", "nodeType": "ElementaryTypeName", "src": "4117:7:2", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" } }, "visibility": "internal" } ], "src": "4105:22:2" }, "returnParameters": { "id": 1077, "nodeType": "ParameterList", "parameters": [], "src": "4137:0:2" }, "scope": 2512, "stateMutability": "nonpayable", "virtual": false, "visibility": "internal" }, { "id": 1126, "nodeType": "FunctionDefinition", "src": "4370:185:2", "nodes": [], "body": { "id": 1125, "nodeType": "Block", "src": "4438:117:2", "nodes": [], "statements": [ { "condition": { "commonType": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" }, "id": 1112, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { "id": 1110, "name": "a", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 1103, "src": "4452:1:2", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" } }, "nodeType": "BinaryOperation", "operator": "!=", "rightExpression": { "id": 1111, "name": "b", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 1105, "src": "4457:1:2", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" } }, "src": "4452:6:2", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, "id": 1124, "nodeType": "IfStatement", "src": "4448:101:2", "trueBody": { "id": 1123, "nodeType": "Block", "src": "4460:89:2", "statements": [ { "eventCall": { "arguments": [ { "hexValue": "4572726f72", "id": 1114, "isConstant": false, "isLValue": false, "isPure": true, "kind": "string", "lValueRequested": false, "nodeType": "Literal", "src": "4497:7:2", "typeDescriptions": { "typeIdentifier": "t_stringliteral_e342daa49723ff3485f4ff5f755a17b8bc9c3c33bbd312ceee37c94eebfe45c1", "typeString": "literal_string \"Error\"" }, "value": "Error" }, { "id": 1115, "name": "err", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 1107, "src": "4506:3:2", "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": 811, "src": "4479:16:2", "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, "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "4479:31:2", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, "id": 1117, "nodeType": "EmitStatement", "src": "4474:36:2" }, { "expression": { "arguments": [ { "id": 1119, "name": "a", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 1103, "src": "4533:1:2", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" } }, { "id": 1120, "name": "b", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 1105, "src": "4536:1:2", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" } } ], "expression": { "argumentTypes": [ { "typeIdentifier": "t_bytes32", "typeString": "bytes32" }, { "typeIdentifier": "t_bytes32", "typeString": "bytes32" } ], "id": 1118, "name": "assertEq", "nodeType": "Identifier", "overloadedDeclarations": [ 1046, 1071, 1101, 1126, 1185, 1210, 1240, 1265, 2365, 2400 ], "referencedDeclaration": 1101, "src": "4524:8:2", "typeDescriptions": { "typeIdentifier": "t_function_internal_nonpayable$_t_bytes32_$_t_bytes32_$returns$__$", "typeString": "function (bytes32,bytes32)" } }, "id": 1121, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "4524:14:2", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, "id": 1122, "nodeType": "ExpressionStatement", "src": "4524:14:2" } ] } } ] }, "implemented": true, "kind": "function", "modifiers": [], "name": "assertEq", "nameLocation": "4379:8:2", "parameters": { "id": 1108, "nodeType": "ParameterList", "parameters": [ { "constant": false, "id": 1103, "mutability": "mutable", "name": "a", "nameLocation": "4396:1:2", "nodeType": "VariableDeclaration", "scope": 1126, "src": "4388:9:2", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" }, "typeName": { "id": 1102, "name": "bytes32", "nodeType": "ElementaryTypeName", "src": "4388:7:2", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" } }, "visibility": "internal" }, { "constant": false, "id": 1105, "mutability": "mutable", "name": "b", "nameLocation": "4407:1:2", "nodeType": "VariableDeclaration", "scope": 1126, "src": "4399:9:2", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" }, "typeName": { "id": 1104, "name": "bytes32", "nodeType": "ElementaryTypeName", "src": "4399:7:2", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" } }, "visibility": "internal" }, { "constant": false, "id": 1107, "mutability": "mutable", "name": "err", "nameLocation": "4424:3:2", "nodeType": "VariableDeclaration", "scope": 1126, "src": "4410:17:2", "stateVariable": false, "storageLocation": "memory", "typeDescriptions": { "typeIdentifier": "t_string_memory_ptr", "typeString": "string" }, "typeName": { "id": 1106, "name": "string", "nodeType": "ElementaryTypeName", "src": "4410:6:2", "typeDescriptions": { "typeIdentifier": "t_string_storage_ptr", "typeString": "string" } }, "visibility": "internal" } ], "src": "4387:41:2" }, "returnParameters": { "id": 1109, "nodeType": "ParameterList", "parameters": [], "src": "4438:0:2" }, "scope": 2512, "stateMutability": "nonpayable", "virtual": false, "visibility": "internal" }, { "id": 1139, "nodeType": "FunctionDefinition", "src": "4560:82:2", "nodes": [], "body": { "id": 1138, "nodeType": "Block", "src": "4611:31:2", "nodes": [], "statements": [ { "expression": { "arguments": [ { "id": 1134, "name": "a", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 1128, "src": "4630:1:2", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" } }, { "id": 1135, "name": "b", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 1130, "src": "4633:1:2", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" } } ], "expression": { "argumentTypes": [ { "typeIdentifier": "t_bytes32", "typeString": "bytes32" }, { "typeIdentifier": "t_bytes32", "typeString": "bytes32" } ], "id": 1133, "name": "assertEq", "nodeType": "Identifier", "overloadedDeclarations": [ 1046, 1071, 1101, 1126, 1185, 1210, 1240, 1265, 2365, 2400 ], "referencedDeclaration": 1101, "src": "4621:8:2", "typeDescriptions": { "typeIdentifier": "t_function_internal_nonpayable$_t_bytes32_$_t_bytes32_$returns$__$", "typeString": "function (bytes32,bytes32)" } }, "id": 1136, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "4621:14:2", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, "id": 1137, "nodeType": "ExpressionStatement", "src": "4621:14:2" } ] }, "implemented": true, "kind": "function", "modifiers": [], "name": "assertEq32", "nameLocation": "4569:10:2", "parameters": { "id": 1131, "nodeType": "ParameterList", "parameters": [ { "constant": false, "id": 1128, "mutability": "mutable", "name": "a", "nameLocation": "4588:1:2", "nodeType": "VariableDeclaration", "scope": 1139, "src": "4580:9:2", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" }, "typeName": { "id": 1127, "name": "bytes32", "nodeType": "ElementaryTypeName", "src": "4580:7:2", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" } }, "visibility": "internal" }, { "constant": false, "id": 1130, "mutability": "mutable", "name": "b", "nameLocation": "4599:1:2", "nodeType": "VariableDeclaration", "scope": 1139, "src": "4591:9:2", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" }, "typeName": { "id": 1129, "name": "bytes32", "nodeType": "ElementaryTypeName", "src": "4591:7:2", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" } }, "visibility": "internal" } ], "src": "4579:22:2" }, "returnParameters": { "id": 1132, "nodeType": "ParameterList", "parameters": [], "src": "4611:0:2" }, "scope": 2512, "stateMutability": "nonpayable", "virtual": false, "visibility": "internal" }, { "id": 1155, "nodeType": "FunctionDefinition", "src": "4647:106:2", "nodes": [], "body": { "id": 1154, "nodeType": "Block", "src": "4717:36:2", "nodes": [], "statements": [ { "expression": { "arguments": [ { "id": 1149, "name": "a", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 1141, "src": "4736:1:2", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" } }, { "id": 1150, "name": "b", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 1143, "src": "4739:1:2", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" } }, { "id": 1151, "name": "err", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 1145, "src": "4742:3:2", "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": 1148, "name": "assertEq", "nodeType": "Identifier", "overloadedDeclarations": [ 1046, 1071, 1101, 1126, 1185, 1210, 1240, 1265, 2365, 2400 ], "referencedDeclaration": 1126, "src": "4727:8:2", "typeDescriptions": { "typeIdentifier": "t_function_internal_nonpayable$_t_bytes32_$_t_bytes32_$_t_string_memory_ptr_$returns$__$", "typeString": "function (bytes32,bytes32,string memory)" } }, "id": 1152, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "4727:19:2", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, "id": 1153, "nodeType": "ExpressionStatement", "src": "4727:19:2" } ] }, "implemented": true, "kind": "function", "modifiers": [], "name": "assertEq32", "nameLocation": "4656:10:2", "parameters": { "id": 1146, "nodeType": "ParameterList", "parameters": [ { "constant": false, "id": 1141, "mutability": "mutable", "name": "a", "nameLocation": "4675:1:2", "nodeType": "VariableDeclaration", "scope": 1155, "src": "4667:9:2", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" }, "typeName": { "id": 1140, "name": "bytes32", "nodeType": "ElementaryTypeName", "src": "4667:7:2", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" } }, "visibility": "internal" }, { "constant": false, "id": 1143, "mutability": "mutable", "name": "b", "nameLocation": "4686:1:2", "nodeType": "VariableDeclaration", "scope": 1155, "src": "4678:9:2", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" }, "typeName": { "id": 1142, "name": "bytes32", "nodeType": "ElementaryTypeName", "src": "4678:7:2", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" } }, "visibility": "internal" }, { "constant": false, "id": 1145, "mutability": "mutable", "name": "err", "nameLocation": "4703:3:2", "nodeType": "VariableDeclaration", "scope": 1155, "src": "4689:17:2", "stateVariable": false, "storageLocation": "memory", "typeDescriptions": { "typeIdentifier": "t_string_memory_ptr", "typeString": "string" }, "typeName": { "id": 1144, "name": "string", "nodeType": "ElementaryTypeName", "src": "4689:6:2", "typeDescriptions": { "typeIdentifier": "t_string_storage_ptr", "typeString": "string" } }, "visibility": "internal" } ], "src": "4666:41:2" }, "returnParameters": { "id": 1147, "nodeType": "ParameterList", "parameters": [], "src": "4717:0:2" }, "scope": 2512, "stateMutability": "nonpayable", "virtual": false, "visibility": "internal" }, { "id": 1185, "nodeType": "FunctionDefinition", "src": "4759:257:2", "nodes": [], "body": { "id": 1184, "nodeType": "Block", "src": "4800:216:2", "nodes": [], "statements": [ { "condition": { "commonType": { "typeIdentifier": "t_int256", "typeString": "int256" }, "id": 1164, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { "id": 1162, "name": "a", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 1157, "src": "4814:1:2", "typeDescriptions": { "typeIdentifier": "t_int256", "typeString": "int256" } }, "nodeType": "BinaryOperation", "operator": "!=", "rightExpression": { "id": 1163, "name": "b", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 1159, "src": "4819:1:2", "typeDescriptions": { "typeIdentifier": "t_int256", "typeString": "int256" } }, "src": "4814:6:2", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, "id": 1183, "nodeType": "IfStatement", "src": "4810:200:2", "trueBody": { "id": 1182, "nodeType": "Block", "src": "4822:188:2", "statements": [ { "eventCall": { "arguments": [ { "hexValue": "4572726f723a2061203d3d2062206e6f7420736174697366696564205b696e745d", "id": 1166, "isConstant": false, "isLValue": false, "isPure": true, "kind": "string", "lValueRequested": false, "nodeType": "Literal", "src": "4845:35:2", "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": 1165, "name": "log", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 731, "src": "4841:3:2", "typeDescriptions": { "typeIdentifier": "t_function_event_nonpayable$_t_string_memory_ptr_$returns$__$", "typeString": "function (string memory)" } }, "id": 1167, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "4841:40:2", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, "id": 1168, "nodeType": "EmitStatement", "src": "4836:45:2" }, { "eventCall": { "arguments": [ { "hexValue": "20204578706563746564", "id": 1170, "isConstant": false, "isLValue": false, "isPure": true, "kind": "string", "lValueRequested": false, "nodeType": "Literal", "src": "4914:12:2", "typeDescriptions": { "typeIdentifier": "t_stringliteral_42fa07d7c51ce5de92a0fc65dbf7e7800814fd01c258dc50e84d5be59184bf0b", "typeString": "literal_string \" Expected\"" }, "value": " Expected" }, { "id": 1171, "name": "b", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 1159, "src": "4928:1:2", "typeDescriptions": { "typeIdentifier": "t_int256", "typeString": "int256" } } ], "expression": { "argumentTypes": [ { "typeIdentifier": "t_stringliteral_42fa07d7c51ce5de92a0fc65dbf7e7800814fd01c258dc50e84d5be59184bf0b", "typeString": "literal_string \" Expected\"" }, { "typeIdentifier": "t_int256", "typeString": "int256" } ], "id": 1169, "name": "log_named_int", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 793, "src": "4900:13:2", "typeDescriptions": { "typeIdentifier": "t_function_event_nonpayable$_t_string_memory_ptr_$_t_int256_$returns$__$", "typeString": "function (string memory,int256)" } }, "id": 1172, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "4900:30:2", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, "id": 1173, "nodeType": "EmitStatement", "src": "4895:35:2" }, { "eventCall": { "arguments": [ { "hexValue": "2020202041637475616c", "id": 1175, "isConstant": false, "isLValue": false, "isPure": true, "kind": "string", "lValueRequested": false, "nodeType": "Literal", "src": "4963:12:2", "typeDescriptions": { "typeIdentifier": "t_stringliteral_d7896f3f645b3ba89da46bf231a5df16e525e587a84bc9b284dfb39958fb219b", "typeString": "literal_string \" Actual\"" }, "value": " Actual" }, { "id": 1176, "name": "a", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 1157, "src": "4977:1:2", "typeDescriptions": { "typeIdentifier": "t_int256", "typeString": "int256" } } ], "expression": { "argumentTypes": [ { "typeIdentifier": "t_stringliteral_d7896f3f645b3ba89da46bf231a5df16e525e587a84bc9b284dfb39958fb219b", "typeString": "literal_string \" Actual\"" }, { "typeIdentifier": "t_int256", "typeString": "int256" } ], "id": 1174, "name": "log_named_int", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 793, "src": "4949:13:2", "typeDescriptions": { "typeIdentifier": "t_function_event_nonpayable$_t_string_memory_ptr_$_t_int256_$returns$__$", "typeString": "function (string memory,int256)" } }, "id": 1177, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "4949:30:2", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, "id": 1178, "nodeType": "EmitStatement", "src": "4944:35:2" }, { "expression": { "arguments": [], "expression": { "argumentTypes": [], "id": 1179, "name": "fail", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 942, "src": "4993:4:2", "typeDescriptions": { "typeIdentifier": "t_function_internal_nonpayable$__$returns$__$", "typeString": "function ()" } }, "id": 1180, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "4993:6:2", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, "id": 1181, "nodeType": "ExpressionStatement", "src": "4993:6:2" } ] } } ] }, "implemented": true, "kind": "function", "modifiers": [], "name": "assertEq", "nameLocation": "4768:8:2", "parameters": { "id": 1160, "nodeType": "ParameterList", "parameters": [ { "constant": false, "id": 1157, "mutability": "mutable", "name": "a", "nameLocation": "4781:1:2", "nodeType": "VariableDeclaration", "scope": 1185, "src": "4777:5:2", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { "typeIdentifier": "t_int256", "typeString": "int256" }, "typeName": { "id": 1156, "name": "int", "nodeType": "ElementaryTypeName", "src": "4777:3:2", "typeDescriptions": { "typeIdentifier": "t_int256", "typeString": "int256" } }, "visibility": "internal" }, { "constant": false, "id": 1159, "mutability": "mutable", "name": "b", "nameLocation": "4788:1:2", "nodeType": "VariableDeclaration", "scope": 1185, "src": "4784:5:2", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { "typeIdentifier": "t_int256", "typeString": "int256" }, "typeName": { "id": 1158, "name": "int", "nodeType": "ElementaryTypeName", "src": "4784:3:2", "typeDescriptions": { "typeIdentifier": "t_int256", "typeString": "int256" } }, "visibility": "internal" } ], "src": "4776:14:2" }, "returnParameters": { "id": 1161, "nodeType": "ParameterList", "parameters": [], "src": "4800:0:2" }, "scope": 2512, "stateMutability": "nonpayable", "virtual": false, "visibility": "internal" }, { "id": 1210, "nodeType": "FunctionDefinition", "src": "5021:176:2", "nodes": [], "body": { "id": 1209, "nodeType": "Block", "src": "5081:116:2", "nodes": [], "statements": [ { "condition": { "commonType": { "typeIdentifier": "t_int256", "typeString": "int256" }, "id": 1196, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { "id": 1194, "name": "a", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 1187, "src": "5095:1:2", "typeDescriptions": { "typeIdentifier": "t_int256", "typeString": "int256" } }, "nodeType": "BinaryOperation", "operator": "!=", "rightExpression": { "id": 1195, "name": "b", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 1189, "src": "5100:1:2", "typeDescriptions": { "typeIdentifier": "t_int256", "typeString": "int256" } }, "src": "5095:6:2", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, "id": 1208, "nodeType": "IfStatement", "src": "5091:100:2", "trueBody": { "id": 1207, "nodeType": "Block", "src": "5103:88:2", "statements": [ { "eventCall": { "arguments": [ { "hexValue": "4572726f72", "id": 1198, "isConstant": false, "isLValue": false, "isPure": true, "kind": "string", "lValueRequested": false, "nodeType": "Literal", "src": "5139:7:2", "typeDescriptions": { "typeIdentifier": "t_stringliteral_e342daa49723ff3485f4ff5f755a17b8bc9c3c33bbd312ceee37c94eebfe45c1", "typeString": "literal_string \"Error\"" }, "value": "Error" }, { "id": 1199, "name": "err", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 1191, "src": "5148:3:2", "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": 1197, "name": "log_named_string", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 811, "src": "5122:16:2", "typeDescriptions": { "typeIdentifier": "t_function_event_nonpayable$_t_string_memory_ptr_$_t_string_memory_ptr_$returns$__$", "typeString": "function (string memory,string memory)" } }, "id": 1200, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "5122:30:2", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, "id": 1201, "nodeType": "EmitStatement", "src": "5117:35:2" }, { "expression": { "arguments": [ { "id": 1203, "name": "a", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 1187, "src": "5175:1:2", "typeDescriptions": { "typeIdentifier": "t_int256", "typeString": "int256" } }, { "id": 1204, "name": "b", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 1189, "src": "5178:1:2", "typeDescriptions": { "typeIdentifier": "t_int256", "typeString": "int256" } } ], "expression": { "argumentTypes": [ { "typeIdentifier": "t_int256", "typeString": "int256" }, { "typeIdentifier": "t_int256", "typeString": "int256" } ], "id": 1202, "name": "assertEq", "nodeType": "Identifier", "overloadedDeclarations": [ 1046, 1071, 1101, 1126, 1185, 1210, 1240, 1265, 2365, 2400 ], "referencedDeclaration": 1185, "src": "5166:8:2", "typeDescriptions": { "typeIdentifier": "t_function_internal_nonpayable$_t_int256_$_t_int256_$returns$__$", "typeString": "function (int256,int256)" } }, "id": 1205, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "5166:14:2", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, "id": 1206, "nodeType": "ExpressionStatement", "src": "5166:14:2" } ] } } ] }, "implemented": true, "kind": "function", "modifiers": [], "name": "assertEq", "nameLocation": "5030:8:2", "parameters": { "id": 1192, "nodeType": "ParameterList", "parameters": [ { "constant": false, "id": 1187, "mutability": "mutable", "name": "a", "nameLocation": "5043:1:2", "nodeType": "VariableDeclaration", "scope": 1210, "src": "5039:5:2", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { "typeIdentifier": "t_int256", "typeString": "int256" }, "typeName": { "id": 1186, "name": "int", "nodeType": "ElementaryTypeName", "src": "5039:3:2", "typeDescriptions": { "typeIdentifier": "t_int256", "typeString": "int256" } }, "visibility": "internal" }, { "constant": false, "id": 1189, "mutability": "mutable", "name": "b", "nameLocation": "5050:1:2", "nodeType": "VariableDeclaration", "scope": 1210, "src": "5046:5:2", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { "typeIdentifier": "t_int256", "typeString": "int256" }, "typeName": { "id": 1188, "name": "int", "nodeType": "ElementaryTypeName", "src": "5046:3:2", "typeDescriptions": { "typeIdentifier": "t_int256", "typeString": "int256" } }, "visibility": "internal" }, { "constant": false, "id": 1191, "mutability": "mutable", "name": "err", "nameLocation": "5067:3:2", "nodeType": "VariableDeclaration", "scope": 1210, "src": "5053:17:2", "stateVariable": false, "storageLocation": "memory", "typeDescriptions": { "typeIdentifier": "t_string_memory_ptr", "typeString": "string" }, "typeName": { "id": 1190, "name": "string", "nodeType": "ElementaryTypeName", "src": "5053:6:2", "typeDescriptions": { "typeIdentifier": "t_string_storage_ptr", "typeString": "string" } }, "visibility": "internal" } ], "src": "5038:33:2" }, "returnParameters": { "id": 1193, "nodeType": "ParameterList", "parameters": [], "src": "5081:0:2" }, "scope": 2512, "stateMutability": "nonpayable", "virtual": false, "visibility": "internal" }, { "id": 1240, "nodeType": "FunctionDefinition", "src": "5202:262:2", "nodes": [], "body": { "id": 1239, "nodeType": "Block", "src": "5245:219:2", "nodes": [], "statements": [ { "condition": { "commonType": { "typeIdentifier": "t_uint256", "typeString": "uint256" }, "id": 1219, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { "id": 1217, "name": "a", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 1212, "src": "5259:1:2", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, "nodeType": "BinaryOperation", "operator": "!=", "rightExpression": { "id": 1218, "name": "b", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 1214, "src": "5264:1:2", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, "src": "5259:6:2", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, "id": 1238, "nodeType": "IfStatement", "src": "5255:203:2", "trueBody": { "id": 1237, "nodeType": "Block", "src": "5267:191:2", "statements": [ { "eventCall": { "arguments": [ { "hexValue": "4572726f723a2061203d3d2062206e6f7420736174697366696564205b75696e745d", "id": 1221, "isConstant": false, "isLValue": false, "isPure": true, "kind": "string", "lValueRequested": false, "nodeType": "Literal", "src": "5290:36:2", "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": 1220, "name": "log", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 731, "src": "5286:3:2", "typeDescriptions": { "typeIdentifier": "t_function_event_nonpayable$_t_string_memory_ptr_$returns$__$", "typeString": "function (string memory)" } }, "id": 1222, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "5286:41:2", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, "id": 1223, "nodeType": "EmitStatement", "src": "5281:46:2" }, { "eventCall": { "arguments": [ { "hexValue": "20204578706563746564", "id": 1225, "isConstant": false, "isLValue": false, "isPure": true, "kind": "string", "lValueRequested": false, "nodeType": "Literal", "src": "5361:12:2", "typeDescriptions": { "typeIdentifier": "t_stringliteral_42fa07d7c51ce5de92a0fc65dbf7e7800814fd01c258dc50e84d5be59184bf0b", "typeString": "literal_string \" Expected\"" }, "value": " Expected" }, { "id": 1226, "name": "b", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 1214, "src": "5375:1:2", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } } ], "expression": { "argumentTypes": [ { "typeIdentifier": "t_stringliteral_42fa07d7c51ce5de92a0fc65dbf7e7800814fd01c258dc50e84d5be59184bf0b", "typeString": "literal_string \" Expected\"" }, { "typeIdentifier": "t_uint256", "typeString": "uint256" } ], "id": 1224, "name": "log_named_uint", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 799, "src": "5346:14:2", "typeDescriptions": { "typeIdentifier": "t_function_event_nonpayable$_t_string_memory_ptr_$_t_uint256_$returns$__$", "typeString": "function (string memory,uint256)" } }, "id": 1227, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "5346:31:2", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, "id": 1228, "nodeType": "EmitStatement", "src": "5341:36:2" }, { "eventCall": { "arguments": [ { "hexValue": "2020202041637475616c", "id": 1230, "isConstant": false, "isLValue": false, "isPure": true, "kind": "string", "lValueRequested": false, "nodeType": "Literal", "src": "5411:12:2", "typeDescriptions": { "typeIdentifier": "t_stringliteral_d7896f3f645b3ba89da46bf231a5df16e525e587a84bc9b284dfb39958fb219b", "typeString": "literal_string \" Actual\"" }, "value": " Actual" }, { "id": 1231, "name": "a", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 1212, "src": "5425:1:2", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } } ], "expression": { "argumentTypes": [ { "typeIdentifier": "t_stringliteral_d7896f3f645b3ba89da46bf231a5df16e525e587a84bc9b284dfb39958fb219b", "typeString": "literal_string \" Actual\"" }, { "typeIdentifier": "t_uint256", "typeString": "uint256" } ], "id": 1229, "name": "log_named_uint", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 799, "src": "5396:14:2", "typeDescriptions": { "typeIdentifier": "t_function_event_nonpayable$_t_string_memory_ptr_$_t_uint256_$returns$__$", "typeString": "function (string memory,uint256)" } }, "id": 1232, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "5396:31:2", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, "id": 1233, "nodeType": "EmitStatement", "src": "5391:36:2" }, { "expression": { "arguments": [], "expression": { "argumentTypes": [], "id": 1234, "name": "fail", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 942, "src": "5441:4:2", "typeDescriptions": { "typeIdentifier": "t_function_internal_nonpayable$__$returns$__$", "typeString": "function ()" } }, "id": 1235, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "5441:6:2", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, "id": 1236, "nodeType": "ExpressionStatement", "src": "5441:6:2" } ] } } ] }, "implemented": true, "kind": "function", "modifiers": [], "name": "assertEq", "nameLocation": "5211:8:2", "parameters": { "id": 1215, "nodeType": "ParameterList", "parameters": [ { "constant": false, "id": 1212, "mutability": "mutable", "name": "a", "nameLocation": "5225:1:2", "nodeType": "VariableDeclaration", "scope": 1240, "src": "5220:6:2", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" }, "typeName": { "id": 1211, "name": "uint", "nodeType": "ElementaryTypeName", "src": "5220:4:2", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, "visibility": "internal" }, { "constant": false, "id": 1214, "mutability": "mutable", "name": "b", "nameLocation": "5233:1:2", "nodeType": "VariableDeclaration", "scope": 1240, "src": "5228:6:2", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" }, "typeName": { "id": 1213, "name": "uint", "nodeType": "ElementaryTypeName", "src": "5228:4:2", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, "visibility": "internal" } ], "src": "5219:16:2" }, "returnParameters": { "id": 1216, "nodeType": "ParameterList", "parameters": [], "src": "5245:0:2" }, "scope": 2512, "stateMutability": "nonpayable", "virtual": false, "visibility": "internal" }, { "id": 1265, "nodeType": "FunctionDefinition", "src": "5469:178:2", "nodes": [], "body": { "id": 1264, "nodeType": "Block", "src": "5531:116:2", "nodes": [], "statements": [ { "condition": { "commonType": { "typeIdentifier": "t_uint256", "typeString": "uint256" }, "id": 1251, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { "id": 1249, "name": "a", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 1242, "src": "5545:1:2", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, "nodeType": "BinaryOperation", "operator": "!=", "rightExpression": { "id": 1250, "name": "b", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 1244, "src": "5550:1:2", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, "src": "5545:6:2", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, "id": 1263, "nodeType": "IfStatement", "src": "5541:100:2", "trueBody": { "id": 1262, "nodeType": "Block", "src": "5553:88:2", "statements": [ { "eventCall": { "arguments": [ { "hexValue": "4572726f72", "id": 1253, "isConstant": false, "isLValue": false, "isPure": true, "kind": "string", "lValueRequested": false, "nodeType": "Literal", "src": "5589:7:2", "typeDescriptions": { "typeIdentifier": "t_stringliteral_e342daa49723ff3485f4ff5f755a17b8bc9c3c33bbd312ceee37c94eebfe45c1", "typeString": "literal_string \"Error\"" }, "value": "Error" }, { "id": 1254, "name": "err", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 1246, "src": "5598:3:2", "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": 1252, "name": "log_named_string", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 811, "src": "5572:16:2", "typeDescriptions": { "typeIdentifier": "t_function_event_nonpayable$_t_string_memory_ptr_$_t_string_memory_ptr_$returns$__$", "typeString": "function (string memory,string memory)" } }, "id": 1255, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "5572:30:2", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, "id": 1256, "nodeType": "EmitStatement", "src": "5567:35:2" }, { "expression": { "arguments": [ { "id": 1258, "name": "a", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 1242, "src": "5625:1:2", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, { "id": 1259, "name": "b", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 1244, "src": "5628:1:2", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } } ], "expression": { "argumentTypes": [ { "typeIdentifier": "t_uint256", "typeString": "uint256" }, { "typeIdentifier": "t_uint256", "typeString": "uint256" } ], "id": 1257, "name": "assertEq", "nodeType": "Identifier", "overloadedDeclarations": [ 1046, 1071, 1101, 1126, 1185, 1210, 1240, 1265, 2365, 2400 ], "referencedDeclaration": 1240, "src": "5616:8:2", "typeDescriptions": { "typeIdentifier": "t_function_internal_nonpayable$_t_uint256_$_t_uint256_$returns$__$", "typeString": "function (uint256,uint256)" } }, "id": 1260, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "5616:14:2", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, "id": 1261, "nodeType": "ExpressionStatement", "src": "5616:14:2" } ] } } ] }, "implemented": true, "kind": "function", "modifiers": [], "name": "assertEq", "nameLocation": "5478:8:2", "parameters": { "id": 1247, "nodeType": "ParameterList", "parameters": [ { "constant": false, "id": 1242, "mutability": "mutable", "name": "a", "nameLocation": "5492:1:2", "nodeType": "VariableDeclaration", "scope": 1265, "src": "5487:6:2", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" }, "typeName": { "id": 1241, "name": "uint", "nodeType": "ElementaryTypeName", "src": "5487:4:2", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, "visibility": "internal" }, { "constant": false, "id": 1244, "mutability": "mutable", "name": "b", "nameLocation": "5500:1:2", "nodeType": "VariableDeclaration", "scope": 1265, "src": "5495:6:2", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" }, "typeName": { "id": 1243, "name": "uint", "nodeType": "ElementaryTypeName", "src": "5495:4:2", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, "visibility": "internal" }, { "constant": false, "id": 1246, "mutability": "mutable", "name": "err", "nameLocation": "5517:3:2", "nodeType": "VariableDeclaration", "scope": 1265, "src": "5503:17:2", "stateVariable": false, "storageLocation": "memory", "typeDescriptions": { "typeIdentifier": "t_string_memory_ptr", "typeString": "string" }, "typeName": { "id": 1245, "name": "string", "nodeType": "ElementaryTypeName", "src": "5503:6:2", "typeDescriptions": { "typeIdentifier": "t_string_storage_ptr", "typeString": "string" } }, "visibility": "internal" } ], "src": "5486:35:2" }, "returnParameters": { "id": 1248, "nodeType": "ParameterList", "parameters": [], "src": "5531:0:2" }, "scope": 2512, "stateMutability": "nonpayable", "virtual": false, "visibility": "internal" }, { "id": 1299, "nodeType": "FunctionDefinition", "src": "5652:323:2", "nodes": [], "body": { "id": 1298, "nodeType": "Block", "src": "5715:260:2", "nodes": [], "statements": [ { "condition": { "commonType": { "typeIdentifier": "t_int256", "typeString": "int256" }, "id": 1276, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { "id": 1274, "name": "a", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 1267, "src": "5729:1:2", "typeDescriptions": { "typeIdentifier": "t_int256", "typeString": "int256" } }, "nodeType": "BinaryOperation", "operator": "!=", "rightExpression": { "id": 1275, "name": "b", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 1269, "src": "5734:1:2", "typeDescriptions": { "typeIdentifier": "t_int256", "typeString": "int256" } }, "src": "5729:6:2", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, "id": 1297, "nodeType": "IfStatement", "src": "5725:244:2", "trueBody": { "id": 1296, "nodeType": "Block", "src": "5737:232:2", "statements": [ { "eventCall": { "arguments": [ { "hexValue": "4572726f723a2061203d3d2062206e6f7420736174697366696564205b646563696d616c20696e745d", "id": 1278, "isConstant": false, "isLValue": false, "isPure": true, "kind": "string", "lValueRequested": false, "nodeType": "Literal", "src": "5760:43:2", "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": 1277, "name": "log", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 731, "src": "5756:3:2", "typeDescriptions": { "typeIdentifier": "t_function_event_nonpayable$_t_string_memory_ptr_$returns$__$", "typeString": "function (string memory)" } }, "id": 1279, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "5756:48:2", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, "id": 1280, "nodeType": "EmitStatement", "src": "5751:53:2" }, { "eventCall": { "arguments": [ { "hexValue": "20204578706563746564", "id": 1282, "isConstant": false, "isLValue": false, "isPure": true, "kind": "string", "lValueRequested": false, "nodeType": "Literal", "src": "5845:12:2", "typeDescriptions": { "typeIdentifier": "t_stringliteral_42fa07d7c51ce5de92a0fc65dbf7e7800814fd01c258dc50e84d5be59184bf0b", "typeString": "literal_string \" Expected\"" }, "value": " Expected" }, { "id": 1283, "name": "b", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 1269, "src": "5859:1:2", "typeDescriptions": { "typeIdentifier": "t_int256", "typeString": "int256" } }, { "id": 1284, "name": "decimals", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 1271, "src": "5862:8:2", "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": 1281, "name": "log_named_decimal_int", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 779, "src": "5823:21:2", "typeDescriptions": { "typeIdentifier": "t_function_event_nonpayable$_t_string_memory_ptr_$_t_int256_$_t_uint256_$returns$__$", "typeString": "function (string memory,int256,uint256)" } }, "id": 1285, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "5823:48:2", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, "id": 1286, "nodeType": "EmitStatement", "src": "5818:53:2" }, { "eventCall": { "arguments": [ { "hexValue": "2020202041637475616c", "id": 1288, "isConstant": false, "isLValue": false, "isPure": true, "kind": "string", "lValueRequested": false, "nodeType": "Literal", "src": "5912:12:2", "typeDescriptions": { "typeIdentifier": "t_stringliteral_d7896f3f645b3ba89da46bf231a5df16e525e587a84bc9b284dfb39958fb219b", "typeString": "literal_string \" Actual\"" }, "value": " Actual" }, { "id": 1289, "name": "a", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 1267, "src": "5926:1:2", "typeDescriptions": { "typeIdentifier": "t_int256", "typeString": "int256" } }, { "id": 1290, "name": "decimals", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 1271, "src": "5929:8:2", "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": 1287, "name": "log_named_decimal_int", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 779, "src": "5890:21:2", "typeDescriptions": { "typeIdentifier": "t_function_event_nonpayable$_t_string_memory_ptr_$_t_int256_$_t_uint256_$returns$__$", "typeString": "function (string memory,int256,uint256)" } }, "id": 1291, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "5890:48:2", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, "id": 1292, "nodeType": "EmitStatement", "src": "5885:53:2" }, { "expression": { "arguments": [], "expression": { "argumentTypes": [], "id": 1293, "name": "fail", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 942, "src": "5952:4:2", "typeDescriptions": { "typeIdentifier": "t_function_internal_nonpayable$__$returns$__$", "typeString": "function ()" } }, "id": 1294, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "5952:6:2", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, "id": 1295, "nodeType": "ExpressionStatement", "src": "5952:6:2" } ] } } ] }, "implemented": true, "kind": "function", "modifiers": [], "name": "assertEqDecimal", "nameLocation": "5661:15:2", "parameters": { "id": 1272, "nodeType": "ParameterList", "parameters": [ { "constant": false, "id": 1267, "mutability": "mutable", "name": "a", "nameLocation": "5681:1:2", "nodeType": "VariableDeclaration", "scope": 1299, "src": "5677:5:2", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { "typeIdentifier": "t_int256", "typeString": "int256" }, "typeName": { "id": 1266, "name": "int", "nodeType": "ElementaryTypeName", "src": "5677:3:2", "typeDescriptions": { "typeIdentifier": "t_int256", "typeString": "int256" } }, "visibility": "internal" }, { "constant": false, "id": 1269, "mutability": "mutable", "name": "b", "nameLocation": "5688:1:2", "nodeType": "VariableDeclaration", "scope": 1299, "src": "5684:5:2", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { "typeIdentifier": "t_int256", "typeString": "int256" }, "typeName": { "id": 1268, "name": "int", "nodeType": "ElementaryTypeName", "src": "5684:3:2", "typeDescriptions": { "typeIdentifier": "t_int256", "typeString": "int256" } }, "visibility": "internal" }, { "constant": false, "id": 1271, "mutability": "mutable", "name": "decimals", "nameLocation": "5696:8:2", "nodeType": "VariableDeclaration", "scope": 1299, "src": "5691:13:2", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" }, "typeName": { "id": 1270, "name": "uint", "nodeType": "ElementaryTypeName", "src": "5691:4:2", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, "visibility": "internal" } ], "src": "5676:29:2" }, "returnParameters": { "id": 1273, "nodeType": "ParameterList", "parameters": [], "src": "5715:0:2" }, "scope": 2512, "stateMutability": "nonpayable", "virtual": false, "visibility": "internal" }, { "id": 1327, "nodeType": "FunctionDefinition", "src": "5980:215:2", "nodes": [], "body": { "id": 1326, "nodeType": "Block", "src": "6062:133:2", "nodes": [], "statements": [ { "condition": { "commonType": { "typeIdentifier": "t_int256", "typeString": "int256" }, "id": 1312, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { "id": 1310, "name": "a", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 1301, "src": "6076:1:2", "typeDescriptions": { "typeIdentifier": "t_int256", "typeString": "int256" } }, "nodeType": "BinaryOperation", "operator": "!=", "rightExpression": { "id": 1311, "name": "b", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 1303, "src": "6081:1:2", "typeDescriptions": { "typeIdentifier": "t_int256", "typeString": "int256" } }, "src": "6076:6:2", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, "id": 1325, "nodeType": "IfStatement", "src": "6072:117:2", "trueBody": { "id": 1324, "nodeType": "Block", "src": "6084:105:2", "statements": [ { "eventCall": { "arguments": [ { "hexValue": "4572726f72", "id": 1314, "isConstant": false, "isLValue": false, "isPure": true, "kind": "string", "lValueRequested": false, "nodeType": "Literal", "src": "6120:7:2", "typeDescriptions": { "typeIdentifier": "t_stringliteral_e342daa49723ff3485f4ff5f755a17b8bc9c3c33bbd312ceee37c94eebfe45c1", "typeString": "literal_string \"Error\"" }, "value": "Error" }, { "id": 1315, "name": "err", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 1307, "src": "6129:3:2", "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": 1313, "name": "log_named_string", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 811, "src": "6103:16:2", "typeDescriptions": { "typeIdentifier": "t_function_event_nonpayable$_t_string_memory_ptr_$_t_string_memory_ptr_$returns$__$", "typeString": "function (string memory,string memory)" } }, "id": 1316, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "6103:30:2", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, "id": 1317, "nodeType": "EmitStatement", "src": "6098:35:2" }, { "expression": { "arguments": [ { "id": 1319, "name": "a", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 1301, "src": "6163:1:2", "typeDescriptions": { "typeIdentifier": "t_int256", "typeString": "int256" } }, { "id": 1320, "name": "b", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 1303, "src": "6166:1:2", "typeDescriptions": { "typeIdentifier": "t_int256", "typeString": "int256" } }, { "id": 1321, "name": "decimals", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 1305, "src": "6169:8:2", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } } ], "expression": { "argumentTypes": [ { "typeIdentifier": "t_int256", "typeString": "int256" }, { "typeIdentifier": "t_int256", "typeString": "int256" }, { "typeIdentifier": "t_uint256", "typeString": "uint256" } ], "id": 1318, "name": "assertEqDecimal", "nodeType": "Identifier", "overloadedDeclarations": [ 1299, 1327, 1361, 1389 ], "referencedDeclaration": 1299, "src": "6147:15:2", "typeDescriptions": { "typeIdentifier": "t_function_internal_nonpayable$_t_int256_$_t_int256_$_t_uint256_$returns$__$", "typeString": "function (int256,int256,uint256)" } }, "id": 1322, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "6147:31:2", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, "id": 1323, "nodeType": "ExpressionStatement", "src": "6147:31:2" } ] } } ] }, "implemented": true, "kind": "function", "modifiers": [], "name": "assertEqDecimal", "nameLocation": "5989:15:2", "parameters": { "id": 1308, "nodeType": "ParameterList", "parameters": [ { "constant": false, "id": 1301, "mutability": "mutable", "name": "a", "nameLocation": "6009:1:2", "nodeType": "VariableDeclaration", "scope": 1327, "src": "6005:5:2", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { "typeIdentifier": "t_int256", "typeString": "int256" }, "typeName": { "id": 1300, "name": "int", "nodeType": "ElementaryTypeName", "src": "6005:3:2", "typeDescriptions": { "typeIdentifier": "t_int256", "typeString": "int256" } }, "visibility": "internal" }, { "constant": false, "id": 1303, "mutability": "mutable", "name": "b", "nameLocation": "6016:1:2", "nodeType": "VariableDeclaration", "scope": 1327, "src": "6012:5:2", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { "typeIdentifier": "t_int256", "typeString": "int256" }, "typeName": { "id": 1302, "name": "int", "nodeType": "ElementaryTypeName", "src": "6012:3:2", "typeDescriptions": { "typeIdentifier": "t_int256", "typeString": "int256" } }, "visibility": "internal" }, { "constant": false, "id": 1305, "mutability": "mutable", "name": "decimals", "nameLocation": "6024:8:2", "nodeType": "VariableDeclaration", "scope": 1327, "src": "6019:13:2", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" }, "typeName": { "id": 1304, "name": "uint", "nodeType": "ElementaryTypeName", "src": "6019:4:2", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, "visibility": "internal" }, { "constant": false, "id": 1307, "mutability": "mutable", "name": "err", "nameLocation": "6048:3:2", "nodeType": "VariableDeclaration", "scope": 1327, "src": "6034:17:2", "stateVariable": false, "storageLocation": "memory", "typeDescriptions": { "typeIdentifier": "t_string_memory_ptr", "typeString": "string" }, "typeName": { "id": 1306, "name": "string", "nodeType": "ElementaryTypeName", "src": "6034:6:2", "typeDescriptions": { "typeIdentifier": "t_string_storage_ptr", "typeString": "string" } }, "visibility": "internal" } ], "src": "6004:48:2" }, "returnParameters": { "id": 1309, "nodeType": "ParameterList", "parameters": [], "src": "6062:0:2" }, "scope": 2512, "stateMutability": "nonpayable", "virtual": false, "visibility": "internal" }, { "id": 1361, "nodeType": "FunctionDefinition", "src": "6200:328:2", "nodes": [], "body": { "id": 1360, "nodeType": "Block", "src": "6265:263:2", "nodes": [], "statements": [ { "condition": { "commonType": { "typeIdentifier": "t_uint256", "typeString": "uint256" }, "id": 1338, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { "id": 1336, "name": "a", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 1329, "src": "6279:1:2", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, "nodeType": "BinaryOperation", "operator": "!=", "rightExpression": { "id": 1337, "name": "b", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 1331, "src": "6284:1:2", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, "src": "6279:6:2", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, "id": 1359, "nodeType": "IfStatement", "src": "6275:247:2", "trueBody": { "id": 1358, "nodeType": "Block", "src": "6287:235:2", "statements": [ { "eventCall": { "arguments": [ { "hexValue": "4572726f723a2061203d3d2062206e6f7420736174697366696564205b646563696d616c2075696e745d", "id": 1340, "isConstant": false, "isLValue": false, "isPure": true, "kind": "string", "lValueRequested": false, "nodeType": "Literal", "src": "6310:44:2", "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": 1339, "name": "log", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 731, "src": "6306:3:2", "typeDescriptions": { "typeIdentifier": "t_function_event_nonpayable$_t_string_memory_ptr_$returns$__$", "typeString": "function (string memory)" } }, "id": 1341, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "6306:49:2", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, "id": 1342, "nodeType": "EmitStatement", "src": "6301:54:2" }, { "eventCall": { "arguments": [ { "hexValue": "20204578706563746564", "id": 1344, "isConstant": false, "isLValue": false, "isPure": true, "kind": "string", "lValueRequested": false, "nodeType": "Literal", "src": "6397:12:2", "typeDescriptions": { "typeIdentifier": "t_stringliteral_42fa07d7c51ce5de92a0fc65dbf7e7800814fd01c258dc50e84d5be59184bf0b", "typeString": "literal_string \" Expected\"" }, "value": " Expected" }, { "id": 1345, "name": "b", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 1331, "src": "6411:1:2", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, { "id": 1346, "name": "decimals", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 1333, "src": "6414:8:2", "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": 1343, "name": "log_named_decimal_uint", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 787, "src": "6374:22:2", "typeDescriptions": { "typeIdentifier": "t_function_event_nonpayable$_t_string_memory_ptr_$_t_uint256_$_t_uint256_$returns$__$", "typeString": "function (string memory,uint256,uint256)" } }, "id": 1347, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "6374:49:2", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, "id": 1348, "nodeType": "EmitStatement", "src": "6369:54:2" }, { "eventCall": { "arguments": [ { "hexValue": "2020202041637475616c", "id": 1350, "isConstant": false, "isLValue": false, "isPure": true, "kind": "string", "lValueRequested": false, "nodeType": "Literal", "src": "6465:12:2", "typeDescriptions": { "typeIdentifier": "t_stringliteral_d7896f3f645b3ba89da46bf231a5df16e525e587a84bc9b284dfb39958fb219b", "typeString": "literal_string \" Actual\"" }, "value": " Actual" }, { "id": 1351, "name": "a", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 1329, "src": "6479:1:2", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, { "id": 1352, "name": "decimals", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 1333, "src": "6482:8:2", "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": 1349, "name": "log_named_decimal_uint", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 787, "src": "6442:22:2", "typeDescriptions": { "typeIdentifier": "t_function_event_nonpayable$_t_string_memory_ptr_$_t_uint256_$_t_uint256_$returns$__$", "typeString": "function (string memory,uint256,uint256)" } }, "id": 1353, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "6442:49:2", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, "id": 1354, "nodeType": "EmitStatement", "src": "6437:54:2" }, { "expression": { "arguments": [], "expression": { "argumentTypes": [], "id": 1355, "name": "fail", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 942, "src": "6505:4:2", "typeDescriptions": { "typeIdentifier": "t_function_internal_nonpayable$__$returns$__$", "typeString": "function ()" } }, "id": 1356, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "6505:6:2", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, "id": 1357, "nodeType": "ExpressionStatement", "src": "6505:6:2" } ] } } ] }, "implemented": true, "kind": "function", "modifiers": [], "name": "assertEqDecimal", "nameLocation": "6209:15:2", "parameters": { "id": 1334, "nodeType": "ParameterList", "parameters": [ { "constant": false, "id": 1329, "mutability": "mutable", "name": "a", "nameLocation": "6230:1:2", "nodeType": "VariableDeclaration", "scope": 1361, "src": "6225:6:2", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" }, "typeName": { "id": 1328, "name": "uint", "nodeType": "ElementaryTypeName", "src": "6225:4:2", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, "visibility": "internal" }, { "constant": false, "id": 1331, "mutability": "mutable", "name": "b", "nameLocation": "6238:1:2", "nodeType": "VariableDeclaration", "scope": 1361, "src": "6233:6:2", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" }, "typeName": { "id": 1330, "name": "uint", "nodeType": "ElementaryTypeName", "src": "6233:4:2", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, "visibility": "internal" }, { "constant": false, "id": 1333, "mutability": "mutable", "name": "decimals", "nameLocation": "6246:8:2", "nodeType": "VariableDeclaration", "scope": 1361, "src": "6241:13:2", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" }, "typeName": { "id": 1332, "name": "uint", "nodeType": "ElementaryTypeName", "src": "6241:4:2", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, "visibility": "internal" } ], "src": "6224:31:2" }, "returnParameters": { "id": 1335, "nodeType": "ParameterList", "parameters": [], "src": "6265:0:2" }, "scope": 2512, "stateMutability": "nonpayable", "virtual": false, "visibility": "internal" }, { "id": 1389, "nodeType": "FunctionDefinition", "src": "6533:217:2", "nodes": [], "body": { "id": 1388, "nodeType": "Block", "src": "6617:133:2", "nodes": [], "statements": [ { "condition": { "commonType": { "typeIdentifier": "t_uint256", "typeString": "uint256" }, "id": 1374, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { "id": 1372, "name": "a", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 1363, "src": "6631:1:2", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, "nodeType": "BinaryOperation", "operator": "!=", "rightExpression": { "id": 1373, "name": "b", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 1365, "src": "6636:1:2", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, "src": "6631:6:2", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, "id": 1387, "nodeType": "IfStatement", "src": "6627:117:2", "trueBody": { "id": 1386, "nodeType": "Block", "src": "6639:105:2", "statements": [ { "eventCall": { "arguments": [ { "hexValue": "4572726f72", "id": 1376, "isConstant": false, "isLValue": false, "isPure": true, "kind": "string", "lValueRequested": false, "nodeType": "Literal", "src": "6675:7:2", "typeDescriptions": { "typeIdentifier": "t_stringliteral_e342daa49723ff3485f4ff5f755a17b8bc9c3c33bbd312ceee37c94eebfe45c1", "typeString": "literal_string \"Error\"" }, "value": "Error" }, { "id": 1377, "name": "err", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 1369, "src": "6684:3:2", "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": 1375, "name": "log_named_string", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 811, "src": "6658:16:2", "typeDescriptions": { "typeIdentifier": "t_function_event_nonpayable$_t_string_memory_ptr_$_t_string_memory_ptr_$returns$__$", "typeString": "function (string memory,string memory)" } }, "id": 1378, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "6658:30:2", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, "id": 1379, "nodeType": "EmitStatement", "src": "6653:35:2" }, { "expression": { "arguments": [ { "id": 1381, "name": "a", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 1363, "src": "6718:1:2", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, { "id": 1382, "name": "b", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 1365, "src": "6721:1:2", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, { "id": 1383, "name": "decimals", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 1367, "src": "6724:8:2", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } } ], "expression": { "argumentTypes": [ { "typeIdentifier": "t_uint256", "typeString": "uint256" }, { "typeIdentifier": "t_uint256", "typeString": "uint256" }, { "typeIdentifier": "t_uint256", "typeString": "uint256" } ], "id": 1380, "name": "assertEqDecimal", "nodeType": "Identifier", "overloadedDeclarations": [ 1299, 1327, 1361, 1389 ], "referencedDeclaration": 1361, "src": "6702:15:2", "typeDescriptions": { "typeIdentifier": "t_function_internal_nonpayable$_t_uint256_$_t_uint256_$_t_uint256_$returns$__$", "typeString": "function (uint256,uint256,uint256)" } }, "id": 1384, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "6702:31:2", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, "id": 1385, "nodeType": "ExpressionStatement", "src": "6702:31:2" } ] } } ] }, "implemented": true, "kind": "function", "modifiers": [], "name": "assertEqDecimal", "nameLocation": "6542:15:2", "parameters": { "id": 1370, "nodeType": "ParameterList", "parameters": [ { "constant": false, "id": 1363, "mutability": "mutable", "name": "a", "nameLocation": "6563:1:2", "nodeType": "VariableDeclaration", "scope": 1389, "src": "6558:6:2", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" }, "typeName": { "id": 1362, "name": "uint", "nodeType": "ElementaryTypeName", "src": "6558:4:2", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, "visibility": "internal" }, { "constant": false, "id": 1365, "mutability": "mutable", "name": "b", "nameLocation": "6571:1:2", "nodeType": "VariableDeclaration", "scope": 1389, "src": "6566:6:2", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" }, "typeName": { "id": 1364, "name": "uint", "nodeType": "ElementaryTypeName", "src": "6566:4:2", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, "visibility": "internal" }, { "constant": false, "id": 1367, "mutability": "mutable", "name": "decimals", "nameLocation": "6579:8:2", "nodeType": "VariableDeclaration", "scope": 1389, "src": "6574:13:2", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" }, "typeName": { "id": 1366, "name": "uint", "nodeType": "ElementaryTypeName", "src": "6574:4:2", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, "visibility": "internal" }, { "constant": false, "id": 1369, "mutability": "mutable", "name": "err", "nameLocation": "6603:3:2", "nodeType": "VariableDeclaration", "scope": 1389, "src": "6589:17:2", "stateVariable": false, "storageLocation": "memory", "typeDescriptions": { "typeIdentifier": "t_string_memory_ptr", "typeString": "string" }, "typeName": { "id": 1368, "name": "string", "nodeType": "ElementaryTypeName", "src": "6589:6:2", "typeDescriptions": { "typeIdentifier": "t_string_storage_ptr", "typeString": "string" } }, "visibility": "internal" } ], "src": "6557:50:2" }, "returnParameters": { "id": 1371, "nodeType": "ParameterList", "parameters": [], "src": "6617:0:2" }, "scope": 2512, "stateMutability": "nonpayable", "virtual": false, "visibility": "internal" }, { "id": 1419, "nodeType": "FunctionDefinition", "src": "6756:259:2", "nodes": [], "body": { "id": 1418, "nodeType": "Block", "src": "6799:216:2", "nodes": [], "statements": [ { "condition": { "commonType": { "typeIdentifier": "t_uint256", "typeString": "uint256" }, "id": 1398, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { "id": 1396, "name": "a", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 1391, "src": "6813:1:2", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, "nodeType": "BinaryOperation", "operator": "<=", "rightExpression": { "id": 1397, "name": "b", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 1393, "src": "6818:1:2", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, "src": "6813:6:2", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, "id": 1417, "nodeType": "IfStatement", "src": "6809:200:2", "trueBody": { "id": 1416, "nodeType": "Block", "src": "6821:188:2", "statements": [ { "eventCall": { "arguments": [ { "hexValue": "4572726f723a2061203e2062206e6f7420736174697366696564205b75696e745d", "id": 1400, "isConstant": false, "isLValue": false, "isPure": true, "kind": "string", "lValueRequested": false, "nodeType": "Literal", "src": "6844:35:2", "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": 1399, "name": "log", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 731, "src": "6840:3:2", "typeDescriptions": { "typeIdentifier": "t_function_event_nonpayable$_t_string_memory_ptr_$returns$__$", "typeString": "function (string memory)" } }, "id": 1401, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "6840:40:2", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, "id": 1402, "nodeType": "EmitStatement", "src": "6835:45:2" }, { "eventCall": { "arguments": [ { "hexValue": "202056616c75652061", "id": 1404, "isConstant": false, "isLValue": false, "isPure": true, "kind": "string", "lValueRequested": false, "nodeType": "Literal", "src": "6914:11:2", "typeDescriptions": { "typeIdentifier": "t_stringliteral_c592b529b874569f165479a5a4380dedf000796f11e04035f76bfa7310b31d26", "typeString": "literal_string \" Value a\"" }, "value": " Value a" }, { "id": 1405, "name": "a", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 1391, "src": "6927:1:2", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } } ], "expression": { "argumentTypes": [ { "typeIdentifier": "t_stringliteral_c592b529b874569f165479a5a4380dedf000796f11e04035f76bfa7310b31d26", "typeString": "literal_string \" Value a\"" }, { "typeIdentifier": "t_uint256", "typeString": "uint256" } ], "id": 1403, "name": "log_named_uint", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 799, "src": "6899:14:2", "typeDescriptions": { "typeIdentifier": "t_function_event_nonpayable$_t_string_memory_ptr_$_t_uint256_$returns$__$", "typeString": "function (string memory,uint256)" } }, "id": 1406, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "6899:30:2", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, "id": 1407, "nodeType": "EmitStatement", "src": "6894:35:2" }, { "eventCall": { "arguments": [ { "hexValue": "202056616c75652062", "id": 1409, "isConstant": false, "isLValue": false, "isPure": true, "kind": "string", "lValueRequested": false, "nodeType": "Literal", "src": "6963:11:2", "typeDescriptions": { "typeIdentifier": "t_stringliteral_e4b1d025132960c3fb1a582cf2366864dc416744d1b9770aa69fe3749623ebc3", "typeString": "literal_string \" Value b\"" }, "value": " Value b" }, { "id": 1410, "name": "b", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 1393, "src": "6976:1:2", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } } ], "expression": { "argumentTypes": [ { "typeIdentifier": "t_stringliteral_e4b1d025132960c3fb1a582cf2366864dc416744d1b9770aa69fe3749623ebc3", "typeString": "literal_string \" Value b\"" }, { "typeIdentifier": "t_uint256", "typeString": "uint256" } ], "id": 1408, "name": "log_named_uint", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 799, "src": "6948:14:2", "typeDescriptions": { "typeIdentifier": "t_function_event_nonpayable$_t_string_memory_ptr_$_t_uint256_$returns$__$", "typeString": "function (string memory,uint256)" } }, "id": 1411, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "6948:30:2", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, "id": 1412, "nodeType": "EmitStatement", "src": "6943:35:2" }, { "expression": { "arguments": [], "expression": { "argumentTypes": [], "id": 1413, "name": "fail", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 942, "src": "6992:4:2", "typeDescriptions": { "typeIdentifier": "t_function_internal_nonpayable$__$returns$__$", "typeString": "function ()" } }, "id": 1414, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "6992:6:2", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, "id": 1415, "nodeType": "ExpressionStatement", "src": "6992:6:2" } ] } } ] }, "implemented": true, "kind": "function", "modifiers": [], "name": "assertGt", "nameLocation": "6765:8:2", "parameters": { "id": 1394, "nodeType": "ParameterList", "parameters": [ { "constant": false, "id": 1391, "mutability": "mutable", "name": "a", "nameLocation": "6779:1:2", "nodeType": "VariableDeclaration", "scope": 1419, "src": "6774:6:2", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" }, "typeName": { "id": 1390, "name": "uint", "nodeType": "ElementaryTypeName", "src": "6774:4:2", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, "visibility": "internal" }, { "constant": false, "id": 1393, "mutability": "mutable", "name": "b", "nameLocation": "6787:1:2", "nodeType": "VariableDeclaration", "scope": 1419, "src": "6782:6:2", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" }, "typeName": { "id": 1392, "name": "uint", "nodeType": "ElementaryTypeName", "src": "6782:4:2", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, "visibility": "internal" } ], "src": "6773:16:2" }, "returnParameters": { "id": 1395, "nodeType": "ParameterList", "parameters": [], "src": "6799:0:2" }, "scope": 2512, "stateMutability": "nonpayable", "virtual": false, "visibility": "internal" }, { "id": 1444, "nodeType": "FunctionDefinition", "src": "7020:178:2", "nodes": [], "body": { "id": 1443, "nodeType": "Block", "src": "7082:116:2", "nodes": [], "statements": [ { "condition": { "commonType": { "typeIdentifier": "t_uint256", "typeString": "uint256" }, "id": 1430, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { "id": 1428, "name": "a", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 1421, "src": "7096:1:2", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, "nodeType": "BinaryOperation", "operator": "<=", "rightExpression": { "id": 1429, "name": "b", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 1423, "src": "7101:1:2", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, "src": "7096:6:2", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, "id": 1442, "nodeType": "IfStatement", "src": "7092:100:2", "trueBody": { "id": 1441, "nodeType": "Block", "src": "7104:88:2", "statements": [ { "eventCall": { "arguments": [ { "hexValue": "4572726f72", "id": 1432, "isConstant": false, "isLValue": false, "isPure": true, "kind": "string", "lValueRequested": false, "nodeType": "Literal", "src": "7140:7:2", "typeDescriptions": { "typeIdentifier": "t_stringliteral_e342daa49723ff3485f4ff5f755a17b8bc9c3c33bbd312ceee37c94eebfe45c1", "typeString": "literal_string \"Error\"" }, "value": "Error" }, { "id": 1433, "name": "err", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 1425, "src": "7149:3:2", "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": 1431, "name": "log_named_string", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 811, "src": "7123:16:2", "typeDescriptions": { "typeIdentifier": "t_function_event_nonpayable$_t_string_memory_ptr_$_t_string_memory_ptr_$returns$__$", "typeString": "function (string memory,string memory)" } }, "id": 1434, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "7123:30:2", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, "id": 1435, "nodeType": "EmitStatement", "src": "7118:35:2" }, { "expression": { "arguments": [ { "id": 1437, "name": "a", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 1421, "src": "7176:1:2", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, { "id": 1438, "name": "b", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 1423, "src": "7179:1:2", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } } ], "expression": { "argumentTypes": [ { "typeIdentifier": "t_uint256", "typeString": "uint256" }, { "typeIdentifier": "t_uint256", "typeString": "uint256" } ], "id": 1436, "name": "assertGt", "nodeType": "Identifier", "overloadedDeclarations": [ 1419, 1444, 1474, 1499 ], "referencedDeclaration": 1419, "src": "7167:8:2", "typeDescriptions": { "typeIdentifier": "t_function_internal_nonpayable$_t_uint256_$_t_uint256_$returns$__$", "typeString": "function (uint256,uint256)" } }, "id": 1439, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "7167:14:2", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, "id": 1440, "nodeType": "ExpressionStatement", "src": "7167:14:2" } ] } } ] }, "implemented": true, "kind": "function", "modifiers": [], "name": "assertGt", "nameLocation": "7029:8:2", "parameters": { "id": 1426, "nodeType": "ParameterList", "parameters": [ { "constant": false, "id": 1421, "mutability": "mutable", "name": "a", "nameLocation": "7043:1:2", "nodeType": "VariableDeclaration", "scope": 1444, "src": "7038:6:2", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" }, "typeName": { "id": 1420, "name": "uint", "nodeType": "ElementaryTypeName", "src": "7038:4:2", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, "visibility": "internal" }, { "constant": false, "id": 1423, "mutability": "mutable", "name": "b", "nameLocation": "7051:1:2", "nodeType": "VariableDeclaration", "scope": 1444, "src": "7046:6:2", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" }, "typeName": { "id": 1422, "name": "uint", "nodeType": "ElementaryTypeName", "src": "7046:4:2", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, "visibility": "internal" }, { "constant": false, "id": 1425, "mutability": "mutable", "name": "err", "nameLocation": "7068:3:2", "nodeType": "VariableDeclaration", "scope": 1444, "src": "7054:17:2", "stateVariable": false, "storageLocation": "memory", "typeDescriptions": { "typeIdentifier": "t_string_memory_ptr", "typeString": "string" }, "typeName": { "id": 1424, "name": "string", "nodeType": "ElementaryTypeName", "src": "7054:6:2", "typeDescriptions": { "typeIdentifier": "t_string_storage_ptr", "typeString": "string" } }, "visibility": "internal" } ], "src": "7037:35:2" }, "returnParameters": { "id": 1427, "nodeType": "ParameterList", "parameters": [], "src": "7082:0:2" }, "scope": 2512, "stateMutability": "nonpayable", "virtual": false, "visibility": "internal" }, { "id": 1474, "nodeType": "FunctionDefinition", "src": "7203:254:2", "nodes": [], "body": { "id": 1473, "nodeType": "Block", "src": "7244:213:2", "nodes": [], "statements": [ { "condition": { "commonType": { "typeIdentifier": "t_int256", "typeString": "int256" }, "id": 1453, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { "id": 1451, "name": "a", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 1446, "src": "7258:1:2", "typeDescriptions": { "typeIdentifier": "t_int256", "typeString": "int256" } }, "nodeType": "BinaryOperation", "operator": "<=", "rightExpression": { "id": 1452, "name": "b", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 1448, "src": "7263:1:2", "typeDescriptions": { "typeIdentifier": "t_int256", "typeString": "int256" } }, "src": "7258:6:2", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, "id": 1472, "nodeType": "IfStatement", "src": "7254:197:2", "trueBody": { "id": 1471, "nodeType": "Block", "src": "7266:185:2", "statements": [ { "eventCall": { "arguments": [ { "hexValue": "4572726f723a2061203e2062206e6f7420736174697366696564205b696e745d", "id": 1455, "isConstant": false, "isLValue": false, "isPure": true, "kind": "string", "lValueRequested": false, "nodeType": "Literal", "src": "7289:34:2", "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": 1454, "name": "log", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 731, "src": "7285:3:2", "typeDescriptions": { "typeIdentifier": "t_function_event_nonpayable$_t_string_memory_ptr_$returns$__$", "typeString": "function (string memory)" } }, "id": 1456, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "7285:39:2", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, "id": 1457, "nodeType": "EmitStatement", "src": "7280:44:2" }, { "eventCall": { "arguments": [ { "hexValue": "202056616c75652061", "id": 1459, "isConstant": false, "isLValue": false, "isPure": true, "kind": "string", "lValueRequested": false, "nodeType": "Literal", "src": "7357:11:2", "typeDescriptions": { "typeIdentifier": "t_stringliteral_c592b529b874569f165479a5a4380dedf000796f11e04035f76bfa7310b31d26", "typeString": "literal_string \" Value a\"" }, "value": " Value a" }, { "id": 1460, "name": "a", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 1446, "src": "7370:1:2", "typeDescriptions": { "typeIdentifier": "t_int256", "typeString": "int256" } } ], "expression": { "argumentTypes": [ { "typeIdentifier": "t_stringliteral_c592b529b874569f165479a5a4380dedf000796f11e04035f76bfa7310b31d26", "typeString": "literal_string \" Value a\"" }, { "typeIdentifier": "t_int256", "typeString": "int256" } ], "id": 1458, "name": "log_named_int", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 793, "src": "7343:13:2", "typeDescriptions": { "typeIdentifier": "t_function_event_nonpayable$_t_string_memory_ptr_$_t_int256_$returns$__$", "typeString": "function (string memory,int256)" } }, "id": 1461, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "7343:29:2", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, "id": 1462, "nodeType": "EmitStatement", "src": "7338:34:2" }, { "eventCall": { "arguments": [ { "hexValue": "202056616c75652062", "id": 1464, "isConstant": false, "isLValue": false, "isPure": true, "kind": "string", "lValueRequested": false, "nodeType": "Literal", "src": "7405:11:2", "typeDescriptions": { "typeIdentifier": "t_stringliteral_e4b1d025132960c3fb1a582cf2366864dc416744d1b9770aa69fe3749623ebc3", "typeString": "literal_string \" Value b\"" }, "value": " Value b" }, { "id": 1465, "name": "b", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 1448, "src": "7418:1:2", "typeDescriptions": { "typeIdentifier": "t_int256", "typeString": "int256" } } ], "expression": { "argumentTypes": [ { "typeIdentifier": "t_stringliteral_e4b1d025132960c3fb1a582cf2366864dc416744d1b9770aa69fe3749623ebc3", "typeString": "literal_string \" Value b\"" }, { "typeIdentifier": "t_int256", "typeString": "int256" } ], "id": 1463, "name": "log_named_int", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 793, "src": "7391:13:2", "typeDescriptions": { "typeIdentifier": "t_function_event_nonpayable$_t_string_memory_ptr_$_t_int256_$returns$__$", "typeString": "function (string memory,int256)" } }, "id": 1466, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "7391:29:2", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, "id": 1467, "nodeType": "EmitStatement", "src": "7386:34:2" }, { "expression": { "arguments": [], "expression": { "argumentTypes": [], "id": 1468, "name": "fail", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 942, "src": "7434:4:2", "typeDescriptions": { "typeIdentifier": "t_function_internal_nonpayable$__$returns$__$", "typeString": "function ()" } }, "id": 1469, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "7434:6:2", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, "id": 1470, "nodeType": "ExpressionStatement", "src": "7434:6:2" } ] } } ] }, "implemented": true, "kind": "function", "modifiers": [], "name": "assertGt", "nameLocation": "7212:8:2", "parameters": { "id": 1449, "nodeType": "ParameterList", "parameters": [ { "constant": false, "id": 1446, "mutability": "mutable", "name": "a", "nameLocation": "7225:1:2", "nodeType": "VariableDeclaration", "scope": 1474, "src": "7221:5:2", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { "typeIdentifier": "t_int256", "typeString": "int256" }, "typeName": { "id": 1445, "name": "int", "nodeType": "ElementaryTypeName", "src": "7221:3:2", "typeDescriptions": { "typeIdentifier": "t_int256", "typeString": "int256" } }, "visibility": "internal" }, { "constant": false, "id": 1448, "mutability": "mutable", "name": "b", "nameLocation": "7232:1:2", "nodeType": "VariableDeclaration", "scope": 1474, "src": "7228:5:2", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { "typeIdentifier": "t_int256", "typeString": "int256" }, "typeName": { "id": 1447, "name": "int", "nodeType": "ElementaryTypeName", "src": "7228:3:2", "typeDescriptions": { "typeIdentifier": "t_int256", "typeString": "int256" } }, "visibility": "internal" } ], "src": "7220:14:2" }, "returnParameters": { "id": 1450, "nodeType": "ParameterList", "parameters": [], "src": "7244:0:2" }, "scope": 2512, "stateMutability": "nonpayable", "virtual": false, "visibility": "internal" }, { "id": 1499, "nodeType": "FunctionDefinition", "src": "7462:176:2", "nodes": [], "body": { "id": 1498, "nodeType": "Block", "src": "7522:116:2", "nodes": [], "statements": [ { "condition": { "commonType": { "typeIdentifier": "t_int256", "typeString": "int256" }, "id": 1485, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { "id": 1483, "name": "a", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 1476, "src": "7536:1:2", "typeDescriptions": { "typeIdentifier": "t_int256", "typeString": "int256" } }, "nodeType": "BinaryOperation", "operator": "<=", "rightExpression": { "id": 1484, "name": "b", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 1478, "src": "7541:1:2", "typeDescriptions": { "typeIdentifier": "t_int256", "typeString": "int256" } }, "src": "7536:6:2", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, "id": 1497, "nodeType": "IfStatement", "src": "7532:100:2", "trueBody": { "id": 1496, "nodeType": "Block", "src": "7544:88:2", "statements": [ { "eventCall": { "arguments": [ { "hexValue": "4572726f72", "id": 1487, "isConstant": false, "isLValue": false, "isPure": true, "kind": "string", "lValueRequested": false, "nodeType": "Literal", "src": "7580:7:2", "typeDescriptions": { "typeIdentifier": "t_stringliteral_e342daa49723ff3485f4ff5f755a17b8bc9c3c33bbd312ceee37c94eebfe45c1", "typeString": "literal_string \"Error\"" }, "value": "Error" }, { "id": 1488, "name": "err", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 1480, "src": "7589:3:2", "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": 1486, "name": "log_named_string", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 811, "src": "7563:16:2", "typeDescriptions": { "typeIdentifier": "t_function_event_nonpayable$_t_string_memory_ptr_$_t_string_memory_ptr_$returns$__$", "typeString": "function (string memory,string memory)" } }, "id": 1489, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "7563:30:2", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, "id": 1490, "nodeType": "EmitStatement", "src": "7558:35:2" }, { "expression": { "arguments": [ { "id": 1492, "name": "a", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 1476, "src": "7616:1:2", "typeDescriptions": { "typeIdentifier": "t_int256", "typeString": "int256" } }, { "id": 1493, "name": "b", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 1478, "src": "7619:1:2", "typeDescriptions": { "typeIdentifier": "t_int256", "typeString": "int256" } } ], "expression": { "argumentTypes": [ { "typeIdentifier": "t_int256", "typeString": "int256" }, { "typeIdentifier": "t_int256", "typeString": "int256" } ], "id": 1491, "name": "assertGt", "nodeType": "Identifier", "overloadedDeclarations": [ 1419, 1444, 1474, 1499 ], "referencedDeclaration": 1474, "src": "7607:8:2", "typeDescriptions": { "typeIdentifier": "t_function_internal_nonpayable$_t_int256_$_t_int256_$returns$__$", "typeString": "function (int256,int256)" } }, "id": 1494, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "7607:14:2", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, "id": 1495, "nodeType": "ExpressionStatement", "src": "7607:14:2" } ] } } ] }, "implemented": true, "kind": "function", "modifiers": [], "name": "assertGt", "nameLocation": "7471:8:2", "parameters": { "id": 1481, "nodeType": "ParameterList", "parameters": [ { "constant": false, "id": 1476, "mutability": "mutable", "name": "a", "nameLocation": "7484:1:2", "nodeType": "VariableDeclaration", "scope": 1499, "src": "7480:5:2", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { "typeIdentifier": "t_int256", "typeString": "int256" }, "typeName": { "id": 1475, "name": "int", "nodeType": "ElementaryTypeName", "src": "7480:3:2", "typeDescriptions": { "typeIdentifier": "t_int256", "typeString": "int256" } }, "visibility": "internal" }, { "constant": false, "id": 1478, "mutability": "mutable", "name": "b", "nameLocation": "7491:1:2", "nodeType": "VariableDeclaration", "scope": 1499, "src": "7487:5:2", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { "typeIdentifier": "t_int256", "typeString": "int256" }, "typeName": { "id": 1477, "name": "int", "nodeType": "ElementaryTypeName", "src": "7487:3:2", "typeDescriptions": { "typeIdentifier": "t_int256", "typeString": "int256" } }, "visibility": "internal" }, { "constant": false, "id": 1480, "mutability": "mutable", "name": "err", "nameLocation": "7508:3:2", "nodeType": "VariableDeclaration", "scope": 1499, "src": "7494:17:2", "stateVariable": false, "storageLocation": "memory", "typeDescriptions": { "typeIdentifier": "t_string_memory_ptr", "typeString": "string" }, "typeName": { "id": 1479, "name": "string", "nodeType": "ElementaryTypeName", "src": "7494:6:2", "typeDescriptions": { "typeIdentifier": "t_string_storage_ptr", "typeString": "string" } }, "visibility": "internal" } ], "src": "7479:33:2" }, "returnParameters": { "id": 1482, "nodeType": "ParameterList", "parameters": [], "src": "7522:0:2" }, "scope": 2512, "stateMutability": "nonpayable", "virtual": false, "visibility": "internal" }, { "id": 1533, "nodeType": "FunctionDefinition", "src": "7643:320:2", "nodes": [], "body": { "id": 1532, "nodeType": "Block", "src": "7706:257:2", "nodes": [], "statements": [ { "condition": { "commonType": { "typeIdentifier": "t_int256", "typeString": "int256" }, "id": 1510, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { "id": 1508, "name": "a", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 1501, "src": "7720:1:2", "typeDescriptions": { "typeIdentifier": "t_int256", "typeString": "int256" } }, "nodeType": "BinaryOperation", "operator": "<=", "rightExpression": { "id": 1509, "name": "b", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 1503, "src": "7725:1:2", "typeDescriptions": { "typeIdentifier": "t_int256", "typeString": "int256" } }, "src": "7720:6:2", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, "id": 1531, "nodeType": "IfStatement", "src": "7716:241:2", "trueBody": { "id": 1530, "nodeType": "Block", "src": "7728:229:2", "statements": [ { "eventCall": { "arguments": [ { "hexValue": "4572726f723a2061203e2062206e6f7420736174697366696564205b646563696d616c20696e745d", "id": 1512, "isConstant": false, "isLValue": false, "isPure": true, "kind": "string", "lValueRequested": false, "nodeType": "Literal", "src": "7751:42:2", "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": 1511, "name": "log", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 731, "src": "7747:3:2", "typeDescriptions": { "typeIdentifier": "t_function_event_nonpayable$_t_string_memory_ptr_$returns$__$", "typeString": "function (string memory)" } }, "id": 1513, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "7747:47:2", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, "id": 1514, "nodeType": "EmitStatement", "src": "7742:52:2" }, { "eventCall": { "arguments": [ { "hexValue": "202056616c75652061", "id": 1516, "isConstant": false, "isLValue": false, "isPure": true, "kind": "string", "lValueRequested": false, "nodeType": "Literal", "src": "7835:11:2", "typeDescriptions": { "typeIdentifier": "t_stringliteral_c592b529b874569f165479a5a4380dedf000796f11e04035f76bfa7310b31d26", "typeString": "literal_string \" Value a\"" }, "value": " Value a" }, { "id": 1517, "name": "a", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 1501, "src": "7848:1:2", "typeDescriptions": { "typeIdentifier": "t_int256", "typeString": "int256" } }, { "id": 1518, "name": "decimals", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 1505, "src": "7851:8:2", "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": 1515, "name": "log_named_decimal_int", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 779, "src": "7813:21:2", "typeDescriptions": { "typeIdentifier": "t_function_event_nonpayable$_t_string_memory_ptr_$_t_int256_$_t_uint256_$returns$__$", "typeString": "function (string memory,int256,uint256)" } }, "id": 1519, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "7813:47:2", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, "id": 1520, "nodeType": "EmitStatement", "src": "7808:52:2" }, { "eventCall": { "arguments": [ { "hexValue": "202056616c75652062", "id": 1522, "isConstant": false, "isLValue": false, "isPure": true, "kind": "string", "lValueRequested": false, "nodeType": "Literal", "src": "7901:11:2", "typeDescriptions": { "typeIdentifier": "t_stringliteral_e4b1d025132960c3fb1a582cf2366864dc416744d1b9770aa69fe3749623ebc3", "typeString": "literal_string \" Value b\"" }, "value": " Value b" }, { "id": 1523, "name": "b", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 1503, "src": "7914:1:2", "typeDescriptions": { "typeIdentifier": "t_int256", "typeString": "int256" } }, { "id": 1524, "name": "decimals", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 1505, "src": "7917:8:2", "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": 1521, "name": "log_named_decimal_int", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 779, "src": "7879:21:2", "typeDescriptions": { "typeIdentifier": "t_function_event_nonpayable$_t_string_memory_ptr_$_t_int256_$_t_uint256_$returns$__$", "typeString": "function (string memory,int256,uint256)" } }, "id": 1525, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "7879:47:2", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, "id": 1526, "nodeType": "EmitStatement", "src": "7874:52:2" }, { "expression": { "arguments": [], "expression": { "argumentTypes": [], "id": 1527, "name": "fail", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 942, "src": "7940:4:2", "typeDescriptions": { "typeIdentifier": "t_function_internal_nonpayable$__$returns$__$", "typeString": "function ()" } }, "id": 1528, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "7940:6:2", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, "id": 1529, "nodeType": "ExpressionStatement", "src": "7940:6:2" } ] } } ] }, "implemented": true, "kind": "function", "modifiers": [], "name": "assertGtDecimal", "nameLocation": "7652:15:2", "parameters": { "id": 1506, "nodeType": "ParameterList", "parameters": [ { "constant": false, "id": 1501, "mutability": "mutable", "name": "a", "nameLocation": "7672:1:2", "nodeType": "VariableDeclaration", "scope": 1533, "src": "7668:5:2", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { "typeIdentifier": "t_int256", "typeString": "int256" }, "typeName": { "id": 1500, "name": "int", "nodeType": "ElementaryTypeName", "src": "7668:3:2", "typeDescriptions": { "typeIdentifier": "t_int256", "typeString": "int256" } }, "visibility": "internal" }, { "constant": false, "id": 1503, "mutability": "mutable", "name": "b", "nameLocation": "7679:1:2", "nodeType": "VariableDeclaration", "scope": 1533, "src": "7675:5:2", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { "typeIdentifier": "t_int256", "typeString": "int256" }, "typeName": { "id": 1502, "name": "int", "nodeType": "ElementaryTypeName", "src": "7675:3:2", "typeDescriptions": { "typeIdentifier": "t_int256", "typeString": "int256" } }, "visibility": "internal" }, { "constant": false, "id": 1505, "mutability": "mutable", "name": "decimals", "nameLocation": "7687:8:2", "nodeType": "VariableDeclaration", "scope": 1533, "src": "7682:13:2", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" }, "typeName": { "id": 1504, "name": "uint", "nodeType": "ElementaryTypeName", "src": "7682:4:2", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, "visibility": "internal" } ], "src": "7667:29:2" }, "returnParameters": { "id": 1507, "nodeType": "ParameterList", "parameters": [], "src": "7706:0:2" }, "scope": 2512, "stateMutability": "nonpayable", "virtual": false, "visibility": "internal" }, { "id": 1561, "nodeType": "FunctionDefinition", "src": "7968:215:2", "nodes": [], "body": { "id": 1560, "nodeType": "Block", "src": "8050:133:2", "nodes": [], "statements": [ { "condition": { "commonType": { "typeIdentifier": "t_int256", "typeString": "int256" }, "id": 1546, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { "id": 1544, "name": "a", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 1535, "src": "8064:1:2", "typeDescriptions": { "typeIdentifier": "t_int256", "typeString": "int256" } }, "nodeType": "BinaryOperation", "operator": "<=", "rightExpression": { "id": 1545, "name": "b", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 1537, "src": "8069:1:2", "typeDescriptions": { "typeIdentifier": "t_int256", "typeString": "int256" } }, "src": "8064:6:2", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, "id": 1559, "nodeType": "IfStatement", "src": "8060:117:2", "trueBody": { "id": 1558, "nodeType": "Block", "src": "8072:105:2", "statements": [ { "eventCall": { "arguments": [ { "hexValue": "4572726f72", "id": 1548, "isConstant": false, "isLValue": false, "isPure": true, "kind": "string", "lValueRequested": false, "nodeType": "Literal", "src": "8108:7:2", "typeDescriptions": { "typeIdentifier": "t_stringliteral_e342daa49723ff3485f4ff5f755a17b8bc9c3c33bbd312ceee37c94eebfe45c1", "typeString": "literal_string \"Error\"" }, "value": "Error" }, { "id": 1549, "name": "err", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 1541, "src": "8117:3:2", "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": 1547, "name": "log_named_string", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 811, "src": "8091:16:2", "typeDescriptions": { "typeIdentifier": "t_function_event_nonpayable$_t_string_memory_ptr_$_t_string_memory_ptr_$returns$__$", "typeString": "function (string memory,string memory)" } }, "id": 1550, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "8091:30:2", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, "id": 1551, "nodeType": "EmitStatement", "src": "8086:35:2" }, { "expression": { "arguments": [ { "id": 1553, "name": "a", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 1535, "src": "8151:1:2", "typeDescriptions": { "typeIdentifier": "t_int256", "typeString": "int256" } }, { "id": 1554, "name": "b", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 1537, "src": "8154:1:2", "typeDescriptions": { "typeIdentifier": "t_int256", "typeString": "int256" } }, { "id": 1555, "name": "decimals", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 1539, "src": "8157:8:2", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } } ], "expression": { "argumentTypes": [ { "typeIdentifier": "t_int256", "typeString": "int256" }, { "typeIdentifier": "t_int256", "typeString": "int256" }, { "typeIdentifier": "t_uint256", "typeString": "uint256" } ], "id": 1552, "name": "assertGtDecimal", "nodeType": "Identifier", "overloadedDeclarations": [ 1533, 1561, 1595, 1623 ], "referencedDeclaration": 1533, "src": "8135:15:2", "typeDescriptions": { "typeIdentifier": "t_function_internal_nonpayable$_t_int256_$_t_int256_$_t_uint256_$returns$__$", "typeString": "function (int256,int256,uint256)" } }, "id": 1556, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "8135:31:2", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, "id": 1557, "nodeType": "ExpressionStatement", "src": "8135:31:2" } ] } } ] }, "implemented": true, "kind": "function", "modifiers": [], "name": "assertGtDecimal", "nameLocation": "7977:15:2", "parameters": { "id": 1542, "nodeType": "ParameterList", "parameters": [ { "constant": false, "id": 1535, "mutability": "mutable", "name": "a", "nameLocation": "7997:1:2", "nodeType": "VariableDeclaration", "scope": 1561, "src": "7993:5:2", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { "typeIdentifier": "t_int256", "typeString": "int256" }, "typeName": { "id": 1534, "name": "int", "nodeType": "ElementaryTypeName", "src": "7993:3:2", "typeDescriptions": { "typeIdentifier": "t_int256", "typeString": "int256" } }, "visibility": "internal" }, { "constant": false, "id": 1537, "mutability": "mutable", "name": "b", "nameLocation": "8004:1:2", "nodeType": "VariableDeclaration", "scope": 1561, "src": "8000:5:2", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { "typeIdentifier": "t_int256", "typeString": "int256" }, "typeName": { "id": 1536, "name": "int", "nodeType": "ElementaryTypeName", "src": "8000:3:2", "typeDescriptions": { "typeIdentifier": "t_int256", "typeString": "int256" } }, "visibility": "internal" }, { "constant": false, "id": 1539, "mutability": "mutable", "name": "decimals", "nameLocation": "8012:8:2", "nodeType": "VariableDeclaration", "scope": 1561, "src": "8007:13:2", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" }, "typeName": { "id": 1538, "name": "uint", "nodeType": "ElementaryTypeName", "src": "8007:4:2", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, "visibility": "internal" }, { "constant": false, "id": 1541, "mutability": "mutable", "name": "err", "nameLocation": "8036:3:2", "nodeType": "VariableDeclaration", "scope": 1561, "src": "8022:17:2", "stateVariable": false, "storageLocation": "memory", "typeDescriptions": { "typeIdentifier": "t_string_memory_ptr", "typeString": "string" }, "typeName": { "id": 1540, "name": "string", "nodeType": "ElementaryTypeName", "src": "8022:6:2", "typeDescriptions": { "typeIdentifier": "t_string_storage_ptr", "typeString": "string" } }, "visibility": "internal" } ], "src": "7992:48:2" }, "returnParameters": { "id": 1543, "nodeType": "ParameterList", "parameters": [], "src": "8050:0:2" }, "scope": 2512, "stateMutability": "nonpayable", "virtual": false, "visibility": "internal" }, { "id": 1595, "nodeType": "FunctionDefinition", "src": "8188:325:2", "nodes": [], "body": { "id": 1594, "nodeType": "Block", "src": "8253:260:2", "nodes": [], "statements": [ { "condition": { "commonType": { "typeIdentifier": "t_uint256", "typeString": "uint256" }, "id": 1572, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { "id": 1570, "name": "a", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 1563, "src": "8267:1:2", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, "nodeType": "BinaryOperation", "operator": "<=", "rightExpression": { "id": 1571, "name": "b", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 1565, "src": "8272:1:2", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, "src": "8267:6:2", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, "id": 1593, "nodeType": "IfStatement", "src": "8263:244:2", "trueBody": { "id": 1592, "nodeType": "Block", "src": "8275:232:2", "statements": [ { "eventCall": { "arguments": [ { "hexValue": "4572726f723a2061203e2062206e6f7420736174697366696564205b646563696d616c2075696e745d", "id": 1574, "isConstant": false, "isLValue": false, "isPure": true, "kind": "string", "lValueRequested": false, "nodeType": "Literal", "src": "8298:43:2", "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": 1573, "name": "log", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 731, "src": "8294:3:2", "typeDescriptions": { "typeIdentifier": "t_function_event_nonpayable$_t_string_memory_ptr_$returns$__$", "typeString": "function (string memory)" } }, "id": 1575, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "8294:48:2", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, "id": 1576, "nodeType": "EmitStatement", "src": "8289:53:2" }, { "eventCall": { "arguments": [ { "hexValue": "202056616c75652061", "id": 1578, "isConstant": false, "isLValue": false, "isPure": true, "kind": "string", "lValueRequested": false, "nodeType": "Literal", "src": "8384:11:2", "typeDescriptions": { "typeIdentifier": "t_stringliteral_c592b529b874569f165479a5a4380dedf000796f11e04035f76bfa7310b31d26", "typeString": "literal_string \" Value a\"" }, "value": " Value a" }, { "id": 1579, "name": "a", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 1563, "src": "8397:1:2", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, { "id": 1580, "name": "decimals", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 1567, "src": "8400:8:2", "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": 1577, "name": "log_named_decimal_uint", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 787, "src": "8361:22:2", "typeDescriptions": { "typeIdentifier": "t_function_event_nonpayable$_t_string_memory_ptr_$_t_uint256_$_t_uint256_$returns$__$", "typeString": "function (string memory,uint256,uint256)" } }, "id": 1581, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "8361:48:2", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, "id": 1582, "nodeType": "EmitStatement", "src": "8356:53:2" }, { "eventCall": { "arguments": [ { "hexValue": "202056616c75652062", "id": 1584, "isConstant": false, "isLValue": false, "isPure": true, "kind": "string", "lValueRequested": false, "nodeType": "Literal", "src": "8451:11:2", "typeDescriptions": { "typeIdentifier": "t_stringliteral_e4b1d025132960c3fb1a582cf2366864dc416744d1b9770aa69fe3749623ebc3", "typeString": "literal_string \" Value b\"" }, "value": " Value b" }, { "id": 1585, "name": "b", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 1565, "src": "8464:1:2", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, { "id": 1586, "name": "decimals", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 1567, "src": "8467:8:2", "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": 1583, "name": "log_named_decimal_uint", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 787, "src": "8428:22:2", "typeDescriptions": { "typeIdentifier": "t_function_event_nonpayable$_t_string_memory_ptr_$_t_uint256_$_t_uint256_$returns$__$", "typeString": "function (string memory,uint256,uint256)" } }, "id": 1587, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "8428:48:2", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, "id": 1588, "nodeType": "EmitStatement", "src": "8423:53:2" }, { "expression": { "arguments": [], "expression": { "argumentTypes": [], "id": 1589, "name": "fail", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 942, "src": "8490:4:2", "typeDescriptions": { "typeIdentifier": "t_function_internal_nonpayable$__$returns$__$", "typeString": "function ()" } }, "id": 1590, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "8490:6:2", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, "id": 1591, "nodeType": "ExpressionStatement", "src": "8490:6:2" } ] } } ] }, "implemented": true, "kind": "function", "modifiers": [], "name": "assertGtDecimal", "nameLocation": "8197:15:2", "parameters": { "id": 1568, "nodeType": "ParameterList", "parameters": [ { "constant": false, "id": 1563, "mutability": "mutable", "name": "a", "nameLocation": "8218:1:2", "nodeType": "VariableDeclaration", "scope": 1595, "src": "8213:6:2", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" }, "typeName": { "id": 1562, "name": "uint", "nodeType": "ElementaryTypeName", "src": "8213:4:2", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, "visibility": "internal" }, { "constant": false, "id": 1565, "mutability": "mutable", "name": "b", "nameLocation": "8226:1:2", "nodeType": "VariableDeclaration", "scope": 1595, "src": "8221:6:2", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" }, "typeName": { "id": 1564, "name": "uint", "nodeType": "ElementaryTypeName", "src": "8221:4:2", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, "visibility": "internal" }, { "constant": false, "id": 1567, "mutability": "mutable", "name": "decimals", "nameLocation": "8234:8:2", "nodeType": "VariableDeclaration", "scope": 1595, "src": "8229:13:2", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" }, "typeName": { "id": 1566, "name": "uint", "nodeType": "ElementaryTypeName", "src": "8229:4:2", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, "visibility": "internal" } ], "src": "8212:31:2" }, "returnParameters": { "id": 1569, "nodeType": "ParameterList", "parameters": [], "src": "8253:0:2" }, "scope": 2512, "stateMutability": "nonpayable", "virtual": false, "visibility": "internal" }, { "id": 1623, "nodeType": "FunctionDefinition", "src": "8518:217:2", "nodes": [], "body": { "id": 1622, "nodeType": "Block", "src": "8602:133:2", "nodes": [], "statements": [ { "condition": { "commonType": { "typeIdentifier": "t_uint256", "typeString": "uint256" }, "id": 1608, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { "id": 1606, "name": "a", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 1597, "src": "8616:1:2", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, "nodeType": "BinaryOperation", "operator": "<=", "rightExpression": { "id": 1607, "name": "b", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 1599, "src": "8621:1:2", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, "src": "8616:6:2", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, "id": 1621, "nodeType": "IfStatement", "src": "8612:117:2", "trueBody": { "id": 1620, "nodeType": "Block", "src": "8624:105:2", "statements": [ { "eventCall": { "arguments": [ { "hexValue": "4572726f72", "id": 1610, "isConstant": false, "isLValue": false, "isPure": true, "kind": "string", "lValueRequested": false, "nodeType": "Literal", "src": "8660:7:2", "typeDescriptions": { "typeIdentifier": "t_stringliteral_e342daa49723ff3485f4ff5f755a17b8bc9c3c33bbd312ceee37c94eebfe45c1", "typeString": "literal_string \"Error\"" }, "value": "Error" }, { "id": 1611, "name": "err", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 1603, "src": "8669:3:2", "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": 1609, "name": "log_named_string", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 811, "src": "8643:16:2", "typeDescriptions": { "typeIdentifier": "t_function_event_nonpayable$_t_string_memory_ptr_$_t_string_memory_ptr_$returns$__$", "typeString": "function (string memory,string memory)" } }, "id": 1612, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "8643:30:2", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, "id": 1613, "nodeType": "EmitStatement", "src": "8638:35:2" }, { "expression": { "arguments": [ { "id": 1615, "name": "a", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 1597, "src": "8703:1:2", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, { "id": 1616, "name": "b", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 1599, "src": "8706:1:2", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, { "id": 1617, "name": "decimals", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 1601, "src": "8709:8:2", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } } ], "expression": { "argumentTypes": [ { "typeIdentifier": "t_uint256", "typeString": "uint256" }, { "typeIdentifier": "t_uint256", "typeString": "uint256" }, { "typeIdentifier": "t_uint256", "typeString": "uint256" } ], "id": 1614, "name": "assertGtDecimal", "nodeType": "Identifier", "overloadedDeclarations": [ 1533, 1561, 1595, 1623 ], "referencedDeclaration": 1595, "src": "8687:15:2", "typeDescriptions": { "typeIdentifier": "t_function_internal_nonpayable$_t_uint256_$_t_uint256_$_t_uint256_$returns$__$", "typeString": "function (uint256,uint256,uint256)" } }, "id": 1618, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "8687:31:2", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, "id": 1619, "nodeType": "ExpressionStatement", "src": "8687:31:2" } ] } } ] }, "implemented": true, "kind": "function", "modifiers": [], "name": "assertGtDecimal", "nameLocation": "8527:15:2", "parameters": { "id": 1604, "nodeType": "ParameterList", "parameters": [ { "constant": false, "id": 1597, "mutability": "mutable", "name": "a", "nameLocation": "8548:1:2", "nodeType": "VariableDeclaration", "scope": 1623, "src": "8543:6:2", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" }, "typeName": { "id": 1596, "name": "uint", "nodeType": "ElementaryTypeName", "src": "8543:4:2", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, "visibility": "internal" }, { "constant": false, "id": 1599, "mutability": "mutable", "name": "b", "nameLocation": "8556:1:2", "nodeType": "VariableDeclaration", "scope": 1623, "src": "8551:6:2", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" }, "typeName": { "id": 1598, "name": "uint", "nodeType": "ElementaryTypeName", "src": "8551:4:2", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, "visibility": "internal" }, { "constant": false, "id": 1601, "mutability": "mutable", "name": "decimals", "nameLocation": "8564:8:2", "nodeType": "VariableDeclaration", "scope": 1623, "src": "8559:13:2", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" }, "typeName": { "id": 1600, "name": "uint", "nodeType": "ElementaryTypeName", "src": "8559:4:2", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, "visibility": "internal" }, { "constant": false, "id": 1603, "mutability": "mutable", "name": "err", "nameLocation": "8588:3:2", "nodeType": "VariableDeclaration", "scope": 1623, "src": "8574:17:2", "stateVariable": false, "storageLocation": "memory", "typeDescriptions": { "typeIdentifier": "t_string_memory_ptr", "typeString": "string" }, "typeName": { "id": 1602, "name": "string", "nodeType": "ElementaryTypeName", "src": "8574:6:2", "typeDescriptions": { "typeIdentifier": "t_string_storage_ptr", "typeString": "string" } }, "visibility": "internal" } ], "src": "8542:50:2" }, "returnParameters": { "id": 1605, "nodeType": "ParameterList", "parameters": [], "src": "8602:0:2" }, "scope": 2512, "stateMutability": "nonpayable", "virtual": false, "visibility": "internal" }, { "id": 1653, "nodeType": "FunctionDefinition", "src": "8741:259:2", "nodes": [], "body": { "id": 1652, "nodeType": "Block", "src": "8784:216:2", "nodes": [], "statements": [ { "condition": { "commonType": { "typeIdentifier": "t_uint256", "typeString": "uint256" }, "id": 1632, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { "id": 1630, "name": "a", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 1625, "src": "8798:1:2", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, "nodeType": "BinaryOperation", "operator": "<", "rightExpression": { "id": 1631, "name": "b", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 1627, "src": "8802:1:2", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, "src": "8798:5:2", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, "id": 1651, "nodeType": "IfStatement", "src": "8794:200:2", "trueBody": { "id": 1650, "nodeType": "Block", "src": "8805:189:2", "statements": [ { "eventCall": { "arguments": [ { "hexValue": "4572726f723a2061203e3d2062206e6f7420736174697366696564205b75696e745d", "id": 1634, "isConstant": false, "isLValue": false, "isPure": true, "kind": "string", "lValueRequested": false, "nodeType": "Literal", "src": "8828:36:2", "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": 1633, "name": "log", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 731, "src": "8824:3:2", "typeDescriptions": { "typeIdentifier": "t_function_event_nonpayable$_t_string_memory_ptr_$returns$__$", "typeString": "function (string memory)" } }, "id": 1635, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "8824:41:2", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, "id": 1636, "nodeType": "EmitStatement", "src": "8819:46:2" }, { "eventCall": { "arguments": [ { "hexValue": "202056616c75652061", "id": 1638, "isConstant": false, "isLValue": false, "isPure": true, "kind": "string", "lValueRequested": false, "nodeType": "Literal", "src": "8899:11:2", "typeDescriptions": { "typeIdentifier": "t_stringliteral_c592b529b874569f165479a5a4380dedf000796f11e04035f76bfa7310b31d26", "typeString": "literal_string \" Value a\"" }, "value": " Value a" }, { "id": 1639, "name": "a", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 1625, "src": "8912:1:2", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } } ], "expression": { "argumentTypes": [ { "typeIdentifier": "t_stringliteral_c592b529b874569f165479a5a4380dedf000796f11e04035f76bfa7310b31d26", "typeString": "literal_string \" Value a\"" }, { "typeIdentifier": "t_uint256", "typeString": "uint256" } ], "id": 1637, "name": "log_named_uint", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 799, "src": "8884:14:2", "typeDescriptions": { "typeIdentifier": "t_function_event_nonpayable$_t_string_memory_ptr_$_t_uint256_$returns$__$", "typeString": "function (string memory,uint256)" } }, "id": 1640, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "8884:30:2", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, "id": 1641, "nodeType": "EmitStatement", "src": "8879:35:2" }, { "eventCall": { "arguments": [ { "hexValue": "202056616c75652062", "id": 1643, "isConstant": false, "isLValue": false, "isPure": true, "kind": "string", "lValueRequested": false, "nodeType": "Literal", "src": "8948:11:2", "typeDescriptions": { "typeIdentifier": "t_stringliteral_e4b1d025132960c3fb1a582cf2366864dc416744d1b9770aa69fe3749623ebc3", "typeString": "literal_string \" Value b\"" }, "value": " Value b" }, { "id": 1644, "name": "b", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 1627, "src": "8961:1:2", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } } ], "expression": { "argumentTypes": [ { "typeIdentifier": "t_stringliteral_e4b1d025132960c3fb1a582cf2366864dc416744d1b9770aa69fe3749623ebc3", "typeString": "literal_string \" Value b\"" }, { "typeIdentifier": "t_uint256", "typeString": "uint256" } ], "id": 1642, "name": "log_named_uint", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 799, "src": "8933:14:2", "typeDescriptions": { "typeIdentifier": "t_function_event_nonpayable$_t_string_memory_ptr_$_t_uint256_$returns$__$", "typeString": "function (string memory,uint256)" } }, "id": 1645, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "8933:30:2", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, "id": 1646, "nodeType": "EmitStatement", "src": "8928:35:2" }, { "expression": { "arguments": [], "expression": { "argumentTypes": [], "id": 1647, "name": "fail", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 942, "src": "8977:4:2", "typeDescriptions": { "typeIdentifier": "t_function_internal_nonpayable$__$returns$__$", "typeString": "function ()" } }, "id": 1648, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "8977:6:2", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, "id": 1649, "nodeType": "ExpressionStatement", "src": "8977:6:2" } ] } } ] }, "implemented": true, "kind": "function", "modifiers": [], "name": "assertGe", "nameLocation": "8750:8:2", "parameters": { "id": 1628, "nodeType": "ParameterList", "parameters": [ { "constant": false, "id": 1625, "mutability": "mutable", "name": "a", "nameLocation": "8764:1:2", "nodeType": "VariableDeclaration", "scope": 1653, "src": "8759:6:2", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" }, "typeName": { "id": 1624, "name": "uint", "nodeType": "ElementaryTypeName", "src": "8759:4:2", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, "visibility": "internal" }, { "constant": false, "id": 1627, "mutability": "mutable", "name": "b", "nameLocation": "8772:1:2", "nodeType": "VariableDeclaration", "scope": 1653, "src": "8767:6:2", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" }, "typeName": { "id": 1626, "name": "uint", "nodeType": "ElementaryTypeName", "src": "8767:4:2", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, "visibility": "internal" } ], "src": "8758:16:2" }, "returnParameters": { "id": 1629, "nodeType": "ParameterList", "parameters": [], "src": "8784:0:2" }, "scope": 2512, "stateMutability": "nonpayable", "virtual": false, "visibility": "internal" }, { "id": 1678, "nodeType": "FunctionDefinition", "src": "9005:177:2", "nodes": [], "body": { "id": 1677, "nodeType": "Block", "src": "9067:115:2", "nodes": [], "statements": [ { "condition": { "commonType": { "typeIdentifier": "t_uint256", "typeString": "uint256" }, "id": 1664, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { "id": 1662, "name": "a", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 1655, "src": "9081:1:2", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, "nodeType": "BinaryOperation", "operator": "<", "rightExpression": { "id": 1663, "name": "b", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 1657, "src": "9085:1:2", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, "src": "9081:5:2", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, "id": 1676, "nodeType": "IfStatement", "src": "9077:99:2", "trueBody": { "id": 1675, "nodeType": "Block", "src": "9088:88:2", "statements": [ { "eventCall": { "arguments": [ { "hexValue": "4572726f72", "id": 1666, "isConstant": false, "isLValue": false, "isPure": true, "kind": "string", "lValueRequested": false, "nodeType": "Literal", "src": "9124:7:2", "typeDescriptions": { "typeIdentifier": "t_stringliteral_e342daa49723ff3485f4ff5f755a17b8bc9c3c33bbd312ceee37c94eebfe45c1", "typeString": "literal_string \"Error\"" }, "value": "Error" }, { "id": 1667, "name": "err", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 1659, "src": "9133:3:2", "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": 1665, "name": "log_named_string", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 811, "src": "9107:16:2", "typeDescriptions": { "typeIdentifier": "t_function_event_nonpayable$_t_string_memory_ptr_$_t_string_memory_ptr_$returns$__$", "typeString": "function (string memory,string memory)" } }, "id": 1668, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "9107:30:2", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, "id": 1669, "nodeType": "EmitStatement", "src": "9102:35:2" }, { "expression": { "arguments": [ { "id": 1671, "name": "a", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 1655, "src": "9160:1:2", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, { "id": 1672, "name": "b", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 1657, "src": "9163:1:2", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } } ], "expression": { "argumentTypes": [ { "typeIdentifier": "t_uint256", "typeString": "uint256" }, { "typeIdentifier": "t_uint256", "typeString": "uint256" } ], "id": 1670, "name": "assertGe", "nodeType": "Identifier", "overloadedDeclarations": [ 1653, 1678, 1708, 1733 ], "referencedDeclaration": 1653, "src": "9151:8:2", "typeDescriptions": { "typeIdentifier": "t_function_internal_nonpayable$_t_uint256_$_t_uint256_$returns$__$", "typeString": "function (uint256,uint256)" } }, "id": 1673, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "9151:14:2", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, "id": 1674, "nodeType": "ExpressionStatement", "src": "9151:14:2" } ] } } ] }, "implemented": true, "kind": "function", "modifiers": [], "name": "assertGe", "nameLocation": "9014:8:2", "parameters": { "id": 1660, "nodeType": "ParameterList", "parameters": [ { "constant": false, "id": 1655, "mutability": "mutable", "name": "a", "nameLocation": "9028:1:2", "nodeType": "VariableDeclaration", "scope": 1678, "src": "9023:6:2", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" }, "typeName": { "id": 1654, "name": "uint", "nodeType": "ElementaryTypeName", "src": "9023:4:2", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, "visibility": "internal" }, { "constant": false, "id": 1657, "mutability": "mutable", "name": "b", "nameLocation": "9036:1:2", "nodeType": "VariableDeclaration", "scope": 1678, "src": "9031:6:2", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" }, "typeName": { "id": 1656, "name": "uint", "nodeType": "ElementaryTypeName", "src": "9031:4:2", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, "visibility": "internal" }, { "constant": false, "id": 1659, "mutability": "mutable", "name": "err", "nameLocation": "9053:3:2", "nodeType": "VariableDeclaration", "scope": 1678, "src": "9039:17:2", "stateVariable": false, "storageLocation": "memory", "typeDescriptions": { "typeIdentifier": "t_string_memory_ptr", "typeString": "string" }, "typeName": { "id": 1658, "name": "string", "nodeType": "ElementaryTypeName", "src": "9039:6:2", "typeDescriptions": { "typeIdentifier": "t_string_storage_ptr", "typeString": "string" } }, "visibility": "internal" } ], "src": "9022:35:2" }, "returnParameters": { "id": 1661, "nodeType": "ParameterList", "parameters": [], "src": "9067:0:2" }, "scope": 2512, "stateMutability": "nonpayable", "virtual": false, "visibility": "internal" }, { "id": 1708, "nodeType": "FunctionDefinition", "src": "9187:254:2", "nodes": [], "body": { "id": 1707, "nodeType": "Block", "src": "9228:213:2", "nodes": [], "statements": [ { "condition": { "commonType": { "typeIdentifier": "t_int256", "typeString": "int256" }, "id": 1687, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { "id": 1685, "name": "a", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 1680, "src": "9242:1:2", "typeDescriptions": { "typeIdentifier": "t_int256", "typeString": "int256" } }, "nodeType": "BinaryOperation", "operator": "<", "rightExpression": { "id": 1686, "name": "b", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 1682, "src": "9246:1:2", "typeDescriptions": { "typeIdentifier": "t_int256", "typeString": "int256" } }, "src": "9242:5:2", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, "id": 1706, "nodeType": "IfStatement", "src": "9238:197:2", "trueBody": { "id": 1705, "nodeType": "Block", "src": "9249:186:2", "statements": [ { "eventCall": { "arguments": [ { "hexValue": "4572726f723a2061203e3d2062206e6f7420736174697366696564205b696e745d", "id": 1689, "isConstant": false, "isLValue": false, "isPure": true, "kind": "string", "lValueRequested": false, "nodeType": "Literal", "src": "9272:35:2", "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": 1688, "name": "log", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 731, "src": "9268:3:2", "typeDescriptions": { "typeIdentifier": "t_function_event_nonpayable$_t_string_memory_ptr_$returns$__$", "typeString": "function (string memory)" } }, "id": 1690, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "9268:40:2", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, "id": 1691, "nodeType": "EmitStatement", "src": "9263:45:2" }, { "eventCall": { "arguments": [ { "hexValue": "202056616c75652061", "id": 1693, "isConstant": false, "isLValue": false, "isPure": true, "kind": "string", "lValueRequested": false, "nodeType": "Literal", "src": "9341:11:2", "typeDescriptions": { "typeIdentifier": "t_stringliteral_c592b529b874569f165479a5a4380dedf000796f11e04035f76bfa7310b31d26", "typeString": "literal_string \" Value a\"" }, "value": " Value a" }, { "id": 1694, "name": "a", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 1680, "src": "9354:1:2", "typeDescriptions": { "typeIdentifier": "t_int256", "typeString": "int256" } } ], "expression": { "argumentTypes": [ { "typeIdentifier": "t_stringliteral_c592b529b874569f165479a5a4380dedf000796f11e04035f76bfa7310b31d26", "typeString": "literal_string \" Value a\"" }, { "typeIdentifier": "t_int256", "typeString": "int256" } ], "id": 1692, "name": "log_named_int", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 793, "src": "9327:13:2", "typeDescriptions": { "typeIdentifier": "t_function_event_nonpayable$_t_string_memory_ptr_$_t_int256_$returns$__$", "typeString": "function (string memory,int256)" } }, "id": 1695, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "9327:29:2", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, "id": 1696, "nodeType": "EmitStatement", "src": "9322:34:2" }, { "eventCall": { "arguments": [ { "hexValue": "202056616c75652062", "id": 1698, "isConstant": false, "isLValue": false, "isPure": true, "kind": "string", "lValueRequested": false, "nodeType": "Literal", "src": "9389:11:2", "typeDescriptions": { "typeIdentifier": "t_stringliteral_e4b1d025132960c3fb1a582cf2366864dc416744d1b9770aa69fe3749623ebc3", "typeString": "literal_string \" Value b\"" }, "value": " Value b" }, { "id": 1699, "name": "b", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 1682, "src": "9402:1:2", "typeDescriptions": { "typeIdentifier": "t_int256", "typeString": "int256" } } ], "expression": { "argumentTypes": [ { "typeIdentifier": "t_stringliteral_e4b1d025132960c3fb1a582cf2366864dc416744d1b9770aa69fe3749623ebc3", "typeString": "literal_string \" Value b\"" }, { "typeIdentifier": "t_int256", "typeString": "int256" } ], "id": 1697, "name": "log_named_int", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 793, "src": "9375:13:2", "typeDescriptions": { "typeIdentifier": "t_function_event_nonpayable$_t_string_memory_ptr_$_t_int256_$returns$__$", "typeString": "function (string memory,int256)" } }, "id": 1700, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "9375:29:2", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, "id": 1701, "nodeType": "EmitStatement", "src": "9370:34:2" }, { "expression": { "arguments": [], "expression": { "argumentTypes": [], "id": 1702, "name": "fail", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 942, "src": "9418:4:2", "typeDescriptions": { "typeIdentifier": "t_function_internal_nonpayable$__$returns$__$", "typeString": "function ()" } }, "id": 1703, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "9418:6:2", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, "id": 1704, "nodeType": "ExpressionStatement", "src": "9418:6:2" } ] } } ] }, "implemented": true, "kind": "function", "modifiers": [], "name": "assertGe", "nameLocation": "9196:8:2", "parameters": { "id": 1683, "nodeType": "ParameterList", "parameters": [ { "constant": false, "id": 1680, "mutability": "mutable", "name": "a", "nameLocation": "9209:1:2", "nodeType": "VariableDeclaration", "scope": 1708, "src": "9205:5:2", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { "typeIdentifier": "t_int256", "typeString": "int256" }, "typeName": { "id": 1679, "name": "int", "nodeType": "ElementaryTypeName", "src": "9205:3:2", "typeDescriptions": { "typeIdentifier": "t_int256", "typeString": "int256" } }, "visibility": "internal" }, { "constant": false, "id": 1682, "mutability": "mutable", "name": "b", "nameLocation": "9216:1:2", "nodeType": "VariableDeclaration", "scope": 1708, "src": "9212:5:2", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { "typeIdentifier": "t_int256", "typeString": "int256" }, "typeName": { "id": 1681, "name": "int", "nodeType": "ElementaryTypeName", "src": "9212:3:2", "typeDescriptions": { "typeIdentifier": "t_int256", "typeString": "int256" } }, "visibility": "internal" } ], "src": "9204:14:2" }, "returnParameters": { "id": 1684, "nodeType": "ParameterList", "parameters": [], "src": "9228:0:2" }, "scope": 2512, "stateMutability": "nonpayable", "virtual": false, "visibility": "internal" }, { "id": 1733, "nodeType": "FunctionDefinition", "src": "9446:175:2", "nodes": [], "body": { "id": 1732, "nodeType": "Block", "src": "9506:115:2", "nodes": [], "statements": [ { "condition": { "commonType": { "typeIdentifier": "t_int256", "typeString": "int256" }, "id": 1719, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { "id": 1717, "name": "a", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 1710, "src": "9520:1:2", "typeDescriptions": { "typeIdentifier": "t_int256", "typeString": "int256" } }, "nodeType": "BinaryOperation", "operator": "<", "rightExpression": { "id": 1718, "name": "b", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 1712, "src": "9524:1:2", "typeDescriptions": { "typeIdentifier": "t_int256", "typeString": "int256" } }, "src": "9520:5:2", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, "id": 1731, "nodeType": "IfStatement", "src": "9516:99:2", "trueBody": { "id": 1730, "nodeType": "Block", "src": "9527:88:2", "statements": [ { "eventCall": { "arguments": [ { "hexValue": "4572726f72", "id": 1721, "isConstant": false, "isLValue": false, "isPure": true, "kind": "string", "lValueRequested": false, "nodeType": "Literal", "src": "9563:7:2", "typeDescriptions": { "typeIdentifier": "t_stringliteral_e342daa49723ff3485f4ff5f755a17b8bc9c3c33bbd312ceee37c94eebfe45c1", "typeString": "literal_string \"Error\"" }, "value": "Error" }, { "id": 1722, "name": "err", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 1714, "src": "9572:3:2", "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": 1720, "name": "log_named_string", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 811, "src": "9546:16:2", "typeDescriptions": { "typeIdentifier": "t_function_event_nonpayable$_t_string_memory_ptr_$_t_string_memory_ptr_$returns$__$", "typeString": "function (string memory,string memory)" } }, "id": 1723, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "9546:30:2", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, "id": 1724, "nodeType": "EmitStatement", "src": "9541:35:2" }, { "expression": { "arguments": [ { "id": 1726, "name": "a", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 1710, "src": "9599:1:2", "typeDescriptions": { "typeIdentifier": "t_int256", "typeString": "int256" } }, { "id": 1727, "name": "b", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 1712, "src": "9602:1:2", "typeDescriptions": { "typeIdentifier": "t_int256", "typeString": "int256" } } ], "expression": { "argumentTypes": [ { "typeIdentifier": "t_int256", "typeString": "int256" }, { "typeIdentifier": "t_int256", "typeString": "int256" } ], "id": 1725, "name": "assertGe", "nodeType": "Identifier", "overloadedDeclarations": [ 1653, 1678, 1708, 1733 ], "referencedDeclaration": 1708, "src": "9590:8:2", "typeDescriptions": { "typeIdentifier": "t_function_internal_nonpayable$_t_int256_$_t_int256_$returns$__$", "typeString": "function (int256,int256)" } }, "id": 1728, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "9590:14:2", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, "id": 1729, "nodeType": "ExpressionStatement", "src": "9590:14:2" } ] } } ] }, "implemented": true, "kind": "function", "modifiers": [], "name": "assertGe", "nameLocation": "9455:8:2", "parameters": { "id": 1715, "nodeType": "ParameterList", "parameters": [ { "constant": false, "id": 1710, "mutability": "mutable", "name": "a", "nameLocation": "9468:1:2", "nodeType": "VariableDeclaration", "scope": 1733, "src": "9464:5:2", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { "typeIdentifier": "t_int256", "typeString": "int256" }, "typeName": { "id": 1709, "name": "int", "nodeType": "ElementaryTypeName", "src": "9464:3:2", "typeDescriptions": { "typeIdentifier": "t_int256", "typeString": "int256" } }, "visibility": "internal" }, { "constant": false, "id": 1712, "mutability": "mutable", "name": "b", "nameLocation": "9475:1:2", "nodeType": "VariableDeclaration", "scope": 1733, "src": "9471:5:2", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { "typeIdentifier": "t_int256", "typeString": "int256" }, "typeName": { "id": 1711, "name": "int", "nodeType": "ElementaryTypeName", "src": "9471:3:2", "typeDescriptions": { "typeIdentifier": "t_int256", "typeString": "int256" } }, "visibility": "internal" }, { "constant": false, "id": 1714, "mutability": "mutable", "name": "err", "nameLocation": "9492:3:2", "nodeType": "VariableDeclaration", "scope": 1733, "src": "9478:17:2", "stateVariable": false, "storageLocation": "memory", "typeDescriptions": { "typeIdentifier": "t_string_memory_ptr", "typeString": "string" }, "typeName": { "id": 1713, "name": "string", "nodeType": "ElementaryTypeName", "src": "9478:6:2", "typeDescriptions": { "typeIdentifier": "t_string_storage_ptr", "typeString": "string" } }, "visibility": "internal" } ], "src": "9463:33:2" }, "returnParameters": { "id": 1716, "nodeType": "ParameterList", "parameters": [], "src": "9506:0:2" }, "scope": 2512, "stateMutability": "nonpayable", "virtual": false, "visibility": "internal" }, { "id": 1767, "nodeType": "FunctionDefinition", "src": "9626:320:2", "nodes": [], "body": { "id": 1766, "nodeType": "Block", "src": "9689:257:2", "nodes": [], "statements": [ { "condition": { "commonType": { "typeIdentifier": "t_int256", "typeString": "int256" }, "id": 1744, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { "id": 1742, "name": "a", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 1735, "src": "9703:1:2", "typeDescriptions": { "typeIdentifier": "t_int256", "typeString": "int256" } }, "nodeType": "BinaryOperation", "operator": "<", "rightExpression": { "id": 1743, "name": "b", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 1737, "src": "9707:1:2", "typeDescriptions": { "typeIdentifier": "t_int256", "typeString": "int256" } }, "src": "9703:5:2", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, "id": 1765, "nodeType": "IfStatement", "src": "9699:241:2", "trueBody": { "id": 1764, "nodeType": "Block", "src": "9710:230:2", "statements": [ { "eventCall": { "arguments": [ { "hexValue": "4572726f723a2061203e3d2062206e6f7420736174697366696564205b646563696d616c20696e745d", "id": 1746, "isConstant": false, "isLValue": false, "isPure": true, "kind": "string", "lValueRequested": false, "nodeType": "Literal", "src": "9733:43:2", "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": 1745, "name": "log", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 731, "src": "9729:3:2", "typeDescriptions": { "typeIdentifier": "t_function_event_nonpayable$_t_string_memory_ptr_$returns$__$", "typeString": "function (string memory)" } }, "id": 1747, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "9729:48:2", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, "id": 1748, "nodeType": "EmitStatement", "src": "9724:53:2" }, { "eventCall": { "arguments": [ { "hexValue": "202056616c75652061", "id": 1750, "isConstant": false, "isLValue": false, "isPure": true, "kind": "string", "lValueRequested": false, "nodeType": "Literal", "src": "9818:11:2", "typeDescriptions": { "typeIdentifier": "t_stringliteral_c592b529b874569f165479a5a4380dedf000796f11e04035f76bfa7310b31d26", "typeString": "literal_string \" Value a\"" }, "value": " Value a" }, { "id": 1751, "name": "a", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 1735, "src": "9831:1:2", "typeDescriptions": { "typeIdentifier": "t_int256", "typeString": "int256" } }, { "id": 1752, "name": "decimals", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 1739, "src": "9834:8:2", "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": 1749, "name": "log_named_decimal_int", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 779, "src": "9796:21:2", "typeDescriptions": { "typeIdentifier": "t_function_event_nonpayable$_t_string_memory_ptr_$_t_int256_$_t_uint256_$returns$__$", "typeString": "function (string memory,int256,uint256)" } }, "id": 1753, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "9796:47:2", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, "id": 1754, "nodeType": "EmitStatement", "src": "9791:52:2" }, { "eventCall": { "arguments": [ { "hexValue": "202056616c75652062", "id": 1756, "isConstant": false, "isLValue": false, "isPure": true, "kind": "string", "lValueRequested": false, "nodeType": "Literal", "src": "9884:11:2", "typeDescriptions": { "typeIdentifier": "t_stringliteral_e4b1d025132960c3fb1a582cf2366864dc416744d1b9770aa69fe3749623ebc3", "typeString": "literal_string \" Value b\"" }, "value": " Value b" }, { "id": 1757, "name": "b", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 1737, "src": "9897:1:2", "typeDescriptions": { "typeIdentifier": "t_int256", "typeString": "int256" } }, { "id": 1758, "name": "decimals", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 1739, "src": "9900:8:2", "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": 1755, "name": "log_named_decimal_int", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 779, "src": "9862:21:2", "typeDescriptions": { "typeIdentifier": "t_function_event_nonpayable$_t_string_memory_ptr_$_t_int256_$_t_uint256_$returns$__$", "typeString": "function (string memory,int256,uint256)" } }, "id": 1759, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "9862:47:2", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, "id": 1760, "nodeType": "EmitStatement", "src": "9857:52:2" }, { "expression": { "arguments": [], "expression": { "argumentTypes": [], "id": 1761, "name": "fail", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 942, "src": "9923:4:2", "typeDescriptions": { "typeIdentifier": "t_function_internal_nonpayable$__$returns$__$", "typeString": "function ()" } }, "id": 1762, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "9923:6:2", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, "id": 1763, "nodeType": "ExpressionStatement", "src": "9923:6:2" } ] } } ] }, "implemented": true, "kind": "function", "modifiers": [], "name": "assertGeDecimal", "nameLocation": "9635:15:2", "parameters": { "id": 1740, "nodeType": "ParameterList", "parameters": [ { "constant": false, "id": 1735, "mutability": "mutable", "name": "a", "nameLocation": "9655:1:2", "nodeType": "VariableDeclaration", "scope": 1767, "src": "9651:5:2", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { "typeIdentifier": "t_int256", "typeString": "int256" }, "typeName": { "id": 1734, "name": "int", "nodeType": "ElementaryTypeName", "src": "9651:3:2", "typeDescriptions": { "typeIdentifier": "t_int256", "typeString": "int256" } }, "visibility": "internal" }, { "constant": false, "id": 1737, "mutability": "mutable", "name": "b", "nameLocation": "9662:1:2", "nodeType": "VariableDeclaration", "scope": 1767, "src": "9658:5:2", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { "typeIdentifier": "t_int256", "typeString": "int256" }, "typeName": { "id": 1736, "name": "int", "nodeType": "ElementaryTypeName", "src": "9658:3:2", "typeDescriptions": { "typeIdentifier": "t_int256", "typeString": "int256" } }, "visibility": "internal" }, { "constant": false, "id": 1739, "mutability": "mutable", "name": "decimals", "nameLocation": "9670:8:2", "nodeType": "VariableDeclaration", "scope": 1767, "src": "9665:13:2", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" }, "typeName": { "id": 1738, "name": "uint", "nodeType": "ElementaryTypeName", "src": "9665:4:2", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, "visibility": "internal" } ], "src": "9650:29:2" }, "returnParameters": { "id": 1741, "nodeType": "ParameterList", "parameters": [], "src": "9689:0:2" }, "scope": 2512, "stateMutability": "nonpayable", "virtual": false, "visibility": "internal" }, { "id": 1795, "nodeType": "FunctionDefinition", "src": "9951:214:2", "nodes": [], "body": { "id": 1794, "nodeType": "Block", "src": "10033:132:2", "nodes": [], "statements": [ { "condition": { "commonType": { "typeIdentifier": "t_int256", "typeString": "int256" }, "id": 1780, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { "id": 1778, "name": "a", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 1769, "src": "10047:1:2", "typeDescriptions": { "typeIdentifier": "t_int256", "typeString": "int256" } }, "nodeType": "BinaryOperation", "operator": "<", "rightExpression": { "id": 1779, "name": "b", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 1771, "src": "10051:1:2", "typeDescriptions": { "typeIdentifier": "t_int256", "typeString": "int256" } }, "src": "10047:5:2", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, "id": 1793, "nodeType": "IfStatement", "src": "10043:116:2", "trueBody": { "id": 1792, "nodeType": "Block", "src": "10054:105:2", "statements": [ { "eventCall": { "arguments": [ { "hexValue": "4572726f72", "id": 1782, "isConstant": false, "isLValue": false, "isPure": true, "kind": "string", "lValueRequested": false, "nodeType": "Literal", "src": "10090:7:2", "typeDescriptions": { "typeIdentifier": "t_stringliteral_e342daa49723ff3485f4ff5f755a17b8bc9c3c33bbd312ceee37c94eebfe45c1", "typeString": "literal_string \"Error\"" }, "value": "Error" }, { "id": 1783, "name": "err", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 1775, "src": "10099:3:2", "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": 1781, "name": "log_named_string", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 811, "src": "10073:16:2", "typeDescriptions": { "typeIdentifier": "t_function_event_nonpayable$_t_string_memory_ptr_$_t_string_memory_ptr_$returns$__$", "typeString": "function (string memory,string memory)" } }, "id": 1784, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "10073:30:2", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, "id": 1785, "nodeType": "EmitStatement", "src": "10068:35:2" }, { "expression": { "arguments": [ { "id": 1787, "name": "a", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 1769, "src": "10133:1:2", "typeDescriptions": { "typeIdentifier": "t_int256", "typeString": "int256" } }, { "id": 1788, "name": "b", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 1771, "src": "10136:1:2", "typeDescriptions": { "typeIdentifier": "t_int256", "typeString": "int256" } }, { "id": 1789, "name": "decimals", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 1773, "src": "10139:8:2", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } } ], "expression": { "argumentTypes": [ { "typeIdentifier": "t_int256", "typeString": "int256" }, { "typeIdentifier": "t_int256", "typeString": "int256" }, { "typeIdentifier": "t_uint256", "typeString": "uint256" } ], "id": 1786, "name": "assertGeDecimal", "nodeType": "Identifier", "overloadedDeclarations": [ 1767, 1795, 1829, 1857 ], "referencedDeclaration": 1767, "src": "10117:15:2", "typeDescriptions": { "typeIdentifier": "t_function_internal_nonpayable$_t_int256_$_t_int256_$_t_uint256_$returns$__$", "typeString": "function (int256,int256,uint256)" } }, "id": 1790, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "10117:31:2", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, "id": 1791, "nodeType": "ExpressionStatement", "src": "10117:31:2" } ] } } ] }, "implemented": true, "kind": "function", "modifiers": [], "name": "assertGeDecimal", "nameLocation": "9960:15:2", "parameters": { "id": 1776, "nodeType": "ParameterList", "parameters": [ { "constant": false, "id": 1769, "mutability": "mutable", "name": "a", "nameLocation": "9980:1:2", "nodeType": "VariableDeclaration", "scope": 1795, "src": "9976:5:2", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { "typeIdentifier": "t_int256", "typeString": "int256" }, "typeName": { "id": 1768, "name": "int", "nodeType": "ElementaryTypeName", "src": "9976:3:2", "typeDescriptions": { "typeIdentifier": "t_int256", "typeString": "int256" } }, "visibility": "internal" }, { "constant": false, "id": 1771, "mutability": "mutable", "name": "b", "nameLocation": "9987:1:2", "nodeType": "VariableDeclaration", "scope": 1795, "src": "9983:5:2", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { "typeIdentifier": "t_int256", "typeString": "int256" }, "typeName": { "id": 1770, "name": "int", "nodeType": "ElementaryTypeName", "src": "9983:3:2", "typeDescriptions": { "typeIdentifier": "t_int256", "typeString": "int256" } }, "visibility": "internal" }, { "constant": false, "id": 1773, "mutability": "mutable", "name": "decimals", "nameLocation": "9995:8:2", "nodeType": "VariableDeclaration", "scope": 1795, "src": "9990:13:2", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" }, "typeName": { "id": 1772, "name": "uint", "nodeType": "ElementaryTypeName", "src": "9990:4:2", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, "visibility": "internal" }, { "constant": false, "id": 1775, "mutability": "mutable", "name": "err", "nameLocation": "10019:3:2", "nodeType": "VariableDeclaration", "scope": 1795, "src": "10005:17:2", "stateVariable": false, "storageLocation": "memory", "typeDescriptions": { "typeIdentifier": "t_string_memory_ptr", "typeString": "string" }, "typeName": { "id": 1774, "name": "string", "nodeType": "ElementaryTypeName", "src": "10005:6:2", "typeDescriptions": { "typeIdentifier": "t_string_storage_ptr", "typeString": "string" } }, "visibility": "internal" } ], "src": "9975:48:2" }, "returnParameters": { "id": 1777, "nodeType": "ParameterList", "parameters": [], "src": "10033:0:2" }, "scope": 2512, "stateMutability": "nonpayable", "virtual": false, "visibility": "internal" }, { "id": 1829, "nodeType": "FunctionDefinition", "src": "10170:325:2", "nodes": [], "body": { "id": 1828, "nodeType": "Block", "src": "10235:260:2", "nodes": [], "statements": [ { "condition": { "commonType": { "typeIdentifier": "t_uint256", "typeString": "uint256" }, "id": 1806, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { "id": 1804, "name": "a", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 1797, "src": "10249:1:2", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, "nodeType": "BinaryOperation", "operator": "<", "rightExpression": { "id": 1805, "name": "b", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 1799, "src": "10253:1:2", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, "src": "10249:5:2", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, "id": 1827, "nodeType": "IfStatement", "src": "10245:244:2", "trueBody": { "id": 1826, "nodeType": "Block", "src": "10256:233:2", "statements": [ { "eventCall": { "arguments": [ { "hexValue": "4572726f723a2061203e3d2062206e6f7420736174697366696564205b646563696d616c2075696e745d", "id": 1808, "isConstant": false, "isLValue": false, "isPure": true, "kind": "string", "lValueRequested": false, "nodeType": "Literal", "src": "10279:44:2", "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": 1807, "name": "log", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 731, "src": "10275:3:2", "typeDescriptions": { "typeIdentifier": "t_function_event_nonpayable$_t_string_memory_ptr_$returns$__$", "typeString": "function (string memory)" } }, "id": 1809, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "10275:49:2", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, "id": 1810, "nodeType": "EmitStatement", "src": "10270:54:2" }, { "eventCall": { "arguments": [ { "hexValue": "202056616c75652061", "id": 1812, "isConstant": false, "isLValue": false, "isPure": true, "kind": "string", "lValueRequested": false, "nodeType": "Literal", "src": "10366:11:2", "typeDescriptions": { "typeIdentifier": "t_stringliteral_c592b529b874569f165479a5a4380dedf000796f11e04035f76bfa7310b31d26", "typeString": "literal_string \" Value a\"" }, "value": " Value a" }, { "id": 1813, "name": "a", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 1797, "src": "10379:1:2", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, { "id": 1814, "name": "decimals", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 1801, "src": "10382:8:2", "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": 1811, "name": "log_named_decimal_uint", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 787, "src": "10343:22:2", "typeDescriptions": { "typeIdentifier": "t_function_event_nonpayable$_t_string_memory_ptr_$_t_uint256_$_t_uint256_$returns$__$", "typeString": "function (string memory,uint256,uint256)" } }, "id": 1815, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "10343:48:2", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, "id": 1816, "nodeType": "EmitStatement", "src": "10338:53:2" }, { "eventCall": { "arguments": [ { "hexValue": "202056616c75652062", "id": 1818, "isConstant": false, "isLValue": false, "isPure": true, "kind": "string", "lValueRequested": false, "nodeType": "Literal", "src": "10433:11:2", "typeDescriptions": { "typeIdentifier": "t_stringliteral_e4b1d025132960c3fb1a582cf2366864dc416744d1b9770aa69fe3749623ebc3", "typeString": "literal_string \" Value b\"" }, "value": " Value b" }, { "id": 1819, "name": "b", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 1799, "src": "10446:1:2", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, { "id": 1820, "name": "decimals", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 1801, "src": "10449:8:2", "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": 1817, "name": "log_named_decimal_uint", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 787, "src": "10410:22:2", "typeDescriptions": { "typeIdentifier": "t_function_event_nonpayable$_t_string_memory_ptr_$_t_uint256_$_t_uint256_$returns$__$", "typeString": "function (string memory,uint256,uint256)" } }, "id": 1821, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "10410:48:2", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, "id": 1822, "nodeType": "EmitStatement", "src": "10405:53:2" }, { "expression": { "arguments": [], "expression": { "argumentTypes": [], "id": 1823, "name": "fail", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 942, "src": "10472:4:2", "typeDescriptions": { "typeIdentifier": "t_function_internal_nonpayable$__$returns$__$", "typeString": "function ()" } }, "id": 1824, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "10472:6:2", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, "id": 1825, "nodeType": "ExpressionStatement", "src": "10472:6:2" } ] } } ] }, "implemented": true, "kind": "function", "modifiers": [], "name": "assertGeDecimal", "nameLocation": "10179:15:2", "parameters": { "id": 1802, "nodeType": "ParameterList", "parameters": [ { "constant": false, "id": 1797, "mutability": "mutable", "name": "a", "nameLocation": "10200:1:2", "nodeType": "VariableDeclaration", "scope": 1829, "src": "10195:6:2", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" }, "typeName": { "id": 1796, "name": "uint", "nodeType": "ElementaryTypeName", "src": "10195:4:2", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, "visibility": "internal" }, { "constant": false, "id": 1799, "mutability": "mutable", "name": "b", "nameLocation": "10208:1:2", "nodeType": "VariableDeclaration", "scope": 1829, "src": "10203:6:2", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" }, "typeName": { "id": 1798, "name": "uint", "nodeType": "ElementaryTypeName", "src": "10203:4:2", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, "visibility": "internal" }, { "constant": false, "id": 1801, "mutability": "mutable", "name": "decimals", "nameLocation": "10216:8:2", "nodeType": "VariableDeclaration", "scope": 1829, "src": "10211:13:2", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" }, "typeName": { "id": 1800, "name": "uint", "nodeType": "ElementaryTypeName", "src": "10211:4:2", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, "visibility": "internal" } ], "src": "10194:31:2" }, "returnParameters": { "id": 1803, "nodeType": "ParameterList", "parameters": [], "src": "10235:0:2" }, "scope": 2512, "stateMutability": "nonpayable", "virtual": false, "visibility": "internal" }, { "id": 1857, "nodeType": "FunctionDefinition", "src": "10500:216:2", "nodes": [], "body": { "id": 1856, "nodeType": "Block", "src": "10584:132:2", "nodes": [], "statements": [ { "condition": { "commonType": { "typeIdentifier": "t_uint256", "typeString": "uint256" }, "id": 1842, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { "id": 1840, "name": "a", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 1831, "src": "10598:1:2", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, "nodeType": "BinaryOperation", "operator": "<", "rightExpression": { "id": 1841, "name": "b", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 1833, "src": "10602:1:2", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, "src": "10598:5:2", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, "id": 1855, "nodeType": "IfStatement", "src": "10594:116:2", "trueBody": { "id": 1854, "nodeType": "Block", "src": "10605:105:2", "statements": [ { "eventCall": { "arguments": [ { "hexValue": "4572726f72", "id": 1844, "isConstant": false, "isLValue": false, "isPure": true, "kind": "string", "lValueRequested": false, "nodeType": "Literal", "src": "10641:7:2", "typeDescriptions": { "typeIdentifier": "t_stringliteral_e342daa49723ff3485f4ff5f755a17b8bc9c3c33bbd312ceee37c94eebfe45c1", "typeString": "literal_string \"Error\"" }, "value": "Error" }, { "id": 1845, "name": "err", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 1837, "src": "10650:3:2", "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": 1843, "name": "log_named_string", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 811, "src": "10624:16:2", "typeDescriptions": { "typeIdentifier": "t_function_event_nonpayable$_t_string_memory_ptr_$_t_string_memory_ptr_$returns$__$", "typeString": "function (string memory,string memory)" } }, "id": 1846, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "10624:30:2", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, "id": 1847, "nodeType": "EmitStatement", "src": "10619:35:2" }, { "expression": { "arguments": [ { "id": 1849, "name": "a", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 1831, "src": "10684:1:2", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, { "id": 1850, "name": "b", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 1833, "src": "10687:1:2", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, { "id": 1851, "name": "decimals", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 1835, "src": "10690:8:2", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } } ], "expression": { "argumentTypes": [ { "typeIdentifier": "t_uint256", "typeString": "uint256" }, { "typeIdentifier": "t_uint256", "typeString": "uint256" }, { "typeIdentifier": "t_uint256", "typeString": "uint256" } ], "id": 1848, "name": "assertGeDecimal", "nodeType": "Identifier", "overloadedDeclarations": [ 1767, 1795, 1829, 1857 ], "referencedDeclaration": 1829, "src": "10668:15:2", "typeDescriptions": { "typeIdentifier": "t_function_internal_nonpayable$_t_uint256_$_t_uint256_$_t_uint256_$returns$__$", "typeString": "function (uint256,uint256,uint256)" } }, "id": 1852, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "10668:31:2", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, "id": 1853, "nodeType": "ExpressionStatement", "src": "10668:31:2" } ] } } ] }, "implemented": true, "kind": "function", "modifiers": [], "name": "assertGeDecimal", "nameLocation": "10509:15:2", "parameters": { "id": 1838, "nodeType": "ParameterList", "parameters": [ { "constant": false, "id": 1831, "mutability": "mutable", "name": "a", "nameLocation": "10530:1:2", "nodeType": "VariableDeclaration", "scope": 1857, "src": "10525:6:2", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" }, "typeName": { "id": 1830, "name": "uint", "nodeType": "ElementaryTypeName", "src": "10525:4:2", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, "visibility": "internal" }, { "constant": false, "id": 1833, "mutability": "mutable", "name": "b", "nameLocation": "10538:1:2", "nodeType": "VariableDeclaration", "scope": 1857, "src": "10533:6:2", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" }, "typeName": { "id": 1832, "name": "uint", "nodeType": "ElementaryTypeName", "src": "10533:4:2", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, "visibility": "internal" }, { "constant": false, "id": 1835, "mutability": "mutable", "name": "decimals", "nameLocation": "10546:8:2", "nodeType": "VariableDeclaration", "scope": 1857, "src": "10541:13:2", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" }, "typeName": { "id": 1834, "name": "uint", "nodeType": "ElementaryTypeName", "src": "10541:4:2", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, "visibility": "internal" }, { "constant": false, "id": 1837, "mutability": "mutable", "name": "err", "nameLocation": "10570:3:2", "nodeType": "VariableDeclaration", "scope": 1857, "src": "10556:17:2", "stateVariable": false, "storageLocation": "memory", "typeDescriptions": { "typeIdentifier": "t_string_memory_ptr", "typeString": "string" }, "typeName": { "id": 1836, "name": "string", "nodeType": "ElementaryTypeName", "src": "10556:6:2", "typeDescriptions": { "typeIdentifier": "t_string_storage_ptr", "typeString": "string" } }, "visibility": "internal" } ], "src": "10524:50:2" }, "returnParameters": { "id": 1839, "nodeType": "ParameterList", "parameters": [], "src": "10584:0:2" }, "scope": 2512, "stateMutability": "nonpayable", "virtual": false, "visibility": "internal" }, { "id": 1887, "nodeType": "FunctionDefinition", "src": "10722:259:2", "nodes": [], "body": { "id": 1886, "nodeType": "Block", "src": "10765:216:2", "nodes": [], "statements": [ { "condition": { "commonType": { "typeIdentifier": "t_uint256", "typeString": "uint256" }, "id": 1866, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { "id": 1864, "name": "a", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 1859, "src": "10779:1:2", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, "nodeType": "BinaryOperation", "operator": ">=", "rightExpression": { "id": 1865, "name": "b", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 1861, "src": "10784:1:2", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, "src": "10779:6:2", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, "id": 1885, "nodeType": "IfStatement", "src": "10775:200:2", "trueBody": { "id": 1884, "nodeType": "Block", "src": "10787:188:2", "statements": [ { "eventCall": { "arguments": [ { "hexValue": "4572726f723a2061203c2062206e6f7420736174697366696564205b75696e745d", "id": 1868, "isConstant": false, "isLValue": false, "isPure": true, "kind": "string", "lValueRequested": false, "nodeType": "Literal", "src": "10810:35:2", "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": 1867, "name": "log", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 731, "src": "10806:3:2", "typeDescriptions": { "typeIdentifier": "t_function_event_nonpayable$_t_string_memory_ptr_$returns$__$", "typeString": "function (string memory)" } }, "id": 1869, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "10806:40:2", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, "id": 1870, "nodeType": "EmitStatement", "src": "10801:45:2" }, { "eventCall": { "arguments": [ { "hexValue": "202056616c75652061", "id": 1872, "isConstant": false, "isLValue": false, "isPure": true, "kind": "string", "lValueRequested": false, "nodeType": "Literal", "src": "10880:11:2", "typeDescriptions": { "typeIdentifier": "t_stringliteral_c592b529b874569f165479a5a4380dedf000796f11e04035f76bfa7310b31d26", "typeString": "literal_string \" Value a\"" }, "value": " Value a" }, { "id": 1873, "name": "a", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 1859, "src": "10893:1:2", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } } ], "expression": { "argumentTypes": [ { "typeIdentifier": "t_stringliteral_c592b529b874569f165479a5a4380dedf000796f11e04035f76bfa7310b31d26", "typeString": "literal_string \" Value a\"" }, { "typeIdentifier": "t_uint256", "typeString": "uint256" } ], "id": 1871, "name": "log_named_uint", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 799, "src": "10865:14:2", "typeDescriptions": { "typeIdentifier": "t_function_event_nonpayable$_t_string_memory_ptr_$_t_uint256_$returns$__$", "typeString": "function (string memory,uint256)" } }, "id": 1874, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "10865:30:2", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, "id": 1875, "nodeType": "EmitStatement", "src": "10860:35:2" }, { "eventCall": { "arguments": [ { "hexValue": "202056616c75652062", "id": 1877, "isConstant": false, "isLValue": false, "isPure": true, "kind": "string", "lValueRequested": false, "nodeType": "Literal", "src": "10929:11:2", "typeDescriptions": { "typeIdentifier": "t_stringliteral_e4b1d025132960c3fb1a582cf2366864dc416744d1b9770aa69fe3749623ebc3", "typeString": "literal_string \" Value b\"" }, "value": " Value b" }, { "id": 1878, "name": "b", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 1861, "src": "10942:1:2", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } } ], "expression": { "argumentTypes": [ { "typeIdentifier": "t_stringliteral_e4b1d025132960c3fb1a582cf2366864dc416744d1b9770aa69fe3749623ebc3", "typeString": "literal_string \" Value b\"" }, { "typeIdentifier": "t_uint256", "typeString": "uint256" } ], "id": 1876, "name": "log_named_uint", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 799, "src": "10914:14:2", "typeDescriptions": { "typeIdentifier": "t_function_event_nonpayable$_t_string_memory_ptr_$_t_uint256_$returns$__$", "typeString": "function (string memory,uint256)" } }, "id": 1879, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "10914:30:2", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, "id": 1880, "nodeType": "EmitStatement", "src": "10909:35:2" }, { "expression": { "arguments": [], "expression": { "argumentTypes": [], "id": 1881, "name": "fail", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 942, "src": "10958:4:2", "typeDescriptions": { "typeIdentifier": "t_function_internal_nonpayable$__$returns$__$", "typeString": "function ()" } }, "id": 1882, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "10958:6:2", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, "id": 1883, "nodeType": "ExpressionStatement", "src": "10958:6:2" } ] } } ] }, "implemented": true, "kind": "function", "modifiers": [], "name": "assertLt", "nameLocation": "10731:8:2", "parameters": { "id": 1862, "nodeType": "ParameterList", "parameters": [ { "constant": false, "id": 1859, "mutability": "mutable", "name": "a", "nameLocation": "10745:1:2", "nodeType": "VariableDeclaration", "scope": 1887, "src": "10740:6:2", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" }, "typeName": { "id": 1858, "name": "uint", "nodeType": "ElementaryTypeName", "src": "10740:4:2", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, "visibility": "internal" }, { "constant": false, "id": 1861, "mutability": "mutable", "name": "b", "nameLocation": "10753:1:2", "nodeType": "VariableDeclaration", "scope": 1887, "src": "10748:6:2", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" }, "typeName": { "id": 1860, "name": "uint", "nodeType": "ElementaryTypeName", "src": "10748:4:2", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, "visibility": "internal" } ], "src": "10739:16:2" }, "returnParameters": { "id": 1863, "nodeType": "ParameterList", "parameters": [], "src": "10765:0:2" }, "scope": 2512, "stateMutability": "nonpayable", "virtual": false, "visibility": "internal" }, { "id": 1912, "nodeType": "FunctionDefinition", "src": "10986:178:2", "nodes": [], "body": { "id": 1911, "nodeType": "Block", "src": "11048:116:2", "nodes": [], "statements": [ { "condition": { "commonType": { "typeIdentifier": "t_uint256", "typeString": "uint256" }, "id": 1898, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { "id": 1896, "name": "a", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 1889, "src": "11062:1:2", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, "nodeType": "BinaryOperation", "operator": ">=", "rightExpression": { "id": 1897, "name": "b", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 1891, "src": "11067:1:2", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, "src": "11062:6:2", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, "id": 1910, "nodeType": "IfStatement", "src": "11058:100:2", "trueBody": { "id": 1909, "nodeType": "Block", "src": "11070:88:2", "statements": [ { "eventCall": { "arguments": [ { "hexValue": "4572726f72", "id": 1900, "isConstant": false, "isLValue": false, "isPure": true, "kind": "string", "lValueRequested": false, "nodeType": "Literal", "src": "11106:7:2", "typeDescriptions": { "typeIdentifier": "t_stringliteral_e342daa49723ff3485f4ff5f755a17b8bc9c3c33bbd312ceee37c94eebfe45c1", "typeString": "literal_string \"Error\"" }, "value": "Error" }, { "id": 1901, "name": "err", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 1893, "src": "11115:3:2", "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": 1899, "name": "log_named_string", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 811, "src": "11089:16:2", "typeDescriptions": { "typeIdentifier": "t_function_event_nonpayable$_t_string_memory_ptr_$_t_string_memory_ptr_$returns$__$", "typeString": "function (string memory,string memory)" } }, "id": 1902, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "11089:30:2", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, "id": 1903, "nodeType": "EmitStatement", "src": "11084:35:2" }, { "expression": { "arguments": [ { "id": 1905, "name": "a", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 1889, "src": "11142:1:2", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, { "id": 1906, "name": "b", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 1891, "src": "11145:1:2", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } } ], "expression": { "argumentTypes": [ { "typeIdentifier": "t_uint256", "typeString": "uint256" }, { "typeIdentifier": "t_uint256", "typeString": "uint256" } ], "id": 1904, "name": "assertLt", "nodeType": "Identifier", "overloadedDeclarations": [ 1887, 1912, 1942, 1967 ], "referencedDeclaration": 1887, "src": "11133:8:2", "typeDescriptions": { "typeIdentifier": "t_function_internal_nonpayable$_t_uint256_$_t_uint256_$returns$__$", "typeString": "function (uint256,uint256)" } }, "id": 1907, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "11133:14:2", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, "id": 1908, "nodeType": "ExpressionStatement", "src": "11133:14:2" } ] } } ] }, "implemented": true, "kind": "function", "modifiers": [], "name": "assertLt", "nameLocation": "10995:8:2", "parameters": { "id": 1894, "nodeType": "ParameterList", "parameters": [ { "constant": false, "id": 1889, "mutability": "mutable", "name": "a", "nameLocation": "11009:1:2", "nodeType": "VariableDeclaration", "scope": 1912, "src": "11004:6:2", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" }, "typeName": { "id": 1888, "name": "uint", "nodeType": "ElementaryTypeName", "src": "11004:4:2", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, "visibility": "internal" }, { "constant": false, "id": 1891, "mutability": "mutable", "name": "b", "nameLocation": "11017:1:2", "nodeType": "VariableDeclaration", "scope": 1912, "src": "11012:6:2", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" }, "typeName": { "id": 1890, "name": "uint", "nodeType": "ElementaryTypeName", "src": "11012:4:2", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, "visibility": "internal" }, { "constant": false, "id": 1893, "mutability": "mutable", "name": "err", "nameLocation": "11034:3:2", "nodeType": "VariableDeclaration", "scope": 1912, "src": "11020:17:2", "stateVariable": false, "storageLocation": "memory", "typeDescriptions": { "typeIdentifier": "t_string_memory_ptr", "typeString": "string" }, "typeName": { "id": 1892, "name": "string", "nodeType": "ElementaryTypeName", "src": "11020:6:2", "typeDescriptions": { "typeIdentifier": "t_string_storage_ptr", "typeString": "string" } }, "visibility": "internal" } ], "src": "11003:35:2" }, "returnParameters": { "id": 1895, "nodeType": "ParameterList", "parameters": [], "src": "11048:0:2" }, "scope": 2512, "stateMutability": "nonpayable", "virtual": false, "visibility": "internal" }, { "id": 1942, "nodeType": "FunctionDefinition", "src": "11169:254:2", "nodes": [], "body": { "id": 1941, "nodeType": "Block", "src": "11210:213:2", "nodes": [], "statements": [ { "condition": { "commonType": { "typeIdentifier": "t_int256", "typeString": "int256" }, "id": 1921, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { "id": 1919, "name": "a", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 1914, "src": "11224:1:2", "typeDescriptions": { "typeIdentifier": "t_int256", "typeString": "int256" } }, "nodeType": "BinaryOperation", "operator": ">=", "rightExpression": { "id": 1920, "name": "b", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 1916, "src": "11229:1:2", "typeDescriptions": { "typeIdentifier": "t_int256", "typeString": "int256" } }, "src": "11224:6:2", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, "id": 1940, "nodeType": "IfStatement", "src": "11220:197:2", "trueBody": { "id": 1939, "nodeType": "Block", "src": "11232:185:2", "statements": [ { "eventCall": { "arguments": [ { "hexValue": "4572726f723a2061203c2062206e6f7420736174697366696564205b696e745d", "id": 1923, "isConstant": false, "isLValue": false, "isPure": true, "kind": "string", "lValueRequested": false, "nodeType": "Literal", "src": "11255:34:2", "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": 1922, "name": "log", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 731, "src": "11251:3:2", "typeDescriptions": { "typeIdentifier": "t_function_event_nonpayable$_t_string_memory_ptr_$returns$__$", "typeString": "function (string memory)" } }, "id": 1924, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "11251:39:2", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, "id": 1925, "nodeType": "EmitStatement", "src": "11246:44:2" }, { "eventCall": { "arguments": [ { "hexValue": "202056616c75652061", "id": 1927, "isConstant": false, "isLValue": false, "isPure": true, "kind": "string", "lValueRequested": false, "nodeType": "Literal", "src": "11323:11:2", "typeDescriptions": { "typeIdentifier": "t_stringliteral_c592b529b874569f165479a5a4380dedf000796f11e04035f76bfa7310b31d26", "typeString": "literal_string \" Value a\"" }, "value": " Value a" }, { "id": 1928, "name": "a", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 1914, "src": "11336:1:2", "typeDescriptions": { "typeIdentifier": "t_int256", "typeString": "int256" } } ], "expression": { "argumentTypes": [ { "typeIdentifier": "t_stringliteral_c592b529b874569f165479a5a4380dedf000796f11e04035f76bfa7310b31d26", "typeString": "literal_string \" Value a\"" }, { "typeIdentifier": "t_int256", "typeString": "int256" } ], "id": 1926, "name": "log_named_int", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 793, "src": "11309:13:2", "typeDescriptions": { "typeIdentifier": "t_function_event_nonpayable$_t_string_memory_ptr_$_t_int256_$returns$__$", "typeString": "function (string memory,int256)" } }, "id": 1929, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "11309:29:2", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, "id": 1930, "nodeType": "EmitStatement", "src": "11304:34:2" }, { "eventCall": { "arguments": [ { "hexValue": "202056616c75652062", "id": 1932, "isConstant": false, "isLValue": false, "isPure": true, "kind": "string", "lValueRequested": false, "nodeType": "Literal", "src": "11371:11:2", "typeDescriptions": { "typeIdentifier": "t_stringliteral_e4b1d025132960c3fb1a582cf2366864dc416744d1b9770aa69fe3749623ebc3", "typeString": "literal_string \" Value b\"" }, "value": " Value b" }, { "id": 1933, "name": "b", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 1916, "src": "11384:1:2", "typeDescriptions": { "typeIdentifier": "t_int256", "typeString": "int256" } } ], "expression": { "argumentTypes": [ { "typeIdentifier": "t_stringliteral_e4b1d025132960c3fb1a582cf2366864dc416744d1b9770aa69fe3749623ebc3", "typeString": "literal_string \" Value b\"" }, { "typeIdentifier": "t_int256", "typeString": "int256" } ], "id": 1931, "name": "log_named_int", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 793, "src": "11357:13:2", "typeDescriptions": { "typeIdentifier": "t_function_event_nonpayable$_t_string_memory_ptr_$_t_int256_$returns$__$", "typeString": "function (string memory,int256)" } }, "id": 1934, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "11357:29:2", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, "id": 1935, "nodeType": "EmitStatement", "src": "11352:34:2" }, { "expression": { "arguments": [], "expression": { "argumentTypes": [], "id": 1936, "name": "fail", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 942, "src": "11400:4:2", "typeDescriptions": { "typeIdentifier": "t_function_internal_nonpayable$__$returns$__$", "typeString": "function ()" } }, "id": 1937, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "11400:6:2", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, "id": 1938, "nodeType": "ExpressionStatement", "src": "11400:6:2" } ] } } ] }, "implemented": true, "kind": "function", "modifiers": [], "name": "assertLt", "nameLocation": "11178:8:2", "parameters": { "id": 1917, "nodeType": "ParameterList", "parameters": [ { "constant": false, "id": 1914, "mutability": "mutable", "name": "a", "nameLocation": "11191:1:2", "nodeType": "VariableDeclaration", "scope": 1942, "src": "11187:5:2", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { "typeIdentifier": "t_int256", "typeString": "int256" }, "typeName": { "id": 1913, "name": "int", "nodeType": "ElementaryTypeName", "src": "11187:3:2", "typeDescriptions": { "typeIdentifier": "t_int256", "typeString": "int256" } }, "visibility": "internal" }, { "constant": false, "id": 1916, "mutability": "mutable", "name": "b", "nameLocation": "11198:1:2", "nodeType": "VariableDeclaration", "scope": 1942, "src": "11194:5:2", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { "typeIdentifier": "t_int256", "typeString": "int256" }, "typeName": { "id": 1915, "name": "int", "nodeType": "ElementaryTypeName", "src": "11194:3:2", "typeDescriptions": { "typeIdentifier": "t_int256", "typeString": "int256" } }, "visibility": "internal" } ], "src": "11186:14:2" }, "returnParameters": { "id": 1918, "nodeType": "ParameterList", "parameters": [], "src": "11210:0:2" }, "scope": 2512, "stateMutability": "nonpayable", "virtual": false, "visibility": "internal" }, { "id": 1967, "nodeType": "FunctionDefinition", "src": "11428:176:2", "nodes": [], "body": { "id": 1966, "nodeType": "Block", "src": "11488:116:2", "nodes": [], "statements": [ { "condition": { "commonType": { "typeIdentifier": "t_int256", "typeString": "int256" }, "id": 1953, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { "id": 1951, "name": "a", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 1944, "src": "11502:1:2", "typeDescriptions": { "typeIdentifier": "t_int256", "typeString": "int256" } }, "nodeType": "BinaryOperation", "operator": ">=", "rightExpression": { "id": 1952, "name": "b", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 1946, "src": "11507:1:2", "typeDescriptions": { "typeIdentifier": "t_int256", "typeString": "int256" } }, "src": "11502:6:2", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, "id": 1965, "nodeType": "IfStatement", "src": "11498:100:2", "trueBody": { "id": 1964, "nodeType": "Block", "src": "11510:88:2", "statements": [ { "eventCall": { "arguments": [ { "hexValue": "4572726f72", "id": 1955, "isConstant": false, "isLValue": false, "isPure": true, "kind": "string", "lValueRequested": false, "nodeType": "Literal", "src": "11546:7:2", "typeDescriptions": { "typeIdentifier": "t_stringliteral_e342daa49723ff3485f4ff5f755a17b8bc9c3c33bbd312ceee37c94eebfe45c1", "typeString": "literal_string \"Error\"" }, "value": "Error" }, { "id": 1956, "name": "err", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 1948, "src": "11555:3:2", "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": 1954, "name": "log_named_string", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 811, "src": "11529:16:2", "typeDescriptions": { "typeIdentifier": "t_function_event_nonpayable$_t_string_memory_ptr_$_t_string_memory_ptr_$returns$__$", "typeString": "function (string memory,string memory)" } }, "id": 1957, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "11529:30:2", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, "id": 1958, "nodeType": "EmitStatement", "src": "11524:35:2" }, { "expression": { "arguments": [ { "id": 1960, "name": "a", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 1944, "src": "11582:1:2", "typeDescriptions": { "typeIdentifier": "t_int256", "typeString": "int256" } }, { "id": 1961, "name": "b", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 1946, "src": "11585:1:2", "typeDescriptions": { "typeIdentifier": "t_int256", "typeString": "int256" } } ], "expression": { "argumentTypes": [ { "typeIdentifier": "t_int256", "typeString": "int256" }, { "typeIdentifier": "t_int256", "typeString": "int256" } ], "id": 1959, "name": "assertLt", "nodeType": "Identifier", "overloadedDeclarations": [ 1887, 1912, 1942, 1967 ], "referencedDeclaration": 1942, "src": "11573:8:2", "typeDescriptions": { "typeIdentifier": "t_function_internal_nonpayable$_t_int256_$_t_int256_$returns$__$", "typeString": "function (int256,int256)" } }, "id": 1962, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "11573:14:2", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, "id": 1963, "nodeType": "ExpressionStatement", "src": "11573:14:2" } ] } } ] }, "implemented": true, "kind": "function", "modifiers": [], "name": "assertLt", "nameLocation": "11437:8:2", "parameters": { "id": 1949, "nodeType": "ParameterList", "parameters": [ { "constant": false, "id": 1944, "mutability": "mutable", "name": "a", "nameLocation": "11450:1:2", "nodeType": "VariableDeclaration", "scope": 1967, "src": "11446:5:2", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { "typeIdentifier": "t_int256", "typeString": "int256" }, "typeName": { "id": 1943, "name": "int", "nodeType": "ElementaryTypeName", "src": "11446:3:2", "typeDescriptions": { "typeIdentifier": "t_int256", "typeString": "int256" } }, "visibility": "internal" }, { "constant": false, "id": 1946, "mutability": "mutable", "name": "b", "nameLocation": "11457:1:2", "nodeType": "VariableDeclaration", "scope": 1967, "src": "11453:5:2", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { "typeIdentifier": "t_int256", "typeString": "int256" }, "typeName": { "id": 1945, "name": "int", "nodeType": "ElementaryTypeName", "src": "11453:3:2", "typeDescriptions": { "typeIdentifier": "t_int256", "typeString": "int256" } }, "visibility": "internal" }, { "constant": false, "id": 1948, "mutability": "mutable", "name": "err", "nameLocation": "11474:3:2", "nodeType": "VariableDeclaration", "scope": 1967, "src": "11460:17:2", "stateVariable": false, "storageLocation": "memory", "typeDescriptions": { "typeIdentifier": "t_string_memory_ptr", "typeString": "string" }, "typeName": { "id": 1947, "name": "string", "nodeType": "ElementaryTypeName", "src": "11460:6:2", "typeDescriptions": { "typeIdentifier": "t_string_storage_ptr", "typeString": "string" } }, "visibility": "internal" } ], "src": "11445:33:2" }, "returnParameters": { "id": 1950, "nodeType": "ParameterList", "parameters": [], "src": "11488:0:2" }, "scope": 2512, "stateMutability": "nonpayable", "virtual": false, "visibility": "internal" }, { "id": 2001, "nodeType": "FunctionDefinition", "src": "11609:320:2", "nodes": [], "body": { "id": 2000, "nodeType": "Block", "src": "11672:257:2", "nodes": [], "statements": [ { "condition": { "commonType": { "typeIdentifier": "t_int256", "typeString": "int256" }, "id": 1978, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { "id": 1976, "name": "a", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 1969, "src": "11686:1:2", "typeDescriptions": { "typeIdentifier": "t_int256", "typeString": "int256" } }, "nodeType": "BinaryOperation", "operator": ">=", "rightExpression": { "id": 1977, "name": "b", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 1971, "src": "11691:1:2", "typeDescriptions": { "typeIdentifier": "t_int256", "typeString": "int256" } }, "src": "11686:6:2", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, "id": 1999, "nodeType": "IfStatement", "src": "11682:241:2", "trueBody": { "id": 1998, "nodeType": "Block", "src": "11694:229:2", "statements": [ { "eventCall": { "arguments": [ { "hexValue": "4572726f723a2061203c2062206e6f7420736174697366696564205b646563696d616c20696e745d", "id": 1980, "isConstant": false, "isLValue": false, "isPure": true, "kind": "string", "lValueRequested": false, "nodeType": "Literal", "src": "11717:42:2", "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": 1979, "name": "log", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 731, "src": "11713:3:2", "typeDescriptions": { "typeIdentifier": "t_function_event_nonpayable$_t_string_memory_ptr_$returns$__$", "typeString": "function (string memory)" } }, "id": 1981, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "11713:47:2", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, "id": 1982, "nodeType": "EmitStatement", "src": "11708:52:2" }, { "eventCall": { "arguments": [ { "hexValue": "202056616c75652061", "id": 1984, "isConstant": false, "isLValue": false, "isPure": true, "kind": "string", "lValueRequested": false, "nodeType": "Literal", "src": "11801:11:2", "typeDescriptions": { "typeIdentifier": "t_stringliteral_c592b529b874569f165479a5a4380dedf000796f11e04035f76bfa7310b31d26", "typeString": "literal_string \" Value a\"" }, "value": " Value a" }, { "id": 1985, "name": "a", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 1969, "src": "11814:1:2", "typeDescriptions": { "typeIdentifier": "t_int256", "typeString": "int256" } }, { "id": 1986, "name": "decimals", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 1973, "src": "11817:8:2", "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": 1983, "name": "log_named_decimal_int", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 779, "src": "11779:21:2", "typeDescriptions": { "typeIdentifier": "t_function_event_nonpayable$_t_string_memory_ptr_$_t_int256_$_t_uint256_$returns$__$", "typeString": "function (string memory,int256,uint256)" } }, "id": 1987, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "11779:47:2", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, "id": 1988, "nodeType": "EmitStatement", "src": "11774:52:2" }, { "eventCall": { "arguments": [ { "hexValue": "202056616c75652062", "id": 1990, "isConstant": false, "isLValue": false, "isPure": true, "kind": "string", "lValueRequested": false, "nodeType": "Literal", "src": "11867:11:2", "typeDescriptions": { "typeIdentifier": "t_stringliteral_e4b1d025132960c3fb1a582cf2366864dc416744d1b9770aa69fe3749623ebc3", "typeString": "literal_string \" Value b\"" }, "value": " Value b" }, { "id": 1991, "name": "b", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 1971, "src": "11880:1:2", "typeDescriptions": { "typeIdentifier": "t_int256", "typeString": "int256" } }, { "id": 1992, "name": "decimals", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 1973, "src": "11883:8:2", "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": 1989, "name": "log_named_decimal_int", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 779, "src": "11845:21:2", "typeDescriptions": { "typeIdentifier": "t_function_event_nonpayable$_t_string_memory_ptr_$_t_int256_$_t_uint256_$returns$__$", "typeString": "function (string memory,int256,uint256)" } }, "id": 1993, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "11845:47:2", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, "id": 1994, "nodeType": "EmitStatement", "src": "11840:52:2" }, { "expression": { "arguments": [], "expression": { "argumentTypes": [], "id": 1995, "name": "fail", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 942, "src": "11906:4:2", "typeDescriptions": { "typeIdentifier": "t_function_internal_nonpayable$__$returns$__$", "typeString": "function ()" } }, "id": 1996, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "11906:6:2", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, "id": 1997, "nodeType": "ExpressionStatement", "src": "11906:6:2" } ] } } ] }, "implemented": true, "kind": "function", "modifiers": [], "name": "assertLtDecimal", "nameLocation": "11618:15:2", "parameters": { "id": 1974, "nodeType": "ParameterList", "parameters": [ { "constant": false, "id": 1969, "mutability": "mutable", "name": "a", "nameLocation": "11638:1:2", "nodeType": "VariableDeclaration", "scope": 2001, "src": "11634:5:2", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { "typeIdentifier": "t_int256", "typeString": "int256" }, "typeName": { "id": 1968, "name": "int", "nodeType": "ElementaryTypeName", "src": "11634:3:2", "typeDescriptions": { "typeIdentifier": "t_int256", "typeString": "int256" } }, "visibility": "internal" }, { "constant": false, "id": 1971, "mutability": "mutable", "name": "b", "nameLocation": "11645:1:2", "nodeType": "VariableDeclaration", "scope": 2001, "src": "11641:5:2", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { "typeIdentifier": "t_int256", "typeString": "int256" }, "typeName": { "id": 1970, "name": "int", "nodeType": "ElementaryTypeName", "src": "11641:3:2", "typeDescriptions": { "typeIdentifier": "t_int256", "typeString": "int256" } }, "visibility": "internal" }, { "constant": false, "id": 1973, "mutability": "mutable", "name": "decimals", "nameLocation": "11653:8:2", "nodeType": "VariableDeclaration", "scope": 2001, "src": "11648:13:2", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" }, "typeName": { "id": 1972, "name": "uint", "nodeType": "ElementaryTypeName", "src": "11648:4:2", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, "visibility": "internal" } ], "src": "11633:29:2" }, "returnParameters": { "id": 1975, "nodeType": "ParameterList", "parameters": [], "src": "11672:0:2" }, "scope": 2512, "stateMutability": "nonpayable", "virtual": false, "visibility": "internal" }, { "id": 2029, "nodeType": "FunctionDefinition", "src": "11934:215:2", "nodes": [], "body": { "id": 2028, "nodeType": "Block", "src": "12016:133:2", "nodes": [], "statements": [ { "condition": { "commonType": { "typeIdentifier": "t_int256", "typeString": "int256" }, "id": 2014, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { "id": 2012, "name": "a", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 2003, "src": "12030:1:2", "typeDescriptions": { "typeIdentifier": "t_int256", "typeString": "int256" } }, "nodeType": "BinaryOperation", "operator": ">=", "rightExpression": { "id": 2013, "name": "b", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 2005, "src": "12035:1:2", "typeDescriptions": { "typeIdentifier": "t_int256", "typeString": "int256" } }, "src": "12030:6:2", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, "id": 2027, "nodeType": "IfStatement", "src": "12026:117:2", "trueBody": { "id": 2026, "nodeType": "Block", "src": "12038:105:2", "statements": [ { "eventCall": { "arguments": [ { "hexValue": "4572726f72", "id": 2016, "isConstant": false, "isLValue": false, "isPure": true, "kind": "string", "lValueRequested": false, "nodeType": "Literal", "src": "12074:7:2", "typeDescriptions": { "typeIdentifier": "t_stringliteral_e342daa49723ff3485f4ff5f755a17b8bc9c3c33bbd312ceee37c94eebfe45c1", "typeString": "literal_string \"Error\"" }, "value": "Error" }, { "id": 2017, "name": "err", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 2009, "src": "12083:3:2", "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": 2015, "name": "log_named_string", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 811, "src": "12057:16:2", "typeDescriptions": { "typeIdentifier": "t_function_event_nonpayable$_t_string_memory_ptr_$_t_string_memory_ptr_$returns$__$", "typeString": "function (string memory,string memory)" } }, "id": 2018, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "12057:30:2", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, "id": 2019, "nodeType": "EmitStatement", "src": "12052:35:2" }, { "expression": { "arguments": [ { "id": 2021, "name": "a", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 2003, "src": "12117:1:2", "typeDescriptions": { "typeIdentifier": "t_int256", "typeString": "int256" } }, { "id": 2022, "name": "b", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 2005, "src": "12120:1:2", "typeDescriptions": { "typeIdentifier": "t_int256", "typeString": "int256" } }, { "id": 2023, "name": "decimals", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 2007, "src": "12123:8:2", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } } ], "expression": { "argumentTypes": [ { "typeIdentifier": "t_int256", "typeString": "int256" }, { "typeIdentifier": "t_int256", "typeString": "int256" }, { "typeIdentifier": "t_uint256", "typeString": "uint256" } ], "id": 2020, "name": "assertLtDecimal", "nodeType": "Identifier", "overloadedDeclarations": [ 2001, 2029, 2063, 2091 ], "referencedDeclaration": 2001, "src": "12101:15:2", "typeDescriptions": { "typeIdentifier": "t_function_internal_nonpayable$_t_int256_$_t_int256_$_t_uint256_$returns$__$", "typeString": "function (int256,int256,uint256)" } }, "id": 2024, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "12101:31:2", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, "id": 2025, "nodeType": "ExpressionStatement", "src": "12101:31:2" } ] } } ] }, "implemented": true, "kind": "function", "modifiers": [], "name": "assertLtDecimal", "nameLocation": "11943:15:2", "parameters": { "id": 2010, "nodeType": "ParameterList", "parameters": [ { "constant": false, "id": 2003, "mutability": "mutable", "name": "a", "nameLocation": "11963:1:2", "nodeType": "VariableDeclaration", "scope": 2029, "src": "11959:5:2", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { "typeIdentifier": "t_int256", "typeString": "int256" }, "typeName": { "id": 2002, "name": "int", "nodeType": "ElementaryTypeName", "src": "11959:3:2", "typeDescriptions": { "typeIdentifier": "t_int256", "typeString": "int256" } }, "visibility": "internal" }, { "constant": false, "id": 2005, "mutability": "mutable", "name": "b", "nameLocation": "11970:1:2", "nodeType": "VariableDeclaration", "scope": 2029, "src": "11966:5:2", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { "typeIdentifier": "t_int256", "typeString": "int256" }, "typeName": { "id": 2004, "name": "int", "nodeType": "ElementaryTypeName", "src": "11966:3:2", "typeDescriptions": { "typeIdentifier": "t_int256", "typeString": "int256" } }, "visibility": "internal" }, { "constant": false, "id": 2007, "mutability": "mutable", "name": "decimals", "nameLocation": "11978:8:2", "nodeType": "VariableDeclaration", "scope": 2029, "src": "11973:13:2", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" }, "typeName": { "id": 2006, "name": "uint", "nodeType": "ElementaryTypeName", "src": "11973:4:2", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, "visibility": "internal" }, { "constant": false, "id": 2009, "mutability": "mutable", "name": "err", "nameLocation": "12002:3:2", "nodeType": "VariableDeclaration", "scope": 2029, "src": "11988:17:2", "stateVariable": false, "storageLocation": "memory", "typeDescriptions": { "typeIdentifier": "t_string_memory_ptr", "typeString": "string" }, "typeName": { "id": 2008, "name": "string", "nodeType": "ElementaryTypeName", "src": "11988:6:2", "typeDescriptions": { "typeIdentifier": "t_string_storage_ptr", "typeString": "string" } }, "visibility": "internal" } ], "src": "11958:48:2" }, "returnParameters": { "id": 2011, "nodeType": "ParameterList", "parameters": [], "src": "12016:0:2" }, "scope": 2512, "stateMutability": "nonpayable", "virtual": false, "visibility": "internal" }, { "id": 2063, "nodeType": "FunctionDefinition", "src": "12154:325:2", "nodes": [], "body": { "id": 2062, "nodeType": "Block", "src": "12219:260:2", "nodes": [], "statements": [ { "condition": { "commonType": { "typeIdentifier": "t_uint256", "typeString": "uint256" }, "id": 2040, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { "id": 2038, "name": "a", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 2031, "src": "12233:1:2", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, "nodeType": "BinaryOperation", "operator": ">=", "rightExpression": { "id": 2039, "name": "b", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 2033, "src": "12238:1:2", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, "src": "12233:6:2", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, "id": 2061, "nodeType": "IfStatement", "src": "12229:244:2", "trueBody": { "id": 2060, "nodeType": "Block", "src": "12241:232:2", "statements": [ { "eventCall": { "arguments": [ { "hexValue": "4572726f723a2061203c2062206e6f7420736174697366696564205b646563696d616c2075696e745d", "id": 2042, "isConstant": false, "isLValue": false, "isPure": true, "kind": "string", "lValueRequested": false, "nodeType": "Literal", "src": "12264:43:2", "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": 2041, "name": "log", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 731, "src": "12260:3:2", "typeDescriptions": { "typeIdentifier": "t_function_event_nonpayable$_t_string_memory_ptr_$returns$__$", "typeString": "function (string memory)" } }, "id": 2043, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "12260:48:2", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, "id": 2044, "nodeType": "EmitStatement", "src": "12255:53:2" }, { "eventCall": { "arguments": [ { "hexValue": "202056616c75652061", "id": 2046, "isConstant": false, "isLValue": false, "isPure": true, "kind": "string", "lValueRequested": false, "nodeType": "Literal", "src": "12350:11:2", "typeDescriptions": { "typeIdentifier": "t_stringliteral_c592b529b874569f165479a5a4380dedf000796f11e04035f76bfa7310b31d26", "typeString": "literal_string \" Value a\"" }, "value": " Value a" }, { "id": 2047, "name": "a", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 2031, "src": "12363:1:2", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, { "id": 2048, "name": "decimals", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 2035, "src": "12366:8:2", "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": 2045, "name": "log_named_decimal_uint", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 787, "src": "12327:22:2", "typeDescriptions": { "typeIdentifier": "t_function_event_nonpayable$_t_string_memory_ptr_$_t_uint256_$_t_uint256_$returns$__$", "typeString": "function (string memory,uint256,uint256)" } }, "id": 2049, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "12327:48:2", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, "id": 2050, "nodeType": "EmitStatement", "src": "12322:53:2" }, { "eventCall": { "arguments": [ { "hexValue": "202056616c75652062", "id": 2052, "isConstant": false, "isLValue": false, "isPure": true, "kind": "string", "lValueRequested": false, "nodeType": "Literal", "src": "12417:11:2", "typeDescriptions": { "typeIdentifier": "t_stringliteral_e4b1d025132960c3fb1a582cf2366864dc416744d1b9770aa69fe3749623ebc3", "typeString": "literal_string \" Value b\"" }, "value": " Value b" }, { "id": 2053, "name": "b", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 2033, "src": "12430:1:2", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, { "id": 2054, "name": "decimals", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 2035, "src": "12433:8:2", "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": 2051, "name": "log_named_decimal_uint", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 787, "src": "12394:22:2", "typeDescriptions": { "typeIdentifier": "t_function_event_nonpayable$_t_string_memory_ptr_$_t_uint256_$_t_uint256_$returns$__$", "typeString": "function (string memory,uint256,uint256)" } }, "id": 2055, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "12394:48:2", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, "id": 2056, "nodeType": "EmitStatement", "src": "12389:53:2" }, { "expression": { "arguments": [], "expression": { "argumentTypes": [], "id": 2057, "name": "fail", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 942, "src": "12456:4:2", "typeDescriptions": { "typeIdentifier": "t_function_internal_nonpayable$__$returns$__$", "typeString": "function ()" } }, "id": 2058, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "12456:6:2", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, "id": 2059, "nodeType": "ExpressionStatement", "src": "12456:6:2" } ] } } ] }, "implemented": true, "kind": "function", "modifiers": [], "name": "assertLtDecimal", "nameLocation": "12163:15:2", "parameters": { "id": 2036, "nodeType": "ParameterList", "parameters": [ { "constant": false, "id": 2031, "mutability": "mutable", "name": "a", "nameLocation": "12184:1:2", "nodeType": "VariableDeclaration", "scope": 2063, "src": "12179:6:2", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" }, "typeName": { "id": 2030, "name": "uint", "nodeType": "ElementaryTypeName", "src": "12179:4:2", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, "visibility": "internal" }, { "constant": false, "id": 2033, "mutability": "mutable", "name": "b", "nameLocation": "12192:1:2", "nodeType": "VariableDeclaration", "scope": 2063, "src": "12187:6:2", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" }, "typeName": { "id": 2032, "name": "uint", "nodeType": "ElementaryTypeName", "src": "12187:4:2", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, "visibility": "internal" }, { "constant": false, "id": 2035, "mutability": "mutable", "name": "decimals", "nameLocation": "12200:8:2", "nodeType": "VariableDeclaration", "scope": 2063, "src": "12195:13:2", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" }, "typeName": { "id": 2034, "name": "uint", "nodeType": "ElementaryTypeName", "src": "12195:4:2", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, "visibility": "internal" } ], "src": "12178:31:2" }, "returnParameters": { "id": 2037, "nodeType": "ParameterList", "parameters": [], "src": "12219:0:2" }, "scope": 2512, "stateMutability": "nonpayable", "virtual": false, "visibility": "internal" }, { "id": 2091, "nodeType": "FunctionDefinition", "src": "12484:217:2", "nodes": [], "body": { "id": 2090, "nodeType": "Block", "src": "12568:133:2", "nodes": [], "statements": [ { "condition": { "commonType": { "typeIdentifier": "t_uint256", "typeString": "uint256" }, "id": 2076, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { "id": 2074, "name": "a", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 2065, "src": "12582:1:2", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, "nodeType": "BinaryOperation", "operator": ">=", "rightExpression": { "id": 2075, "name": "b", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 2067, "src": "12587:1:2", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, "src": "12582:6:2", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, "id": 2089, "nodeType": "IfStatement", "src": "12578:117:2", "trueBody": { "id": 2088, "nodeType": "Block", "src": "12590:105:2", "statements": [ { "eventCall": { "arguments": [ { "hexValue": "4572726f72", "id": 2078, "isConstant": false, "isLValue": false, "isPure": true, "kind": "string", "lValueRequested": false, "nodeType": "Literal", "src": "12626:7:2", "typeDescriptions": { "typeIdentifier": "t_stringliteral_e342daa49723ff3485f4ff5f755a17b8bc9c3c33bbd312ceee37c94eebfe45c1", "typeString": "literal_string \"Error\"" }, "value": "Error" }, { "id": 2079, "name": "err", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 2071, "src": "12635:3:2", "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": 2077, "name": "log_named_string", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 811, "src": "12609:16:2", "typeDescriptions": { "typeIdentifier": "t_function_event_nonpayable$_t_string_memory_ptr_$_t_string_memory_ptr_$returns$__$", "typeString": "function (string memory,string memory)" } }, "id": 2080, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "12609:30:2", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, "id": 2081, "nodeType": "EmitStatement", "src": "12604:35:2" }, { "expression": { "arguments": [ { "id": 2083, "name": "a", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 2065, "src": "12669:1:2", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, { "id": 2084, "name": "b", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 2067, "src": "12672:1:2", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, { "id": 2085, "name": "decimals", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 2069, "src": "12675:8:2", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } } ], "expression": { "argumentTypes": [ { "typeIdentifier": "t_uint256", "typeString": "uint256" }, { "typeIdentifier": "t_uint256", "typeString": "uint256" }, { "typeIdentifier": "t_uint256", "typeString": "uint256" } ], "id": 2082, "name": "assertLtDecimal", "nodeType": "Identifier", "overloadedDeclarations": [ 2001, 2029, 2063, 2091 ], "referencedDeclaration": 2063, "src": "12653:15:2", "typeDescriptions": { "typeIdentifier": "t_function_internal_nonpayable$_t_uint256_$_t_uint256_$_t_uint256_$returns$__$", "typeString": "function (uint256,uint256,uint256)" } }, "id": 2086, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "12653:31:2", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, "id": 2087, "nodeType": "ExpressionStatement", "src": "12653:31:2" } ] } } ] }, "implemented": true, "kind": "function", "modifiers": [], "name": "assertLtDecimal", "nameLocation": "12493:15:2", "parameters": { "id": 2072, "nodeType": "ParameterList", "parameters": [ { "constant": false, "id": 2065, "mutability": "mutable", "name": "a", "nameLocation": "12514:1:2", "nodeType": "VariableDeclaration", "scope": 2091, "src": "12509:6:2", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" }, "typeName": { "id": 2064, "name": "uint", "nodeType": "ElementaryTypeName", "src": "12509:4:2", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, "visibility": "internal" }, { "constant": false, "id": 2067, "mutability": "mutable", "name": "b", "nameLocation": "12522:1:2", "nodeType": "VariableDeclaration", "scope": 2091, "src": "12517:6:2", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" }, "typeName": { "id": 2066, "name": "uint", "nodeType": "ElementaryTypeName", "src": "12517:4:2", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, "visibility": "internal" }, { "constant": false, "id": 2069, "mutability": "mutable", "name": "decimals", "nameLocation": "12530:8:2", "nodeType": "VariableDeclaration", "scope": 2091, "src": "12525:13:2", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" }, "typeName": { "id": 2068, "name": "uint", "nodeType": "ElementaryTypeName", "src": "12525:4:2", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, "visibility": "internal" }, { "constant": false, "id": 2071, "mutability": "mutable", "name": "err", "nameLocation": "12554:3:2", "nodeType": "VariableDeclaration", "scope": 2091, "src": "12540:17:2", "stateVariable": false, "storageLocation": "memory", "typeDescriptions": { "typeIdentifier": "t_string_memory_ptr", "typeString": "string" }, "typeName": { "id": 2070, "name": "string", "nodeType": "ElementaryTypeName", "src": "12540:6:2", "typeDescriptions": { "typeIdentifier": "t_string_storage_ptr", "typeString": "string" } }, "visibility": "internal" } ], "src": "12508:50:2" }, "returnParameters": { "id": 2073, "nodeType": "ParameterList", "parameters": [], "src": "12568:0:2" }, "scope": 2512, "stateMutability": "nonpayable", "virtual": false, "visibility": "internal" }, { "id": 2121, "nodeType": "FunctionDefinition", "src": "12707:259:2", "nodes": [], "body": { "id": 2120, "nodeType": "Block", "src": "12750:216:2", "nodes": [], "statements": [ { "condition": { "commonType": { "typeIdentifier": "t_uint256", "typeString": "uint256" }, "id": 2100, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { "id": 2098, "name": "a", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 2093, "src": "12764:1:2", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, "nodeType": "BinaryOperation", "operator": ">", "rightExpression": { "id": 2099, "name": "b", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 2095, "src": "12768:1:2", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, "src": "12764:5:2", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, "id": 2119, "nodeType": "IfStatement", "src": "12760:200:2", "trueBody": { "id": 2118, "nodeType": "Block", "src": "12771:189:2", "statements": [ { "eventCall": { "arguments": [ { "hexValue": "4572726f723a2061203c3d2062206e6f7420736174697366696564205b75696e745d", "id": 2102, "isConstant": false, "isLValue": false, "isPure": true, "kind": "string", "lValueRequested": false, "nodeType": "Literal", "src": "12794:36:2", "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": 2101, "name": "log", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 731, "src": "12790:3:2", "typeDescriptions": { "typeIdentifier": "t_function_event_nonpayable$_t_string_memory_ptr_$returns$__$", "typeString": "function (string memory)" } }, "id": 2103, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "12790:41:2", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, "id": 2104, "nodeType": "EmitStatement", "src": "12785:46:2" }, { "eventCall": { "arguments": [ { "hexValue": "202056616c75652061", "id": 2106, "isConstant": false, "isLValue": false, "isPure": true, "kind": "string", "lValueRequested": false, "nodeType": "Literal", "src": "12865:11:2", "typeDescriptions": { "typeIdentifier": "t_stringliteral_c592b529b874569f165479a5a4380dedf000796f11e04035f76bfa7310b31d26", "typeString": "literal_string \" Value a\"" }, "value": " Value a" }, { "id": 2107, "name": "a", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 2093, "src": "12878:1:2", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } } ], "expression": { "argumentTypes": [ { "typeIdentifier": "t_stringliteral_c592b529b874569f165479a5a4380dedf000796f11e04035f76bfa7310b31d26", "typeString": "literal_string \" Value a\"" }, { "typeIdentifier": "t_uint256", "typeString": "uint256" } ], "id": 2105, "name": "log_named_uint", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 799, "src": "12850:14:2", "typeDescriptions": { "typeIdentifier": "t_function_event_nonpayable$_t_string_memory_ptr_$_t_uint256_$returns$__$", "typeString": "function (string memory,uint256)" } }, "id": 2108, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "12850:30:2", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, "id": 2109, "nodeType": "EmitStatement", "src": "12845:35:2" }, { "eventCall": { "arguments": [ { "hexValue": "202056616c75652062", "id": 2111, "isConstant": false, "isLValue": false, "isPure": true, "kind": "string", "lValueRequested": false, "nodeType": "Literal", "src": "12914:11:2", "typeDescriptions": { "typeIdentifier": "t_stringliteral_e4b1d025132960c3fb1a582cf2366864dc416744d1b9770aa69fe3749623ebc3", "typeString": "literal_string \" Value b\"" }, "value": " Value b" }, { "id": 2112, "name": "b", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 2095, "src": "12927:1:2", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } } ], "expression": { "argumentTypes": [ { "typeIdentifier": "t_stringliteral_e4b1d025132960c3fb1a582cf2366864dc416744d1b9770aa69fe3749623ebc3", "typeString": "literal_string \" Value b\"" }, { "typeIdentifier": "t_uint256", "typeString": "uint256" } ], "id": 2110, "name": "log_named_uint", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 799, "src": "12899:14:2", "typeDescriptions": { "typeIdentifier": "t_function_event_nonpayable$_t_string_memory_ptr_$_t_uint256_$returns$__$", "typeString": "function (string memory,uint256)" } }, "id": 2113, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "12899:30:2", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, "id": 2114, "nodeType": "EmitStatement", "src": "12894:35:2" }, { "expression": { "arguments": [], "expression": { "argumentTypes": [], "id": 2115, "name": "fail", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 942, "src": "12943:4:2", "typeDescriptions": { "typeIdentifier": "t_function_internal_nonpayable$__$returns$__$", "typeString": "function ()" } }, "id": 2116, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "12943:6:2", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, "id": 2117, "nodeType": "ExpressionStatement", "src": "12943:6:2" } ] } } ] }, "implemented": true, "kind": "function", "modifiers": [], "name": "assertLe", "nameLocation": "12716:8:2", "parameters": { "id": 2096, "nodeType": "ParameterList", "parameters": [ { "constant": false, "id": 2093, "mutability": "mutable", "name": "a", "nameLocation": "12730:1:2", "nodeType": "VariableDeclaration", "scope": 2121, "src": "12725:6:2", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" }, "typeName": { "id": 2092, "name": "uint", "nodeType": "ElementaryTypeName", "src": "12725:4:2", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, "visibility": "internal" }, { "constant": false, "id": 2095, "mutability": "mutable", "name": "b", "nameLocation": "12738:1:2", "nodeType": "VariableDeclaration", "scope": 2121, "src": "12733:6:2", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" }, "typeName": { "id": 2094, "name": "uint", "nodeType": "ElementaryTypeName", "src": "12733:4:2", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, "visibility": "internal" } ], "src": "12724:16:2" }, "returnParameters": { "id": 2097, "nodeType": "ParameterList", "parameters": [], "src": "12750:0:2" }, "scope": 2512, "stateMutability": "nonpayable", "virtual": false, "visibility": "internal" }, { "id": 2146, "nodeType": "FunctionDefinition", "src": "12971:177:2", "nodes": [], "body": { "id": 2145, "nodeType": "Block", "src": "13033:115:2", "nodes": [], "statements": [ { "condition": { "commonType": { "typeIdentifier": "t_uint256", "typeString": "uint256" }, "id": 2132, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { "id": 2130, "name": "a", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 2123, "src": "13047:1:2", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, "nodeType": "BinaryOperation", "operator": ">", "rightExpression": { "id": 2131, "name": "b", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 2125, "src": "13051:1:2", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, "src": "13047:5:2", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, "id": 2144, "nodeType": "IfStatement", "src": "13043:99:2", "trueBody": { "id": 2143, "nodeType": "Block", "src": "13054:88:2", "statements": [ { "eventCall": { "arguments": [ { "hexValue": "4572726f72", "id": 2134, "isConstant": false, "isLValue": false, "isPure": true, "kind": "string", "lValueRequested": false, "nodeType": "Literal", "src": "13090:7:2", "typeDescriptions": { "typeIdentifier": "t_stringliteral_e342daa49723ff3485f4ff5f755a17b8bc9c3c33bbd312ceee37c94eebfe45c1", "typeString": "literal_string \"Error\"" }, "value": "Error" }, { "id": 2135, "name": "err", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 2127, "src": "13099:3:2", "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": 2133, "name": "log_named_string", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 811, "src": "13073:16:2", "typeDescriptions": { "typeIdentifier": "t_function_event_nonpayable$_t_string_memory_ptr_$_t_string_memory_ptr_$returns$__$", "typeString": "function (string memory,string memory)" } }, "id": 2136, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "13073:30:2", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, "id": 2137, "nodeType": "EmitStatement", "src": "13068:35:2" }, { "expression": { "arguments": [ { "id": 2139, "name": "a", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 2123, "src": "13126:1:2", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, { "id": 2140, "name": "b", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 2125, "src": "13129:1:2", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } } ], "expression": { "argumentTypes": [ { "typeIdentifier": "t_uint256", "typeString": "uint256" }, { "typeIdentifier": "t_uint256", "typeString": "uint256" } ], "id": 2138, "name": "assertLe", "nodeType": "Identifier", "overloadedDeclarations": [ 2121, 2146, 2176, 2201 ], "referencedDeclaration": 2121, "src": "13117:8:2", "typeDescriptions": { "typeIdentifier": "t_function_internal_nonpayable$_t_uint256_$_t_uint256_$returns$__$", "typeString": "function (uint256,uint256)" } }, "id": 2141, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "13117:14:2", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, "id": 2142, "nodeType": "ExpressionStatement", "src": "13117:14:2" } ] } } ] }, "implemented": true, "kind": "function", "modifiers": [], "name": "assertLe", "nameLocation": "12980:8:2", "parameters": { "id": 2128, "nodeType": "ParameterList", "parameters": [ { "constant": false, "id": 2123, "mutability": "mutable", "name": "a", "nameLocation": "12994:1:2", "nodeType": "VariableDeclaration", "scope": 2146, "src": "12989:6:2", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" }, "typeName": { "id": 2122, "name": "uint", "nodeType": "ElementaryTypeName", "src": "12989:4:2", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, "visibility": "internal" }, { "constant": false, "id": 2125, "mutability": "mutable", "name": "b", "nameLocation": "13002:1:2", "nodeType": "VariableDeclaration", "scope": 2146, "src": "12997:6:2", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" }, "typeName": { "id": 2124, "name": "uint", "nodeType": "ElementaryTypeName", "src": "12997:4:2", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, "visibility": "internal" }, { "constant": false, "id": 2127, "mutability": "mutable", "name": "err", "nameLocation": "13019:3:2", "nodeType": "VariableDeclaration", "scope": 2146, "src": "13005:17:2", "stateVariable": false, "storageLocation": "memory", "typeDescriptions": { "typeIdentifier": "t_string_memory_ptr", "typeString": "string" }, "typeName": { "id": 2126, "name": "string", "nodeType": "ElementaryTypeName", "src": "13005:6:2", "typeDescriptions": { "typeIdentifier": "t_string_storage_ptr", "typeString": "string" } }, "visibility": "internal" } ], "src": "12988:35:2" }, "returnParameters": { "id": 2129, "nodeType": "ParameterList", "parameters": [], "src": "13033:0:2" }, "scope": 2512, "stateMutability": "nonpayable", "virtual": false, "visibility": "internal" }, { "id": 2176, "nodeType": "FunctionDefinition", "src": "13153:254:2", "nodes": [], "body": { "id": 2175, "nodeType": "Block", "src": "13194:213:2", "nodes": [], "statements": [ { "condition": { "commonType": { "typeIdentifier": "t_int256", "typeString": "int256" }, "id": 2155, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { "id": 2153, "name": "a", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 2148, "src": "13208:1:2", "typeDescriptions": { "typeIdentifier": "t_int256", "typeString": "int256" } }, "nodeType": "BinaryOperation", "operator": ">", "rightExpression": { "id": 2154, "name": "b", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 2150, "src": "13212:1:2", "typeDescriptions": { "typeIdentifier": "t_int256", "typeString": "int256" } }, "src": "13208:5:2", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, "id": 2174, "nodeType": "IfStatement", "src": "13204:197:2", "trueBody": { "id": 2173, "nodeType": "Block", "src": "13215:186:2", "statements": [ { "eventCall": { "arguments": [ { "hexValue": "4572726f723a2061203c3d2062206e6f7420736174697366696564205b696e745d", "id": 2157, "isConstant": false, "isLValue": false, "isPure": true, "kind": "string", "lValueRequested": false, "nodeType": "Literal", "src": "13238:35:2", "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": 2156, "name": "log", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 731, "src": "13234:3:2", "typeDescriptions": { "typeIdentifier": "t_function_event_nonpayable$_t_string_memory_ptr_$returns$__$", "typeString": "function (string memory)" } }, "id": 2158, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "13234:40:2", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, "id": 2159, "nodeType": "EmitStatement", "src": "13229:45:2" }, { "eventCall": { "arguments": [ { "hexValue": "202056616c75652061", "id": 2161, "isConstant": false, "isLValue": false, "isPure": true, "kind": "string", "lValueRequested": false, "nodeType": "Literal", "src": "13307:11:2", "typeDescriptions": { "typeIdentifier": "t_stringliteral_c592b529b874569f165479a5a4380dedf000796f11e04035f76bfa7310b31d26", "typeString": "literal_string \" Value a\"" }, "value": " Value a" }, { "id": 2162, "name": "a", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 2148, "src": "13320:1:2", "typeDescriptions": { "typeIdentifier": "t_int256", "typeString": "int256" } } ], "expression": { "argumentTypes": [ { "typeIdentifier": "t_stringliteral_c592b529b874569f165479a5a4380dedf000796f11e04035f76bfa7310b31d26", "typeString": "literal_string \" Value a\"" }, { "typeIdentifier": "t_int256", "typeString": "int256" } ], "id": 2160, "name": "log_named_int", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 793, "src": "13293:13:2", "typeDescriptions": { "typeIdentifier": "t_function_event_nonpayable$_t_string_memory_ptr_$_t_int256_$returns$__$", "typeString": "function (string memory,int256)" } }, "id": 2163, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "13293:29:2", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, "id": 2164, "nodeType": "EmitStatement", "src": "13288:34:2" }, { "eventCall": { "arguments": [ { "hexValue": "202056616c75652062", "id": 2166, "isConstant": false, "isLValue": false, "isPure": true, "kind": "string", "lValueRequested": false, "nodeType": "Literal", "src": "13355:11:2", "typeDescriptions": { "typeIdentifier": "t_stringliteral_e4b1d025132960c3fb1a582cf2366864dc416744d1b9770aa69fe3749623ebc3", "typeString": "literal_string \" Value b\"" }, "value": " Value b" }, { "id": 2167, "name": "b", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 2150, "src": "13368:1:2", "typeDescriptions": { "typeIdentifier": "t_int256", "typeString": "int256" } } ], "expression": { "argumentTypes": [ { "typeIdentifier": "t_stringliteral_e4b1d025132960c3fb1a582cf2366864dc416744d1b9770aa69fe3749623ebc3", "typeString": "literal_string \" Value b\"" }, { "typeIdentifier": "t_int256", "typeString": "int256" } ], "id": 2165, "name": "log_named_int", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 793, "src": "13341:13:2", "typeDescriptions": { "typeIdentifier": "t_function_event_nonpayable$_t_string_memory_ptr_$_t_int256_$returns$__$", "typeString": "function (string memory,int256)" } }, "id": 2168, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "13341:29:2", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, "id": 2169, "nodeType": "EmitStatement", "src": "13336:34:2" }, { "expression": { "arguments": [], "expression": { "argumentTypes": [], "id": 2170, "name": "fail", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 942, "src": "13384:4:2", "typeDescriptions": { "typeIdentifier": "t_function_internal_nonpayable$__$returns$__$", "typeString": "function ()" } }, "id": 2171, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "13384:6:2", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, "id": 2172, "nodeType": "ExpressionStatement", "src": "13384:6:2" } ] } } ] }, "implemented": true, "kind": "function", "modifiers": [], "name": "assertLe", "nameLocation": "13162:8:2", "parameters": { "id": 2151, "nodeType": "ParameterList", "parameters": [ { "constant": false, "id": 2148, "mutability": "mutable", "name": "a", "nameLocation": "13175:1:2", "nodeType": "VariableDeclaration", "scope": 2176, "src": "13171:5:2", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { "typeIdentifier": "t_int256", "typeString": "int256" }, "typeName": { "id": 2147, "name": "int", "nodeType": "ElementaryTypeName", "src": "13171:3:2", "typeDescriptions": { "typeIdentifier": "t_int256", "typeString": "int256" } }, "visibility": "internal" }, { "constant": false, "id": 2150, "mutability": "mutable", "name": "b", "nameLocation": "13182:1:2", "nodeType": "VariableDeclaration", "scope": 2176, "src": "13178:5:2", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { "typeIdentifier": "t_int256", "typeString": "int256" }, "typeName": { "id": 2149, "name": "int", "nodeType": "ElementaryTypeName", "src": "13178:3:2", "typeDescriptions": { "typeIdentifier": "t_int256", "typeString": "int256" } }, "visibility": "internal" } ], "src": "13170:14:2" }, "returnParameters": { "id": 2152, "nodeType": "ParameterList", "parameters": [], "src": "13194:0:2" }, "scope": 2512, "stateMutability": "nonpayable", "virtual": false, "visibility": "internal" }, { "id": 2201, "nodeType": "FunctionDefinition", "src": "13412:175:2", "nodes": [], "body": { "id": 2200, "nodeType": "Block", "src": "13472:115:2", "nodes": [], "statements": [ { "condition": { "commonType": { "typeIdentifier": "t_int256", "typeString": "int256" }, "id": 2187, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { "id": 2185, "name": "a", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 2178, "src": "13486:1:2", "typeDescriptions": { "typeIdentifier": "t_int256", "typeString": "int256" } }, "nodeType": "BinaryOperation", "operator": ">", "rightExpression": { "id": 2186, "name": "b", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 2180, "src": "13490:1:2", "typeDescriptions": { "typeIdentifier": "t_int256", "typeString": "int256" } }, "src": "13486:5:2", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, "id": 2199, "nodeType": "IfStatement", "src": "13482:99:2", "trueBody": { "id": 2198, "nodeType": "Block", "src": "13493:88:2", "statements": [ { "eventCall": { "arguments": [ { "hexValue": "4572726f72", "id": 2189, "isConstant": false, "isLValue": false, "isPure": true, "kind": "string", "lValueRequested": false, "nodeType": "Literal", "src": "13529:7:2", "typeDescriptions": { "typeIdentifier": "t_stringliteral_e342daa49723ff3485f4ff5f755a17b8bc9c3c33bbd312ceee37c94eebfe45c1", "typeString": "literal_string \"Error\"" }, "value": "Error" }, { "id": 2190, "name": "err", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 2182, "src": "13538:3:2", "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": 2188, "name": "log_named_string", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 811, "src": "13512:16:2", "typeDescriptions": { "typeIdentifier": "t_function_event_nonpayable$_t_string_memory_ptr_$_t_string_memory_ptr_$returns$__$", "typeString": "function (string memory,string memory)" } }, "id": 2191, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "13512:30:2", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, "id": 2192, "nodeType": "EmitStatement", "src": "13507:35:2" }, { "expression": { "arguments": [ { "id": 2194, "name": "a", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 2178, "src": "13565:1:2", "typeDescriptions": { "typeIdentifier": "t_int256", "typeString": "int256" } }, { "id": 2195, "name": "b", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 2180, "src": "13568:1:2", "typeDescriptions": { "typeIdentifier": "t_int256", "typeString": "int256" } } ], "expression": { "argumentTypes": [ { "typeIdentifier": "t_int256", "typeString": "int256" }, { "typeIdentifier": "t_int256", "typeString": "int256" } ], "id": 2193, "name": "assertLe", "nodeType": "Identifier", "overloadedDeclarations": [ 2121, 2146, 2176, 2201 ], "referencedDeclaration": 2176, "src": "13556:8:2", "typeDescriptions": { "typeIdentifier": "t_function_internal_nonpayable$_t_int256_$_t_int256_$returns$__$", "typeString": "function (int256,int256)" } }, "id": 2196, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "13556:14:2", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, "id": 2197, "nodeType": "ExpressionStatement", "src": "13556:14:2" } ] } } ] }, "implemented": true, "kind": "function", "modifiers": [], "name": "assertLe", "nameLocation": "13421:8:2", "parameters": { "id": 2183, "nodeType": "ParameterList", "parameters": [ { "constant": false, "id": 2178, "mutability": "mutable", "name": "a", "nameLocation": "13434:1:2", "nodeType": "VariableDeclaration", "scope": 2201, "src": "13430:5:2", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { "typeIdentifier": "t_int256", "typeString": "int256" }, "typeName": { "id": 2177, "name": "int", "nodeType": "ElementaryTypeName", "src": "13430:3:2", "typeDescriptions": { "typeIdentifier": "t_int256", "typeString": "int256" } }, "visibility": "internal" }, { "constant": false, "id": 2180, "mutability": "mutable", "name": "b", "nameLocation": "13441:1:2", "nodeType": "VariableDeclaration", "scope": 2201, "src": "13437:5:2", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { "typeIdentifier": "t_int256", "typeString": "int256" }, "typeName": { "id": 2179, "name": "int", "nodeType": "ElementaryTypeName", "src": "13437:3:2", "typeDescriptions": { "typeIdentifier": "t_int256", "typeString": "int256" } }, "visibility": "internal" }, { "constant": false, "id": 2182, "mutability": "mutable", "name": "err", "nameLocation": "13458:3:2", "nodeType": "VariableDeclaration", "scope": 2201, "src": "13444:17:2", "stateVariable": false, "storageLocation": "memory", "typeDescriptions": { "typeIdentifier": "t_string_memory_ptr", "typeString": "string" }, "typeName": { "id": 2181, "name": "string", "nodeType": "ElementaryTypeName", "src": "13444:6:2", "typeDescriptions": { "typeIdentifier": "t_string_storage_ptr", "typeString": "string" } }, "visibility": "internal" } ], "src": "13429:33:2" }, "returnParameters": { "id": 2184, "nodeType": "ParameterList", "parameters": [], "src": "13472:0:2" }, "scope": 2512, "stateMutability": "nonpayable", "virtual": false, "visibility": "internal" }, { "id": 2235, "nodeType": "FunctionDefinition", "src": "13592:320:2", "nodes": [], "body": { "id": 2234, "nodeType": "Block", "src": "13655:257:2", "nodes": [], "statements": [ { "condition": { "commonType": { "typeIdentifier": "t_int256", "typeString": "int256" }, "id": 2212, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { "id": 2210, "name": "a", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 2203, "src": "13669:1:2", "typeDescriptions": { "typeIdentifier": "t_int256", "typeString": "int256" } }, "nodeType": "BinaryOperation", "operator": ">", "rightExpression": { "id": 2211, "name": "b", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 2205, "src": "13673:1:2", "typeDescriptions": { "typeIdentifier": "t_int256", "typeString": "int256" } }, "src": "13669:5:2", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, "id": 2233, "nodeType": "IfStatement", "src": "13665:241:2", "trueBody": { "id": 2232, "nodeType": "Block", "src": "13676:230:2", "statements": [ { "eventCall": { "arguments": [ { "hexValue": "4572726f723a2061203c3d2062206e6f7420736174697366696564205b646563696d616c20696e745d", "id": 2214, "isConstant": false, "isLValue": false, "isPure": true, "kind": "string", "lValueRequested": false, "nodeType": "Literal", "src": "13699:43:2", "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": 2213, "name": "log", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 731, "src": "13695:3:2", "typeDescriptions": { "typeIdentifier": "t_function_event_nonpayable$_t_string_memory_ptr_$returns$__$", "typeString": "function (string memory)" } }, "id": 2215, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "13695:48:2", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, "id": 2216, "nodeType": "EmitStatement", "src": "13690:53:2" }, { "eventCall": { "arguments": [ { "hexValue": "202056616c75652061", "id": 2218, "isConstant": false, "isLValue": false, "isPure": true, "kind": "string", "lValueRequested": false, "nodeType": "Literal", "src": "13784:11:2", "typeDescriptions": { "typeIdentifier": "t_stringliteral_c592b529b874569f165479a5a4380dedf000796f11e04035f76bfa7310b31d26", "typeString": "literal_string \" Value a\"" }, "value": " Value a" }, { "id": 2219, "name": "a", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 2203, "src": "13797:1:2", "typeDescriptions": { "typeIdentifier": "t_int256", "typeString": "int256" } }, { "id": 2220, "name": "decimals", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 2207, "src": "13800:8:2", "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": 2217, "name": "log_named_decimal_int", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 779, "src": "13762:21:2", "typeDescriptions": { "typeIdentifier": "t_function_event_nonpayable$_t_string_memory_ptr_$_t_int256_$_t_uint256_$returns$__$", "typeString": "function (string memory,int256,uint256)" } }, "id": 2221, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "13762:47:2", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, "id": 2222, "nodeType": "EmitStatement", "src": "13757:52:2" }, { "eventCall": { "arguments": [ { "hexValue": "202056616c75652062", "id": 2224, "isConstant": false, "isLValue": false, "isPure": true, "kind": "string", "lValueRequested": false, "nodeType": "Literal", "src": "13850:11:2", "typeDescriptions": { "typeIdentifier": "t_stringliteral_e4b1d025132960c3fb1a582cf2366864dc416744d1b9770aa69fe3749623ebc3", "typeString": "literal_string \" Value b\"" }, "value": " Value b" }, { "id": 2225, "name": "b", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 2205, "src": "13863:1:2", "typeDescriptions": { "typeIdentifier": "t_int256", "typeString": "int256" } }, { "id": 2226, "name": "decimals", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 2207, "src": "13866:8:2", "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": 2223, "name": "log_named_decimal_int", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 779, "src": "13828:21:2", "typeDescriptions": { "typeIdentifier": "t_function_event_nonpayable$_t_string_memory_ptr_$_t_int256_$_t_uint256_$returns$__$", "typeString": "function (string memory,int256,uint256)" } }, "id": 2227, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "13828:47:2", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, "id": 2228, "nodeType": "EmitStatement", "src": "13823:52:2" }, { "expression": { "arguments": [], "expression": { "argumentTypes": [], "id": 2229, "name": "fail", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 942, "src": "13889:4:2", "typeDescriptions": { "typeIdentifier": "t_function_internal_nonpayable$__$returns$__$", "typeString": "function ()" } }, "id": 2230, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "13889:6:2", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, "id": 2231, "nodeType": "ExpressionStatement", "src": "13889:6:2" } ] } } ] }, "implemented": true, "kind": "function", "modifiers": [], "name": "assertLeDecimal", "nameLocation": "13601:15:2", "parameters": { "id": 2208, "nodeType": "ParameterList", "parameters": [ { "constant": false, "id": 2203, "mutability": "mutable", "name": "a", "nameLocation": "13621:1:2", "nodeType": "VariableDeclaration", "scope": 2235, "src": "13617:5:2", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { "typeIdentifier": "t_int256", "typeString": "int256" }, "typeName": { "id": 2202, "name": "int", "nodeType": "ElementaryTypeName", "src": "13617:3:2", "typeDescriptions": { "typeIdentifier": "t_int256", "typeString": "int256" } }, "visibility": "internal" }, { "constant": false, "id": 2205, "mutability": "mutable", "name": "b", "nameLocation": "13628:1:2", "nodeType": "VariableDeclaration", "scope": 2235, "src": "13624:5:2", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { "typeIdentifier": "t_int256", "typeString": "int256" }, "typeName": { "id": 2204, "name": "int", "nodeType": "ElementaryTypeName", "src": "13624:3:2", "typeDescriptions": { "typeIdentifier": "t_int256", "typeString": "int256" } }, "visibility": "internal" }, { "constant": false, "id": 2207, "mutability": "mutable", "name": "decimals", "nameLocation": "13636:8:2", "nodeType": "VariableDeclaration", "scope": 2235, "src": "13631:13:2", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" }, "typeName": { "id": 2206, "name": "uint", "nodeType": "ElementaryTypeName", "src": "13631:4:2", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, "visibility": "internal" } ], "src": "13616:29:2" }, "returnParameters": { "id": 2209, "nodeType": "ParameterList", "parameters": [], "src": "13655:0:2" }, "scope": 2512, "stateMutability": "nonpayable", "virtual": false, "visibility": "internal" }, { "id": 2263, "nodeType": "FunctionDefinition", "src": "13917:214:2", "nodes": [], "body": { "id": 2262, "nodeType": "Block", "src": "13999:132:2", "nodes": [], "statements": [ { "condition": { "commonType": { "typeIdentifier": "t_int256", "typeString": "int256" }, "id": 2248, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { "id": 2246, "name": "a", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 2237, "src": "14013:1:2", "typeDescriptions": { "typeIdentifier": "t_int256", "typeString": "int256" } }, "nodeType": "BinaryOperation", "operator": ">", "rightExpression": { "id": 2247, "name": "b", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 2239, "src": "14017:1:2", "typeDescriptions": { "typeIdentifier": "t_int256", "typeString": "int256" } }, "src": "14013:5:2", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, "id": 2261, "nodeType": "IfStatement", "src": "14009:116:2", "trueBody": { "id": 2260, "nodeType": "Block", "src": "14020:105:2", "statements": [ { "eventCall": { "arguments": [ { "hexValue": "4572726f72", "id": 2250, "isConstant": false, "isLValue": false, "isPure": true, "kind": "string", "lValueRequested": false, "nodeType": "Literal", "src": "14056:7:2", "typeDescriptions": { "typeIdentifier": "t_stringliteral_e342daa49723ff3485f4ff5f755a17b8bc9c3c33bbd312ceee37c94eebfe45c1", "typeString": "literal_string \"Error\"" }, "value": "Error" }, { "id": 2251, "name": "err", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 2243, "src": "14065:3:2", "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": 2249, "name": "log_named_string", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 811, "src": "14039:16:2", "typeDescriptions": { "typeIdentifier": "t_function_event_nonpayable$_t_string_memory_ptr_$_t_string_memory_ptr_$returns$__$", "typeString": "function (string memory,string memory)" } }, "id": 2252, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "14039:30:2", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, "id": 2253, "nodeType": "EmitStatement", "src": "14034:35:2" }, { "expression": { "arguments": [ { "id": 2255, "name": "a", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 2237, "src": "14099:1:2", "typeDescriptions": { "typeIdentifier": "t_int256", "typeString": "int256" } }, { "id": 2256, "name": "b", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 2239, "src": "14102:1:2", "typeDescriptions": { "typeIdentifier": "t_int256", "typeString": "int256" } }, { "id": 2257, "name": "decimals", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 2241, "src": "14105:8:2", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } } ], "expression": { "argumentTypes": [ { "typeIdentifier": "t_int256", "typeString": "int256" }, { "typeIdentifier": "t_int256", "typeString": "int256" }, { "typeIdentifier": "t_uint256", "typeString": "uint256" } ], "id": 2254, "name": "assertLeDecimal", "nodeType": "Identifier", "overloadedDeclarations": [ 2235, 2263, 2297, 2325 ], "referencedDeclaration": 2235, "src": "14083:15:2", "typeDescriptions": { "typeIdentifier": "t_function_internal_nonpayable$_t_int256_$_t_int256_$_t_uint256_$returns$__$", "typeString": "function (int256,int256,uint256)" } }, "id": 2258, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "14083:31:2", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, "id": 2259, "nodeType": "ExpressionStatement", "src": "14083:31:2" } ] } } ] }, "implemented": true, "kind": "function", "modifiers": [], "name": "assertLeDecimal", "nameLocation": "13926:15:2", "parameters": { "id": 2244, "nodeType": "ParameterList", "parameters": [ { "constant": false, "id": 2237, "mutability": "mutable", "name": "a", "nameLocation": "13946:1:2", "nodeType": "VariableDeclaration", "scope": 2263, "src": "13942:5:2", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { "typeIdentifier": "t_int256", "typeString": "int256" }, "typeName": { "id": 2236, "name": "int", "nodeType": "ElementaryTypeName", "src": "13942:3:2", "typeDescriptions": { "typeIdentifier": "t_int256", "typeString": "int256" } }, "visibility": "internal" }, { "constant": false, "id": 2239, "mutability": "mutable", "name": "b", "nameLocation": "13953:1:2", "nodeType": "VariableDeclaration", "scope": 2263, "src": "13949:5:2", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { "typeIdentifier": "t_int256", "typeString": "int256" }, "typeName": { "id": 2238, "name": "int", "nodeType": "ElementaryTypeName", "src": "13949:3:2", "typeDescriptions": { "typeIdentifier": "t_int256", "typeString": "int256" } }, "visibility": "internal" }, { "constant": false, "id": 2241, "mutability": "mutable", "name": "decimals", "nameLocation": "13961:8:2", "nodeType": "VariableDeclaration", "scope": 2263, "src": "13956:13:2", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" }, "typeName": { "id": 2240, "name": "uint", "nodeType": "ElementaryTypeName", "src": "13956:4:2", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, "visibility": "internal" }, { "constant": false, "id": 2243, "mutability": "mutable", "name": "err", "nameLocation": "13985:3:2", "nodeType": "VariableDeclaration", "scope": 2263, "src": "13971:17:2", "stateVariable": false, "storageLocation": "memory", "typeDescriptions": { "typeIdentifier": "t_string_memory_ptr", "typeString": "string" }, "typeName": { "id": 2242, "name": "string", "nodeType": "ElementaryTypeName", "src": "13971:6:2", "typeDescriptions": { "typeIdentifier": "t_string_storage_ptr", "typeString": "string" } }, "visibility": "internal" } ], "src": "13941:48:2" }, "returnParameters": { "id": 2245, "nodeType": "ParameterList", "parameters": [], "src": "13999:0:2" }, "scope": 2512, "stateMutability": "nonpayable", "virtual": false, "visibility": "internal" }, { "id": 2297, "nodeType": "FunctionDefinition", "src": "14136:325:2", "nodes": [], "body": { "id": 2296, "nodeType": "Block", "src": "14201:260:2", "nodes": [], "statements": [ { "condition": { "commonType": { "typeIdentifier": "t_uint256", "typeString": "uint256" }, "id": 2274, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { "id": 2272, "name": "a", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 2265, "src": "14215:1:2", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, "nodeType": "BinaryOperation", "operator": ">", "rightExpression": { "id": 2273, "name": "b", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 2267, "src": "14219:1:2", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, "src": "14215:5:2", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, "id": 2295, "nodeType": "IfStatement", "src": "14211:244:2", "trueBody": { "id": 2294, "nodeType": "Block", "src": "14222:233:2", "statements": [ { "eventCall": { "arguments": [ { "hexValue": "4572726f723a2061203c3d2062206e6f7420736174697366696564205b646563696d616c2075696e745d", "id": 2276, "isConstant": false, "isLValue": false, "isPure": true, "kind": "string", "lValueRequested": false, "nodeType": "Literal", "src": "14245:44:2", "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": 2275, "name": "log", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 731, "src": "14241:3:2", "typeDescriptions": { "typeIdentifier": "t_function_event_nonpayable$_t_string_memory_ptr_$returns$__$", "typeString": "function (string memory)" } }, "id": 2277, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "14241:49:2", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, "id": 2278, "nodeType": "EmitStatement", "src": "14236:54:2" }, { "eventCall": { "arguments": [ { "hexValue": "202056616c75652061", "id": 2280, "isConstant": false, "isLValue": false, "isPure": true, "kind": "string", "lValueRequested": false, "nodeType": "Literal", "src": "14332:11:2", "typeDescriptions": { "typeIdentifier": "t_stringliteral_c592b529b874569f165479a5a4380dedf000796f11e04035f76bfa7310b31d26", "typeString": "literal_string \" Value a\"" }, "value": " Value a" }, { "id": 2281, "name": "a", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 2265, "src": "14345:1:2", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, { "id": 2282, "name": "decimals", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 2269, "src": "14348:8:2", "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": 2279, "name": "log_named_decimal_uint", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 787, "src": "14309:22:2", "typeDescriptions": { "typeIdentifier": "t_function_event_nonpayable$_t_string_memory_ptr_$_t_uint256_$_t_uint256_$returns$__$", "typeString": "function (string memory,uint256,uint256)" } }, "id": 2283, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "14309:48:2", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, "id": 2284, "nodeType": "EmitStatement", "src": "14304:53:2" }, { "eventCall": { "arguments": [ { "hexValue": "202056616c75652062", "id": 2286, "isConstant": false, "isLValue": false, "isPure": true, "kind": "string", "lValueRequested": false, "nodeType": "Literal", "src": "14399:11:2", "typeDescriptions": { "typeIdentifier": "t_stringliteral_e4b1d025132960c3fb1a582cf2366864dc416744d1b9770aa69fe3749623ebc3", "typeString": "literal_string \" Value b\"" }, "value": " Value b" }, { "id": 2287, "name": "b", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 2267, "src": "14412:1:2", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, { "id": 2288, "name": "decimals", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 2269, "src": "14415:8:2", "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": 2285, "name": "log_named_decimal_uint", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 787, "src": "14376:22:2", "typeDescriptions": { "typeIdentifier": "t_function_event_nonpayable$_t_string_memory_ptr_$_t_uint256_$_t_uint256_$returns$__$", "typeString": "function (string memory,uint256,uint256)" } }, "id": 2289, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "14376:48:2", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, "id": 2290, "nodeType": "EmitStatement", "src": "14371:53:2" }, { "expression": { "arguments": [], "expression": { "argumentTypes": [], "id": 2291, "name": "fail", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 942, "src": "14438:4:2", "typeDescriptions": { "typeIdentifier": "t_function_internal_nonpayable$__$returns$__$", "typeString": "function ()" } }, "id": 2292, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "14438:6:2", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, "id": 2293, "nodeType": "ExpressionStatement", "src": "14438:6:2" } ] } } ] }, "implemented": true, "kind": "function", "modifiers": [], "name": "assertLeDecimal", "nameLocation": "14145:15:2", "parameters": { "id": 2270, "nodeType": "ParameterList", "parameters": [ { "constant": false, "id": 2265, "mutability": "mutable", "name": "a", "nameLocation": "14166:1:2", "nodeType": "VariableDeclaration", "scope": 2297, "src": "14161:6:2", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" }, "typeName": { "id": 2264, "name": "uint", "nodeType": "ElementaryTypeName", "src": "14161:4:2", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, "visibility": "internal" }, { "constant": false, "id": 2267, "mutability": "mutable", "name": "b", "nameLocation": "14174:1:2", "nodeType": "VariableDeclaration", "scope": 2297, "src": "14169:6:2", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" }, "typeName": { "id": 2266, "name": "uint", "nodeType": "ElementaryTypeName", "src": "14169:4:2", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, "visibility": "internal" }, { "constant": false, "id": 2269, "mutability": "mutable", "name": "decimals", "nameLocation": "14182:8:2", "nodeType": "VariableDeclaration", "scope": 2297, "src": "14177:13:2", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" }, "typeName": { "id": 2268, "name": "uint", "nodeType": "ElementaryTypeName", "src": "14177:4:2", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, "visibility": "internal" } ], "src": "14160:31:2" }, "returnParameters": { "id": 2271, "nodeType": "ParameterList", "parameters": [], "src": "14201:0:2" }, "scope": 2512, "stateMutability": "nonpayable", "virtual": false, "visibility": "internal" }, { "id": 2325, "nodeType": "FunctionDefinition", "src": "14466:216:2", "nodes": [], "body": { "id": 2324, "nodeType": "Block", "src": "14550:132:2", "nodes": [], "statements": [ { "condition": { "commonType": { "typeIdentifier": "t_uint256", "typeString": "uint256" }, "id": 2310, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { "id": 2308, "name": "a", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 2299, "src": "14564:1:2", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, "nodeType": "BinaryOperation", "operator": ">", "rightExpression": { "id": 2309, "name": "b", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 2301, "src": "14568:1:2", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, "src": "14564:5:2", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, "id": 2323, "nodeType": "IfStatement", "src": "14560:116:2", "trueBody": { "id": 2322, "nodeType": "Block", "src": "14571:105:2", "statements": [ { "eventCall": { "arguments": [ { "hexValue": "4572726f72", "id": 2312, "isConstant": false, "isLValue": false, "isPure": true, "kind": "string", "lValueRequested": false, "nodeType": "Literal", "src": "14607:7:2", "typeDescriptions": { "typeIdentifier": "t_stringliteral_e342daa49723ff3485f4ff5f755a17b8bc9c3c33bbd312ceee37c94eebfe45c1", "typeString": "literal_string \"Error\"" }, "value": "Error" }, { "id": 2313, "name": "err", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 2305, "src": "14616:3:2", "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": 2311, "name": "log_named_string", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 811, "src": "14590:16:2", "typeDescriptions": { "typeIdentifier": "t_function_event_nonpayable$_t_string_memory_ptr_$_t_string_memory_ptr_$returns$__$", "typeString": "function (string memory,string memory)" } }, "id": 2314, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "14590:30:2", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, "id": 2315, "nodeType": "EmitStatement", "src": "14585:35:2" }, { "expression": { "arguments": [ { "id": 2317, "name": "a", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 2299, "src": "14650:1:2", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, { "id": 2318, "name": "b", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 2301, "src": "14653:1:2", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, { "id": 2319, "name": "decimals", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 2303, "src": "14656:8:2", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } } ], "expression": { "argumentTypes": [ { "typeIdentifier": "t_uint256", "typeString": "uint256" }, { "typeIdentifier": "t_uint256", "typeString": "uint256" }, { "typeIdentifier": "t_uint256", "typeString": "uint256" } ], "id": 2316, "name": "assertGeDecimal", "nodeType": "Identifier", "overloadedDeclarations": [ 1767, 1795, 1829, 1857 ], "referencedDeclaration": 1829, "src": "14634:15:2", "typeDescriptions": { "typeIdentifier": "t_function_internal_nonpayable$_t_uint256_$_t_uint256_$_t_uint256_$returns$__$", "typeString": "function (uint256,uint256,uint256)" } }, "id": 2320, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "14634:31:2", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, "id": 2321, "nodeType": "ExpressionStatement", "src": "14634:31:2" } ] } } ] }, "implemented": true, "kind": "function", "modifiers": [], "name": "assertLeDecimal", "nameLocation": "14475:15:2", "parameters": { "id": 2306, "nodeType": "ParameterList", "parameters": [ { "constant": false, "id": 2299, "mutability": "mutable", "name": "a", "nameLocation": "14496:1:2", "nodeType": "VariableDeclaration", "scope": 2325, "src": "14491:6:2", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" }, "typeName": { "id": 2298, "name": "uint", "nodeType": "ElementaryTypeName", "src": "14491:4:2", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, "visibility": "internal" }, { "constant": false, "id": 2301, "mutability": "mutable", "name": "b", "nameLocation": "14504:1:2", "nodeType": "VariableDeclaration", "scope": 2325, "src": "14499:6:2", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" }, "typeName": { "id": 2300, "name": "uint", "nodeType": "ElementaryTypeName", "src": "14499:4:2", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, "visibility": "internal" }, { "constant": false, "id": 2303, "mutability": "mutable", "name": "decimals", "nameLocation": "14512:8:2", "nodeType": "VariableDeclaration", "scope": 2325, "src": "14507:13:2", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" }, "typeName": { "id": 2302, "name": "uint", "nodeType": "ElementaryTypeName", "src": "14507:4:2", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, "visibility": "internal" }, { "constant": false, "id": 2305, "mutability": "mutable", "name": "err", "nameLocation": "14536:3:2", "nodeType": "VariableDeclaration", "scope": 2325, "src": "14522:17:2", "stateVariable": false, "storageLocation": "memory", "typeDescriptions": { "typeIdentifier": "t_string_memory_ptr", "typeString": "string" }, "typeName": { "id": 2304, "name": "string", "nodeType": "ElementaryTypeName", "src": "14522:6:2", "typeDescriptions": { "typeIdentifier": "t_string_storage_ptr", "typeString": "string" } }, "visibility": "internal" } ], "src": "14490:50:2" }, "returnParameters": { "id": 2307, "nodeType": "ParameterList", "parameters": [], "src": "14550:0:2" }, "scope": 2512, "stateMutability": "nonpayable", "virtual": false, "visibility": "internal" }, { "id": 2365, "nodeType": "FunctionDefinition", "src": "14688:344:2", "nodes": [], "body": { "id": 2364, "nodeType": "Block", "src": "14749:283:2", "nodes": [], "statements": [ { "condition": { "commonType": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" }, "id": 2344, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { "arguments": [ { "arguments": [ { "id": 2335, "name": "a", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 2327, "src": "14790:1:2", "typeDescriptions": { "typeIdentifier": "t_string_memory_ptr", "typeString": "string memory" } } ], "expression": { "argumentTypes": [ { "typeIdentifier": "t_string_memory_ptr", "typeString": "string memory" } ], "expression": { "id": 2333, "name": "abi", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": -1, "src": "14773:3:2", "typeDescriptions": { "typeIdentifier": "t_magic_abi", "typeString": "abi" } }, "id": 2334, "isConstant": false, "isLValue": false, "isPure": true, "lValueRequested": false, "memberLocation": "14777:12:2", "memberName": "encodePacked", "nodeType": "MemberAccess", "src": "14773:16:2", "typeDescriptions": { "typeIdentifier": "t_function_abiencodepacked_pure$__$returns$_t_bytes_memory_ptr_$", "typeString": "function () pure returns (bytes memory)" } }, "id": 2336, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "14773:19:2", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_bytes_memory_ptr", "typeString": "bytes memory" } } ], "expression": { "argumentTypes": [ { "typeIdentifier": "t_bytes_memory_ptr", "typeString": "bytes memory" } ], "id": 2332, "name": "keccak256", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": -8, "src": "14763:9:2", "typeDescriptions": { "typeIdentifier": "t_function_keccak256_pure$_t_bytes_memory_ptr_$returns$_t_bytes32_$", "typeString": "function (bytes memory) pure returns (bytes32)" } }, "id": 2337, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "14763:30:2", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" } }, "nodeType": "BinaryOperation", "operator": "!=", "rightExpression": { "arguments": [ { "arguments": [ { "id": 2341, "name": "b", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 2329, "src": "14824:1:2", "typeDescriptions": { "typeIdentifier": "t_string_memory_ptr", "typeString": "string memory" } } ], "expression": { "argumentTypes": [ { "typeIdentifier": "t_string_memory_ptr", "typeString": "string memory" } ], "expression": { "id": 2339, "name": "abi", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": -1, "src": "14807:3:2", "typeDescriptions": { "typeIdentifier": "t_magic_abi", "typeString": "abi" } }, "id": 2340, "isConstant": false, "isLValue": false, "isPure": true, "lValueRequested": false, "memberLocation": "14811:12:2", "memberName": "encodePacked", "nodeType": "MemberAccess", "src": "14807:16:2", "typeDescriptions": { "typeIdentifier": "t_function_abiencodepacked_pure$__$returns$_t_bytes_memory_ptr_$", "typeString": "function () pure returns (bytes memory)" } }, "id": 2342, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "14807:19:2", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_bytes_memory_ptr", "typeString": "bytes memory" } } ], "expression": { "argumentTypes": [ { "typeIdentifier": "t_bytes_memory_ptr", "typeString": "bytes memory" } ], "id": 2338, "name": "keccak256", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": -8, "src": "14797:9:2", "typeDescriptions": { "typeIdentifier": "t_function_keccak256_pure$_t_bytes_memory_ptr_$returns$_t_bytes32_$", "typeString": "function (bytes memory) pure returns (bytes32)" } }, "id": 2343, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "14797:30:2", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" } }, "src": "14763:64:2", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, "id": 2363, "nodeType": "IfStatement", "src": "14759:267:2", "trueBody": { "id": 2362, "nodeType": "Block", "src": "14829:197:2", "statements": [ { "eventCall": { "arguments": [ { "hexValue": "4572726f723a2061203d3d2062206e6f7420736174697366696564205b737472696e675d", "id": 2346, "isConstant": false, "isLValue": false, "isPure": true, "kind": "string", "lValueRequested": false, "nodeType": "Literal", "src": "14852:38:2", "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": 2345, "name": "log", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 731, "src": "14848:3:2", "typeDescriptions": { "typeIdentifier": "t_function_event_nonpayable$_t_string_memory_ptr_$returns$__$", "typeString": "function (string memory)" } }, "id": 2347, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "14848:43:2", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, "id": 2348, "nodeType": "EmitStatement", "src": "14843:48:2" }, { "eventCall": { "arguments": [ { "hexValue": "20204578706563746564", "id": 2350, "isConstant": false, "isLValue": false, "isPure": true, "kind": "string", "lValueRequested": false, "nodeType": "Literal", "src": "14927:12:2", "typeDescriptions": { "typeIdentifier": "t_stringliteral_42fa07d7c51ce5de92a0fc65dbf7e7800814fd01c258dc50e84d5be59184bf0b", "typeString": "literal_string \" Expected\"" }, "value": " Expected" }, { "id": 2351, "name": "b", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 2329, "src": "14941:1:2", "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": 2349, "name": "log_named_string", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 811, "src": "14910:16:2", "typeDescriptions": { "typeIdentifier": "t_function_event_nonpayable$_t_string_memory_ptr_$_t_string_memory_ptr_$returns$__$", "typeString": "function (string memory,string memory)" } }, "id": 2352, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "14910:33:2", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, "id": 2353, "nodeType": "EmitStatement", "src": "14905:38:2" }, { "eventCall": { "arguments": [ { "hexValue": "2020202041637475616c", "id": 2355, "isConstant": false, "isLValue": false, "isPure": true, "kind": "string", "lValueRequested": false, "nodeType": "Literal", "src": "14979:12:2", "typeDescriptions": { "typeIdentifier": "t_stringliteral_d7896f3f645b3ba89da46bf231a5df16e525e587a84bc9b284dfb39958fb219b", "typeString": "literal_string \" Actual\"" }, "value": " Actual" }, { "id": 2356, "name": "a", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 2327, "src": "14993:1:2", "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": 2354, "name": "log_named_string", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 811, "src": "14962:16:2", "typeDescriptions": { "typeIdentifier": "t_function_event_nonpayable$_t_string_memory_ptr_$_t_string_memory_ptr_$returns$__$", "typeString": "function (string memory,string memory)" } }, "id": 2357, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "14962:33:2", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, "id": 2358, "nodeType": "EmitStatement", "src": "14957:38:2" }, { "expression": { "arguments": [], "expression": { "argumentTypes": [], "id": 2359, "name": "fail", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 942, "src": "15009:4:2", "typeDescriptions": { "typeIdentifier": "t_function_internal_nonpayable$__$returns$__$", "typeString": "function ()" } }, "id": 2360, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "15009:6:2", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, "id": 2361, "nodeType": "ExpressionStatement", "src": "15009:6:2" } ] } } ] }, "implemented": true, "kind": "function", "modifiers": [], "name": "assertEq", "nameLocation": "14697:8:2", "parameters": { "id": 2330, "nodeType": "ParameterList", "parameters": [ { "constant": false, "id": 2327, "mutability": "mutable", "name": "a", "nameLocation": "14720:1:2", "nodeType": "VariableDeclaration", "scope": 2365, "src": "14706:15:2", "stateVariable": false, "storageLocation": "memory", "typeDescriptions": { "typeIdentifier": "t_string_memory_ptr", "typeString": "string" }, "typeName": { "id": 2326, "name": "string", "nodeType": "ElementaryTypeName", "src": "14706:6:2", "typeDescriptions": { "typeIdentifier": "t_string_storage_ptr", "typeString": "string" } }, "visibility": "internal" }, { "constant": false, "id": 2329, "mutability": "mutable", "name": "b", "nameLocation": "14737:1:2", "nodeType": "VariableDeclaration", "scope": 2365, "src": "14723:15:2", "stateVariable": false, "storageLocation": "memory", "typeDescriptions": { "typeIdentifier": "t_string_memory_ptr", "typeString": "string" }, "typeName": { "id": 2328, "name": "string", "nodeType": "ElementaryTypeName", "src": "14723:6:2", "typeDescriptions": { "typeIdentifier": "t_string_storage_ptr", "typeString": "string" } }, "visibility": "internal" } ], "src": "14705:34:2" }, "returnParameters": { "id": 2331, "nodeType": "ParameterList", "parameters": [], "src": "14749:0:2" }, "scope": 2512, "stateMutability": "nonpayable", "virtual": false, "visibility": "internal" }, { "id": 2400, "nodeType": "FunctionDefinition", "src": "15037:254:2", "nodes": [], "body": { "id": 2399, "nodeType": "Block", "src": "15117:174:2", "nodes": [], "statements": [ { "condition": { "commonType": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" }, "id": 2386, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { "arguments": [ { "arguments": [ { "id": 2377, "name": "a", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 2367, "src": "15158:1:2", "typeDescriptions": { "typeIdentifier": "t_string_memory_ptr", "typeString": "string memory" } } ], "expression": { "argumentTypes": [ { "typeIdentifier": "t_string_memory_ptr", "typeString": "string memory" } ], "expression": { "id": 2375, "name": "abi", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": -1, "src": "15141:3:2", "typeDescriptions": { "typeIdentifier": "t_magic_abi", "typeString": "abi" } }, "id": 2376, "isConstant": false, "isLValue": false, "isPure": true, "lValueRequested": false, "memberLocation": "15145:12:2", "memberName": "encodePacked", "nodeType": "MemberAccess", "src": "15141:16:2", "typeDescriptions": { "typeIdentifier": "t_function_abiencodepacked_pure$__$returns$_t_bytes_memory_ptr_$", "typeString": "function () pure returns (bytes memory)" } }, "id": 2378, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "15141:19:2", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_bytes_memory_ptr", "typeString": "bytes memory" } } ], "expression": { "argumentTypes": [ { "typeIdentifier": "t_bytes_memory_ptr", "typeString": "bytes memory" } ], "id": 2374, "name": "keccak256", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": -8, "src": "15131:9:2", "typeDescriptions": { "typeIdentifier": "t_function_keccak256_pure$_t_bytes_memory_ptr_$returns$_t_bytes32_$", "typeString": "function (bytes memory) pure returns (bytes32)" } }, "id": 2379, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "15131:30:2", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" } }, "nodeType": "BinaryOperation", "operator": "!=", "rightExpression": { "arguments": [ { "arguments": [ { "id": 2383, "name": "b", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 2369, "src": "15192:1:2", "typeDescriptions": { "typeIdentifier": "t_string_memory_ptr", "typeString": "string memory" } } ], "expression": { "argumentTypes": [ { "typeIdentifier": "t_string_memory_ptr", "typeString": "string memory" } ], "expression": { "id": 2381, "name": "abi", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": -1, "src": "15175:3:2", "typeDescriptions": { "typeIdentifier": "t_magic_abi", "typeString": "abi" } }, "id": 2382, "isConstant": false, "isLValue": false, "isPure": true, "lValueRequested": false, "memberLocation": "15179:12:2", "memberName": "encodePacked", "nodeType": "MemberAccess", "src": "15175:16:2", "typeDescriptions": { "typeIdentifier": "t_function_abiencodepacked_pure$__$returns$_t_bytes_memory_ptr_$", "typeString": "function () pure returns (bytes memory)" } }, "id": 2384, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "15175:19:2", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_bytes_memory_ptr", "typeString": "bytes memory" } } ], "expression": { "argumentTypes": [ { "typeIdentifier": "t_bytes_memory_ptr", "typeString": "bytes memory" } ], "id": 2380, "name": "keccak256", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": -8, "src": "15165:9:2", "typeDescriptions": { "typeIdentifier": "t_function_keccak256_pure$_t_bytes_memory_ptr_$returns$_t_bytes32_$", "typeString": "function (bytes memory) pure returns (bytes32)" } }, "id": 2385, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "15165:30:2", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" } }, "src": "15131:64:2", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, "id": 2398, "nodeType": "IfStatement", "src": "15127:158:2", "trueBody": { "id": 2397, "nodeType": "Block", "src": "15197:88:2", "statements": [ { "eventCall": { "arguments": [ { "hexValue": "4572726f72", "id": 2388, "isConstant": false, "isLValue": false, "isPure": true, "kind": "string", "lValueRequested": false, "nodeType": "Literal", "src": "15233:7:2", "typeDescriptions": { "typeIdentifier": "t_stringliteral_e342daa49723ff3485f4ff5f755a17b8bc9c3c33bbd312ceee37c94eebfe45c1", "typeString": "literal_string \"Error\"" }, "value": "Error" }, { "id": 2389, "name": "err", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 2371, "src": "15242:3:2", "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": 2387, "name": "log_named_string", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 811, "src": "15216:16:2", "typeDescriptions": { "typeIdentifier": "t_function_event_nonpayable$_t_string_memory_ptr_$_t_string_memory_ptr_$returns$__$", "typeString": "function (string memory,string memory)" } }, "id": 2390, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "15216:30:2", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, "id": 2391, "nodeType": "EmitStatement", "src": "15211:35:2" }, { "expression": { "arguments": [ { "id": 2393, "name": "a", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 2367, "src": "15269:1:2", "typeDescriptions": { "typeIdentifier": "t_string_memory_ptr", "typeString": "string memory" } }, { "id": 2394, "name": "b", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 2369, "src": "15272:1:2", "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": 2392, "name": "assertEq", "nodeType": "Identifier", "overloadedDeclarations": [ 1046, 1071, 1101, 1126, 1185, 1210, 1240, 1265, 2365, 2400 ], "referencedDeclaration": 2365, "src": "15260:8:2", "typeDescriptions": { "typeIdentifier": "t_function_internal_nonpayable$_t_string_memory_ptr_$_t_string_memory_ptr_$returns$__$", "typeString": "function (string memory,string memory)" } }, "id": 2395, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "15260:14:2", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, "id": 2396, "nodeType": "ExpressionStatement", "src": "15260:14:2" } ] } } ] }, "implemented": true, "kind": "function", "modifiers": [], "name": "assertEq", "nameLocation": "15046:8:2", "parameters": { "id": 2372, "nodeType": "ParameterList", "parameters": [ { "constant": false, "id": 2367, "mutability": "mutable", "name": "a", "nameLocation": "15069:1:2", "nodeType": "VariableDeclaration", "scope": 2400, "src": "15055:15:2", "stateVariable": false, "storageLocation": "memory", "typeDescriptions": { "typeIdentifier": "t_string_memory_ptr", "typeString": "string" }, "typeName": { "id": 2366, "name": "string", "nodeType": "ElementaryTypeName", "src": "15055:6:2", "typeDescriptions": { "typeIdentifier": "t_string_storage_ptr", "typeString": "string" } }, "visibility": "internal" }, { "constant": false, "id": 2369, "mutability": "mutable", "name": "b", "nameLocation": "15086:1:2", "nodeType": "VariableDeclaration", "scope": 2400, "src": "15072:15:2", "stateVariable": false, "storageLocation": "memory", "typeDescriptions": { "typeIdentifier": "t_string_memory_ptr", "typeString": "string" }, "typeName": { "id": 2368, "name": "string", "nodeType": "ElementaryTypeName", "src": "15072:6:2", "typeDescriptions": { "typeIdentifier": "t_string_storage_ptr", "typeString": "string" } }, "visibility": "internal" }, { "constant": false, "id": 2371, "mutability": "mutable", "name": "err", "nameLocation": "15103:3:2", "nodeType": "VariableDeclaration", "scope": 2400, "src": "15089:17:2", "stateVariable": false, "storageLocation": "memory", "typeDescriptions": { "typeIdentifier": "t_string_memory_ptr", "typeString": "string" }, "typeName": { "id": 2370, "name": "string", "nodeType": "ElementaryTypeName", "src": "15089:6:2", "typeDescriptions": { "typeIdentifier": "t_string_storage_ptr", "typeString": "string" } }, "visibility": "internal" } ], "src": "15054:53:2" }, "returnParameters": { "id": 2373, "nodeType": "ParameterList", "parameters": [], "src": "15117:0:2" }, "scope": 2512, "stateMutability": "nonpayable", "virtual": false, "visibility": "internal" }, { "id": 2452, "nodeType": "FunctionDefinition", "src": "15297:345:2", "nodes": [], "body": { "id": 2451, "nodeType": "Block", "src": "15379:263:2", "nodes": [], "statements": [ { "expression": { "id": 2411, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftHandSide": { "id": 2409, "name": "ok", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 2407, "src": "15389:2:2", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, "nodeType": "Assignment", "operator": "=", "rightHandSide": { "hexValue": "74727565", "id": 2410, "isConstant": false, "isLValue": false, "isPure": true, "kind": "bool", "lValueRequested": false, "nodeType": "Literal", "src": "15394:4:2", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" }, "value": "true" }, "src": "15389:9:2", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, "id": 2412, "nodeType": "ExpressionStatement", "src": "15389:9:2" }, { "condition": { "commonType": { "typeIdentifier": "t_uint256", "typeString": "uint256" }, "id": 2417, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { "expression": { "id": 2413, "name": "a", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 2402, "src": "15412:1:2", "typeDescriptions": { "typeIdentifier": "t_bytes_memory_ptr", "typeString": "bytes memory" } }, "id": 2414, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "memberLocation": "15414:6:2", "memberName": "length", "nodeType": "MemberAccess", "src": "15412:8:2", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, "nodeType": "BinaryOperation", "operator": "==", "rightExpression": { "expression": { "id": 2415, "name": "b", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 2404, "src": "15424:1:2", "typeDescriptions": { "typeIdentifier": "t_bytes_memory_ptr", "typeString": "bytes memory" } }, "id": 2416, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "memberLocation": "15426:6:2", "memberName": "length", "nodeType": "MemberAccess", "src": "15424:8:2", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, "src": "15412:20:2", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, "falseBody": { "id": 2449, "nodeType": "Block", "src": "15601:35:2", "statements": [ { "expression": { "id": 2447, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftHandSide": { "id": 2445, "name": "ok", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 2407, "src": "15615:2:2", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, "nodeType": "Assignment", "operator": "=", "rightHandSide": { "hexValue": "66616c7365", "id": 2446, "isConstant": false, "isLValue": false, "isPure": true, "kind": "bool", "lValueRequested": false, "nodeType": "Literal", "src": "15620:5:2", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" }, "value": "false" }, "src": "15615:10:2", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, "id": 2448, "nodeType": "ExpressionStatement", "src": "15615:10:2" } ] }, "id": 2450, "nodeType": "IfStatement", "src": "15408:228:2", "trueBody": { "id": 2444, "nodeType": "Block", "src": "15434:161:2", "statements": [ { "body": { "id": 2442, "nodeType": "Block", "src": "15484:101:2", "statements": [ { "condition": { "commonType": { "typeIdentifier": "t_bytes1", "typeString": "bytes1" }, "id": 2435, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { "baseExpression": { "id": 2429, "name": "a", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 2402, "src": "15506:1:2", "typeDescriptions": { "typeIdentifier": "t_bytes_memory_ptr", "typeString": "bytes memory" } }, "id": 2431, "indexExpression": { "id": 2430, "name": "i", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 2419, "src": "15508:1:2", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": false, "nodeType": "IndexAccess", "src": "15506:4:2", "typeDescriptions": { "typeIdentifier": "t_bytes1", "typeString": "bytes1" } }, "nodeType": "BinaryOperation", "operator": "!=", "rightExpression": { "baseExpression": { "id": 2432, "name": "b", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 2404, "src": "15514:1:2", "typeDescriptions": { "typeIdentifier": "t_bytes_memory_ptr", "typeString": "bytes memory" } }, "id": 2434, "indexExpression": { "id": 2433, "name": "i", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 2419, "src": "15516:1:2", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": false, "nodeType": "IndexAccess", "src": "15514:4:2", "typeDescriptions": { "typeIdentifier": "t_bytes1", "typeString": "bytes1" } }, "src": "15506:12:2", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, "id": 2441, "nodeType": "IfStatement", "src": "15502:69:2", "trueBody": { "id": 2440, "nodeType": "Block", "src": "15520:51:2", "statements": [ { "expression": { "id": 2438, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftHandSide": { "id": 2436, "name": "ok", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 2407, "src": "15542:2:2", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, "nodeType": "Assignment", "operator": "=", "rightHandSide": { "hexValue": "66616c7365", "id": 2437, "isConstant": false, "isLValue": false, "isPure": true, "kind": "bool", "lValueRequested": false, "nodeType": "Literal", "src": "15547:5:2", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" }, "value": "false" }, "src": "15542:10:2", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, "id": 2439, "nodeType": "ExpressionStatement", "src": "15542:10:2" } ] } } ] }, "condition": { "commonType": { "typeIdentifier": "t_uint256", "typeString": "uint256" }, "id": 2425, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { "id": 2422, "name": "i", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 2419, "src": "15465:1:2", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, "nodeType": "BinaryOperation", "operator": "<", "rightExpression": { "expression": { "id": 2423, "name": "a", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 2402, "src": "15469:1:2", "typeDescriptions": { "typeIdentifier": "t_bytes_memory_ptr", "typeString": "bytes memory" } }, "id": 2424, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "memberLocation": "15471:6:2", "memberName": "length", "nodeType": "MemberAccess", "src": "15469:8:2", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, "src": "15465:12:2", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, "id": 2443, "initializationExpression": { "assignments": [ 2419 ], "declarations": [ { "constant": false, "id": 2419, "mutability": "mutable", "name": "i", "nameLocation": "15458:1:2", "nodeType": "VariableDeclaration", "scope": 2443, "src": "15453:6:2", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" }, "typeName": { "id": 2418, "name": "uint", "nodeType": "ElementaryTypeName", "src": "15453:4:2", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, "visibility": "internal" } ], "id": 2421, "initialValue": { "hexValue": "30", "id": 2420, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", "src": "15462:1:2", "typeDescriptions": { "typeIdentifier": "t_rational_0_by_1", "typeString": "int_const 0" }, "value": "0" }, "nodeType": "VariableDeclarationStatement", "src": "15453:10:2" }, "loopExpression": { "expression": { "id": 2427, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "nodeType": "UnaryOperation", "operator": "++", "prefix": false, "src": "15479:3:2", "subExpression": { "id": 2426, "name": "i", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 2419, "src": "15479:1:2", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, "id": 2428, "nodeType": "ExpressionStatement", "src": "15479:3:2" }, "nodeType": "ForStatement", "src": "15448:137:2" } ] } } ] }, "implemented": true, "kind": "function", "modifiers": [], "name": "checkEq0", "nameLocation": "15306:8:2", "parameters": { "id": 2405, "nodeType": "ParameterList", "parameters": [ { "constant": false, "id": 2402, "mutability": "mutable", "name": "a", "nameLocation": "15328:1:2", "nodeType": "VariableDeclaration", "scope": 2452, "src": "15315:14:2", "stateVariable": false, "storageLocation": "memory", "typeDescriptions": { "typeIdentifier": "t_bytes_memory_ptr", "typeString": "bytes" }, "typeName": { "id": 2401, "name": "bytes", "nodeType": "ElementaryTypeName", "src": "15315:5:2", "typeDescriptions": { "typeIdentifier": "t_bytes_storage_ptr", "typeString": "bytes" } }, "visibility": "internal" }, { "constant": false, "id": 2404, "mutability": "mutable", "name": "b", "nameLocation": "15344:1:2", "nodeType": "VariableDeclaration", "scope": 2452, "src": "15331:14:2", "stateVariable": false, "storageLocation": "memory", "typeDescriptions": { "typeIdentifier": "t_bytes_memory_ptr", "typeString": "bytes" }, "typeName": { "id": 2403, "name": "bytes", "nodeType": "ElementaryTypeName", "src": "15331:5:2", "typeDescriptions": { "typeIdentifier": "t_bytes_storage_ptr", "typeString": "bytes" } }, "visibility": "internal" } ], "src": "15314:32:2" }, "returnParameters": { "id": 2408, "nodeType": "ParameterList", "parameters": [ { "constant": false, "id": 2407, "mutability": "mutable", "name": "ok", "nameLocation": "15375:2:2", "nodeType": "VariableDeclaration", "scope": 2452, "src": "15370:7:2", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" }, "typeName": { "id": 2406, "name": "bool", "nodeType": "ElementaryTypeName", "src": "15370:4:2", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, "visibility": "internal" } ], "src": "15369:9:2" }, "scope": 2512, "stateMutability": "pure", "virtual": false, "visibility": "internal" }, { "id": 2484, "nodeType": "FunctionDefinition", "src": "15647:291:2", "nodes": [], "body": { "id": 2483, "nodeType": "Block", "src": "15707:231:2", "nodes": [], "statements": [ { "condition": { "id": 2463, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "nodeType": "UnaryOperation", "operator": "!", "prefix": true, "src": "15721:15:2", "subExpression": { "arguments": [ { "id": 2460, "name": "a", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 2454, "src": "15731:1:2", "typeDescriptions": { "typeIdentifier": "t_bytes_memory_ptr", "typeString": "bytes memory" } }, { "id": 2461, "name": "b", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 2456, "src": "15734:1:2", "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": 2459, "name": "checkEq0", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 2452, "src": "15722:8:2", "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": 2462, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "15722:14:2", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, "id": 2482, "nodeType": "IfStatement", "src": "15717:215:2", "trueBody": { "id": 2481, "nodeType": "Block", "src": "15738:194:2", "statements": [ { "eventCall": { "arguments": [ { "hexValue": "4572726f723a2061203d3d2062206e6f7420736174697366696564205b62797465735d", "id": 2465, "isConstant": false, "isLValue": false, "isPure": true, "kind": "string", "lValueRequested": false, "nodeType": "Literal", "src": "15761:37:2", "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": 2464, "name": "log", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 731, "src": "15757:3:2", "typeDescriptions": { "typeIdentifier": "t_function_event_nonpayable$_t_string_memory_ptr_$returns$__$", "typeString": "function (string memory)" } }, "id": 2466, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "15757:42:2", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, "id": 2467, "nodeType": "EmitStatement", "src": "15752:47:2" }, { "eventCall": { "arguments": [ { "hexValue": "20204578706563746564", "id": 2469, "isConstant": false, "isLValue": false, "isPure": true, "kind": "string", "lValueRequested": false, "nodeType": "Literal", "src": "15834:12:2", "typeDescriptions": { "typeIdentifier": "t_stringliteral_42fa07d7c51ce5de92a0fc65dbf7e7800814fd01c258dc50e84d5be59184bf0b", "typeString": "literal_string \" Expected\"" }, "value": " Expected" }, { "id": 2470, "name": "b", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 2456, "src": "15848:1:2", "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": 2468, "name": "log_named_bytes", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 805, "src": "15818:15:2", "typeDescriptions": { "typeIdentifier": "t_function_event_nonpayable$_t_string_memory_ptr_$_t_bytes_memory_ptr_$returns$__$", "typeString": "function (string memory,bytes memory)" } }, "id": 2471, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "15818:32:2", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, "id": 2472, "nodeType": "EmitStatement", "src": "15813:37:2" }, { "eventCall": { "arguments": [ { "hexValue": "2020202041637475616c", "id": 2474, "isConstant": false, "isLValue": false, "isPure": true, "kind": "string", "lValueRequested": false, "nodeType": "Literal", "src": "15885:12:2", "typeDescriptions": { "typeIdentifier": "t_stringliteral_d7896f3f645b3ba89da46bf231a5df16e525e587a84bc9b284dfb39958fb219b", "typeString": "literal_string \" Actual\"" }, "value": " Actual" }, { "id": 2475, "name": "a", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 2454, "src": "15899:1:2", "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": 2473, "name": "log_named_bytes", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 805, "src": "15869:15:2", "typeDescriptions": { "typeIdentifier": "t_function_event_nonpayable$_t_string_memory_ptr_$_t_bytes_memory_ptr_$returns$__$", "typeString": "function (string memory,bytes memory)" } }, "id": 2476, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "15869:32:2", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, "id": 2477, "nodeType": "EmitStatement", "src": "15864:37:2" }, { "expression": { "arguments": [], "expression": { "argumentTypes": [], "id": 2478, "name": "fail", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 942, "src": "15915:4:2", "typeDescriptions": { "typeIdentifier": "t_function_internal_nonpayable$__$returns$__$", "typeString": "function ()" } }, "id": 2479, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "15915:6:2", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, "id": 2480, "nodeType": "ExpressionStatement", "src": "15915:6:2" } ] } } ] }, "implemented": true, "kind": "function", "modifiers": [], "name": "assertEq0", "nameLocation": "15656:9:2", "parameters": { "id": 2457, "nodeType": "ParameterList", "parameters": [ { "constant": false, "id": 2454, "mutability": "mutable", "name": "a", "nameLocation": "15679:1:2", "nodeType": "VariableDeclaration", "scope": 2484, "src": "15666:14:2", "stateVariable": false, "storageLocation": "memory", "typeDescriptions": { "typeIdentifier": "t_bytes_memory_ptr", "typeString": "bytes" }, "typeName": { "id": 2453, "name": "bytes", "nodeType": "ElementaryTypeName", "src": "15666:5:2", "typeDescriptions": { "typeIdentifier": "t_bytes_storage_ptr", "typeString": "bytes" } }, "visibility": "internal" }, { "constant": false, "id": 2456, "mutability": "mutable", "name": "b", "nameLocation": "15695:1:2", "nodeType": "VariableDeclaration", "scope": 2484, "src": "15682:14:2", "stateVariable": false, "storageLocation": "memory", "typeDescriptions": { "typeIdentifier": "t_bytes_memory_ptr", "typeString": "bytes" }, "typeName": { "id": 2455, "name": "bytes", "nodeType": "ElementaryTypeName", "src": "15682:5:2", "typeDescriptions": { "typeIdentifier": "t_bytes_storage_ptr", "typeString": "bytes" } }, "visibility": "internal" } ], "src": "15665:32:2" }, "returnParameters": { "id": 2458, "nodeType": "ParameterList", "parameters": [], "src": "15707:0:2" }, "scope": 2512, "stateMutability": "nonpayable", "virtual": false, "visibility": "internal" }, { "id": 2511, "nodeType": "FunctionDefinition", "src": "15943:205:2", "nodes": [], "body": { "id": 2510, "nodeType": "Block", "src": "16022:126:2", "nodes": [], "statements": [ { "condition": { "id": 2497, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "nodeType": "UnaryOperation", "operator": "!", "prefix": true, "src": "16036:15:2", "subExpression": { "arguments": [ { "id": 2494, "name": "a", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 2486, "src": "16046:1:2", "typeDescriptions": { "typeIdentifier": "t_bytes_memory_ptr", "typeString": "bytes memory" } }, { "id": 2495, "name": "b", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 2488, "src": "16049:1:2", "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": 2493, "name": "checkEq0", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 2452, "src": "16037:8:2", "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": 2496, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "16037:14:2", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, "id": 2509, "nodeType": "IfStatement", "src": "16032:110:2", "trueBody": { "id": 2508, "nodeType": "Block", "src": "16053:89:2", "statements": [ { "eventCall": { "arguments": [ { "hexValue": "4572726f72", "id": 2499, "isConstant": false, "isLValue": false, "isPure": true, "kind": "string", "lValueRequested": false, "nodeType": "Literal", "src": "16089:7:2", "typeDescriptions": { "typeIdentifier": "t_stringliteral_e342daa49723ff3485f4ff5f755a17b8bc9c3c33bbd312ceee37c94eebfe45c1", "typeString": "literal_string \"Error\"" }, "value": "Error" }, { "id": 2500, "name": "err", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 2490, "src": "16098:3:2", "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": 2498, "name": "log_named_string", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 811, "src": "16072:16:2", "typeDescriptions": { "typeIdentifier": "t_function_event_nonpayable$_t_string_memory_ptr_$_t_string_memory_ptr_$returns$__$", "typeString": "function (string memory,string memory)" } }, "id": 2501, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "16072:30:2", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, "id": 2502, "nodeType": "EmitStatement", "src": "16067:35:2" }, { "expression": { "arguments": [ { "id": 2504, "name": "a", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 2486, "src": "16126:1:2", "typeDescriptions": { "typeIdentifier": "t_bytes_memory_ptr", "typeString": "bytes memory" } }, { "id": 2505, "name": "b", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 2488, "src": "16129:1:2", "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": 2503, "name": "assertEq0", "nodeType": "Identifier", "overloadedDeclarations": [ 2484, 2511 ], "referencedDeclaration": 2484, "src": "16116:9:2", "typeDescriptions": { "typeIdentifier": "t_function_internal_nonpayable$_t_bytes_memory_ptr_$_t_bytes_memory_ptr_$returns$__$", "typeString": "function (bytes memory,bytes memory)" } }, "id": 2506, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "16116:15:2", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, "id": 2507, "nodeType": "ExpressionStatement", "src": "16116:15:2" } ] } } ] }, "implemented": true, "kind": "function", "modifiers": [], "name": "assertEq0", "nameLocation": "15952:9:2", "parameters": { "id": 2491, "nodeType": "ParameterList", "parameters": [ { "constant": false, "id": 2486, "mutability": "mutable", "name": "a", "nameLocation": "15975:1:2", "nodeType": "VariableDeclaration", "scope": 2511, "src": "15962:14:2", "stateVariable": false, "storageLocation": "memory", "typeDescriptions": { "typeIdentifier": "t_bytes_memory_ptr", "typeString": "bytes" }, "typeName": { "id": 2485, "name": "bytes", "nodeType": "ElementaryTypeName", "src": "15962:5:2", "typeDescriptions": { "typeIdentifier": "t_bytes_storage_ptr", "typeString": "bytes" } }, "visibility": "internal" }, { "constant": false, "id": 2488, "mutability": "mutable", "name": "b", "nameLocation": "15991:1:2", "nodeType": "VariableDeclaration", "scope": 2511, "src": "15978:14:2", "stateVariable": false, "storageLocation": "memory", "typeDescriptions": { "typeIdentifier": "t_bytes_memory_ptr", "typeString": "bytes" }, "typeName": { "id": 2487, "name": "bytes", "nodeType": "ElementaryTypeName", "src": "15978:5:2", "typeDescriptions": { "typeIdentifier": "t_bytes_storage_ptr", "typeString": "bytes" } }, "visibility": "internal" }, { "constant": false, "id": 2490, "mutability": "mutable", "name": "err", "nameLocation": "16008:3:2", "nodeType": "VariableDeclaration", "scope": 2511, "src": "15994:17:2", "stateVariable": false, "storageLocation": "memory", "typeDescriptions": { "typeIdentifier": "t_string_memory_ptr", "typeString": "string" }, "typeName": { "id": 2489, "name": "string", "nodeType": "ElementaryTypeName", "src": "15994:6:2", "typeDescriptions": { "typeIdentifier": "t_string_storage_ptr", "typeString": "string" } }, "visibility": "internal" } ], "src": "15961:51:2" }, "returnParameters": { "id": 2492, "nodeType": "ParameterList", "parameters": [], "src": "16022:0:2" }, "scope": 2512, "stateMutability": "nonpayable", "virtual": false, "visibility": "internal" } ], "abstract": false, "baseContracts": [], "canonicalName": "DSTest", "contractDependencies": [], "contractKind": "contract", "fullyImplemented": true, "linearizedBaseContracts": [ 2512 ], "name": "DSTest", "nameLocation": "724:6:2", "scope": 2513, "usedErrors": [] } ], "license": "GPL-3.0-or-later" }, "id": 2 }