{"abi":[{"type":"function","name":"IS_TEST","inputs":[],"outputs":[{"name":"","type":"bool","internalType":"bool"}],"stateMutability":"view"},{"type":"function","name":"failed","inputs":[],"outputs":[{"name":"","type":"bool","internalType":"bool"}],"stateMutability":"nonpayable"},{"type":"event","name":"log","inputs":[{"name":"","type":"string","indexed":false,"internalType":"string"}],"anonymous":false},{"type":"event","name":"log_address","inputs":[{"name":"","type":"address","indexed":false,"internalType":"address"}],"anonymous":false},{"type":"event","name":"log_bytes","inputs":[{"name":"","type":"bytes","indexed":false,"internalType":"bytes"}],"anonymous":false},{"type":"event","name":"log_bytes32","inputs":[{"name":"","type":"bytes32","indexed":false,"internalType":"bytes32"}],"anonymous":false},{"type":"event","name":"log_int","inputs":[{"name":"","type":"int256","indexed":false,"internalType":"int256"}],"anonymous":false},{"type":"event","name":"log_named_address","inputs":[{"name":"key","type":"string","indexed":false,"internalType":"string"},{"name":"val","type":"address","indexed":false,"internalType":"address"}],"anonymous":false},{"type":"event","name":"log_named_bytes","inputs":[{"name":"key","type":"string","indexed":false,"internalType":"string"},{"name":"val","type":"bytes","indexed":false,"internalType":"bytes"}],"anonymous":false},{"type":"event","name":"log_named_bytes32","inputs":[{"name":"key","type":"string","indexed":false,"internalType":"string"},{"name":"val","type":"bytes32","indexed":false,"internalType":"bytes32"}],"anonymous":false},{"type":"event","name":"log_named_decimal_int","inputs":[{"name":"key","type":"string","indexed":false,"internalType":"string"},{"name":"val","type":"int256","indexed":false,"internalType":"int256"},{"name":"decimals","type":"uint256","indexed":false,"internalType":"uint256"}],"anonymous":false},{"type":"event","name":"log_named_decimal_uint","inputs":[{"name":"key","type":"string","indexed":false,"internalType":"string"},{"name":"val","type":"uint256","indexed":false,"internalType":"uint256"},{"name":"decimals","type":"uint256","indexed":false,"internalType":"uint256"}],"anonymous":false},{"type":"event","name":"log_named_int","inputs":[{"name":"key","type":"string","indexed":false,"internalType":"string"},{"name":"val","type":"int256","indexed":false,"internalType":"int256"}],"anonymous":false},{"type":"event","name":"log_named_string","inputs":[{"name":"key","type":"string","indexed":false,"internalType":"string"},{"name":"val","type":"string","indexed":false,"internalType":"string"}],"anonymous":false},{"type":"event","name":"log_named_uint","inputs":[{"name":"key","type":"string","indexed":false,"internalType":"string"},{"name":"val","type":"uint256","indexed":false,"internalType":"uint256"}],"anonymous":false},{"type":"event","name":"log_string","inputs":[{"name":"","type":"string","indexed":false,"internalType":"string"}],"anonymous":false},{"type":"event","name":"log_uint","inputs":[{"name":"","type":"uint256","indexed":false,"internalType":"uint256"}],"anonymous":false},{"type":"event","name":"logs","inputs":[{"name":"","type":"bytes","indexed":false,"internalType":"bytes"}],"anonymous":false}],"bytecode":{"object":"0x60806040526000805460ff1916600117905534801561001d57600080fd5b5061029b8061002d6000396000f3fe608060405234801561001057600080fd5b50600436106100365760003560e01c8063ba414fa61461003b578063fa7626d414610057575b600080fd5b610043610064565b604051901515815260200160405180910390f35b6000546100439060ff1681565b60008054610100900460ff16156100845750600054610100900460ff1690565b6000737109709ecfa91a80626ff3989d68f67f5b1dd12d3b156101bf5760408051737109709ecfa91a80626ff3989d68f67f5b1dd12d602082018190527f6661696c6564000000000000000000000000000000000000000000000000000082840152825180830384018152606083019093526000929091610129917f667f9d70ca411d70ead50d8d5c22070dafc36ad75f3dcf5e7237b22ade9aecc4916080016101f4565b604080517fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe08184030181529082905261016191610230565b6000604051808303816000865af19150503d806000811461019e576040519150601f19603f3d011682016040523d82523d6000602084013e6101a3565b606091505b50915050808060200190518101906101bb9190610243565b9150505b919050565b6000815160005b818110156101e557602081850181015186830152016101cb565b50600093019283525090919050565b7fffffffff0000000000000000000000000000000000000000000000000000000083168152600061022860048301846101c4565b949350505050565b600061023c82846101c4565b9392505050565b60006020828403121561025557600080fd5b8151801515811461023c57600080fdfea264697066735822122045bfc8c64c1a3fed27a00a4e9c9ea6082389d4dd74955b9c8b8556add69825bc64736f6c63430008180033","sourceMap":"715:15435:148:-:0;;;1572:26;;;-1:-1:-1;;1572:26:148;1594:4;1572:26;;;715:15435;;;;;;;;;;;;;;;;","linkReferences":{}},"deployedBytecode":{"object":"0x608060405234801561001057600080fd5b50600436106100365760003560e01c8063ba414fa61461003b578063fa7626d414610057575b600080fd5b610043610064565b604051901515815260200160405180910390f35b6000546100439060ff1681565b60008054610100900460ff16156100845750600054610100900460ff1690565b6000737109709ecfa91a80626ff3989d68f67f5b1dd12d3b156101bf5760408051737109709ecfa91a80626ff3989d68f67f5b1dd12d602082018190527f6661696c6564000000000000000000000000000000000000000000000000000082840152825180830384018152606083019093526000929091610129917f667f9d70ca411d70ead50d8d5c22070dafc36ad75f3dcf5e7237b22ade9aecc4916080016101f4565b604080517fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe08184030181529082905261016191610230565b6000604051808303816000865af19150503d806000811461019e576040519150601f19603f3d011682016040523d82523d6000602084013e6101a3565b606091505b50915050808060200190518101906101bb9190610243565b9150505b919050565b6000815160005b818110156101e557602081850181015186830152016101cb565b50600093019283525090919050565b7fffffffff0000000000000000000000000000000000000000000000000000000083168152600061022860048301846101c4565b949350505050565b600061023c82846101c4565b9392505050565b60006020828403121561025557600080fd5b8151801515811461023c57600080fdfea264697066735822122045bfc8c64c1a3fed27a00a4e9c9ea6082389d4dd74955b9c8b8556add69825bc64736f6c63430008180033","sourceMap":"715:15435:148:-:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;1819:584;;;:::i;:::-;;;179:14:341;;172:22;154:41;;142:2;127:18;1819:584:148;;;;;;;1572:26;;;;;;;;;1819:584;1853:4;1873:7;;;;;;;1869:528;;;-1:-1:-1;1903:7:148;;;;;;;;1819:584::o;1869:528::-;1941:17;2990:42;2978:55;3059:16;1980:374;;2196:43;;;1671:64;2196:43;;;380:74:341;;;2221:17:148;470:18:341;;;463:34;2196:43:148;;;;;;;;;353:18:341;;;2196:43:148;;;-1:-1:-1;;1671:64:148;;2086:175;;2135:34;;2086:175;;;:::i;:::-;;;;;;;;;;;;;;;2047:232;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;2020:259;;;2323:7;2312:27;;;;;;;;;;;;:::i;:::-;2297:42;;2002:352;1980:374;2374:12;1819:584;-1:-1:-1;1819:584:148:o;508:322:341:-;549:3;587:5;581:12;611:1;621:128;635:6;632:1;629:13;621:128;;;732:4;717:13;;;713:24;;707:31;694:11;;;687:52;650:12;621:128;;;-1:-1:-1;804:1:341;768:16;;793:13;;;-1:-1:-1;768:16:341;;508:322;-1:-1:-1;508:322:341:o;835:324::-;1032:66;1024:6;1020:79;1015:3;1008:92;990:3;1116:37;1150:1;1145:3;1141:11;1133:6;1116:37;:::i;:::-;1109:44;835:324;-1:-1:-1;;;;835:324:341:o;1164:189::-;1293:3;1318:29;1343:3;1335:6;1318:29;:::i;:::-;1311:36;1164:189;-1:-1:-1;;;1164:189:341:o;1358:277::-;1425:6;1478:2;1466:9;1457:7;1453:23;1449:32;1446:52;;;1494:1;1491;1484:12;1446:52;1526:9;1520:16;1579:5;1572:13;1565:21;1558:5;1555:32;1545:60;;1601:1;1598;1591:12","linkReferences":{}},"methodIdentifiers":{"IS_TEST()":"fa7626d4","failed()":"ba414fa6"},"rawMetadata":"{\"compiler\":{\"version\":\"0.8.24+commit.e11b9ed9\"},\"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\":{\"node_modules/ds-test/src/test.sol\":\"DSTest\"},\"evmVersion\":\"paris\",\"libraries\":{},\"metadata\":{\"bytecodeHash\":\"ipfs\"},\"optimizer\":{\"enabled\":true,\"runs\":3000},\"remappings\":[\":@dk1a/solidity-stringutils/=node_modules/@dk1a/solidity-stringutils/\",\":@latticexyz/=node_modules/@latticexyz/\",\":@openzeppelin/=node_modules/@openzeppelin/\",\":base/=src/\",\":ds-test/=node_modules/ds-test/src/\",\":forge-std/=node_modules/forge-std/src/\",\":solmate/=node_modules/solmate/src/\"]},\"sources\":{\"node_modules/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.24+commit.e11b9ed9"},"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":["@dk1a/solidity-stringutils/=node_modules/@dk1a/solidity-stringutils/","@latticexyz/=node_modules/@latticexyz/","@openzeppelin/=node_modules/@openzeppelin/","base/=src/","ds-test/=node_modules/ds-test/src/","forge-std/=node_modules/forge-std/src/","solmate/=node_modules/solmate/src/"],"optimizer":{"enabled":true,"runs":3000},"metadata":{"bytecodeHash":"ipfs"},"compilationTarget":{"node_modules/ds-test/src/test.sol":"DSTest"},"evmVersion":"paris","libraries":{}},"sources":{"node_modules/ds-test/src/test.sol":{"keccak256":"0xb39cd1d5220cb474947b131e15a4538334b7e886af244b440ae5c9c6bba96a54","urls":["bzz-raw://3101520221449ac0070bda3881311a71d9aa87e5210765e875246922cb5cb5f5","dweb:/ipfs/Qmbg6kAHNoG7ox9N9Xqd9Ere2H2XixMFWFqvyPwFCzB3Gr"],"license":"GPL-3.0-or-later"}},"version":1},"ast":{"absolutePath":"node_modules/ds-test/src/test.sol","id":61197,"exportedSymbols":{"DSTest":[61196]},"nodeType":"SourceUnit","src":"689:15462:148","nodes":[{"id":59411,"nodeType":"PragmaDirective","src":"689:24:148","nodes":[],"literals":["solidity",">=","0.5",".0"]},{"id":61196,"nodeType":"ContractDefinition","src":"715:15435:148","nodes":[{"id":59415,"nodeType":"EventDefinition","src":"737:38:148","nodes":[],"anonymous":false,"eventSelector":"41304facd9323d75b11bcdd609cb38effffdb05710f7caf0e9b16c6d9d709f50","name":"log","nameLocation":"743:3:148","parameters":{"id":59414,"nodeType":"ParameterList","parameters":[{"constant":false,"id":59413,"indexed":false,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":59415,"src":"767:6:148","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_string_memory_ptr","typeString":"string"},"typeName":{"id":59412,"name":"string","nodeType":"ElementaryTypeName","src":"767:6:148","typeDescriptions":{"typeIdentifier":"t_string_storage_ptr","typeString":"string"}},"visibility":"internal"}],"src":"766:8:148"}},{"id":59419,"nodeType":"EventDefinition","src":"780:37:148","nodes":[],"anonymous":false,"eventSelector":"e7950ede0394b9f2ce4a5a1bf5a7e1852411f7e6661b4308c913c4bfd11027e4","name":"logs","nameLocation":"786:4:148","parameters":{"id":59418,"nodeType":"ParameterList","parameters":[{"constant":false,"id":59417,"indexed":false,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":59419,"src":"810:5:148","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes"},"typeName":{"id":59416,"name":"bytes","nodeType":"ElementaryTypeName","src":"810:5:148","typeDescriptions":{"typeIdentifier":"t_bytes_storage_ptr","typeString":"bytes"}},"visibility":"internal"}],"src":"809:7:148"}},{"id":59423,"nodeType":"EventDefinition","src":"823:39:148","nodes":[],"anonymous":false,"eventSelector":"7ae74c527414ae135fd97047b12921a5ec3911b804197855d67e25c7b75ee6f3","name":"log_address","nameLocation":"829:11:148","parameters":{"id":59422,"nodeType":"ParameterList","parameters":[{"constant":false,"id":59421,"indexed":false,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":59423,"src":"853:7:148","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":59420,"name":"address","nodeType":"ElementaryTypeName","src":"853:7:148","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"src":"852:9:148"}},{"id":59427,"nodeType":"EventDefinition","src":"867:39:148","nodes":[],"anonymous":false,"eventSelector":"e81699b85113eea1c73e10588b2b035e55893369632173afd43feb192fac64e3","name":"log_bytes32","nameLocation":"873:11:148","parameters":{"id":59426,"nodeType":"ParameterList","parameters":[{"constant":false,"id":59425,"indexed":false,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":59427,"src":"897:7:148","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"},"typeName":{"id":59424,"name":"bytes32","nodeType":"ElementaryTypeName","src":"897:7:148","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"visibility":"internal"}],"src":"896:9:148"}},{"id":59431,"nodeType":"EventDefinition","src":"911:35:148","nodes":[],"anonymous":false,"eventSelector":"0eb5d52624c8d28ada9fc55a8c502ed5aa3fbe2fb6e91b71b5f376882b1d2fb8","name":"log_int","nameLocation":"917:7:148","parameters":{"id":59430,"nodeType":"ParameterList","parameters":[{"constant":false,"id":59429,"indexed":false,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":59431,"src":"941:3:148","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_int256","typeString":"int256"},"typeName":{"id":59428,"name":"int","nodeType":"ElementaryTypeName","src":"941:3:148","typeDescriptions":{"typeIdentifier":"t_int256","typeString":"int256"}},"visibility":"internal"}],"src":"940:5:148"}},{"id":59435,"nodeType":"EventDefinition","src":"951:36:148","nodes":[],"anonymous":false,"eventSelector":"2cab9790510fd8bdfbd2115288db33fec66691d476efc5427cfd4c0969301755","name":"log_uint","nameLocation":"957:8:148","parameters":{"id":59434,"nodeType":"ParameterList","parameters":[{"constant":false,"id":59433,"indexed":false,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":59435,"src":"981:4:148","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":59432,"name":"uint","nodeType":"ElementaryTypeName","src":"981:4:148","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"980:6:148"}},{"id":59439,"nodeType":"EventDefinition","src":"992:37:148","nodes":[],"anonymous":false,"eventSelector":"23b62ad0584d24a75f0bf3560391ef5659ec6db1269c56e11aa241d637f19b20","name":"log_bytes","nameLocation":"998:9:148","parameters":{"id":59438,"nodeType":"ParameterList","parameters":[{"constant":false,"id":59437,"indexed":false,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":59439,"src":"1022:5:148","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes"},"typeName":{"id":59436,"name":"bytes","nodeType":"ElementaryTypeName","src":"1022:5:148","typeDescriptions":{"typeIdentifier":"t_bytes_storage_ptr","typeString":"bytes"}},"visibility":"internal"}],"src":"1021:7:148"}},{"id":59443,"nodeType":"EventDefinition","src":"1034:38:148","nodes":[],"anonymous":false,"eventSelector":"0b2e13ff20ac7b474198655583edf70dedd2c1dc980e329c4fbb2fc0748b796b","name":"log_string","nameLocation":"1040:10:148","parameters":{"id":59442,"nodeType":"ParameterList","parameters":[{"constant":false,"id":59441,"indexed":false,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":59443,"src":"1064:6:148","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_string_memory_ptr","typeString":"string"},"typeName":{"id":59440,"name":"string","nodeType":"ElementaryTypeName","src":"1064:6:148","typeDescriptions":{"typeIdentifier":"t_string_storage_ptr","typeString":"string"}},"visibility":"internal"}],"src":"1063:8:148"}},{"id":59449,"nodeType":"EventDefinition","src":"1078:55:148","nodes":[],"anonymous":false,"eventSelector":"9c4e8541ca8f0dc1c413f9108f66d82d3cecb1bddbce437a61caa3175c4cc96f","name":"log_named_address","nameLocation":"1084:17:148","parameters":{"id":59448,"nodeType":"ParameterList","parameters":[{"constant":false,"id":59445,"indexed":false,"mutability":"mutable","name":"key","nameLocation":"1115:3:148","nodeType":"VariableDeclaration","scope":59449,"src":"1108:10:148","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_string_memory_ptr","typeString":"string"},"typeName":{"id":59444,"name":"string","nodeType":"ElementaryTypeName","src":"1108:6:148","typeDescriptions":{"typeIdentifier":"t_string_storage_ptr","typeString":"string"}},"visibility":"internal"},{"constant":false,"id":59447,"indexed":false,"mutability":"mutable","name":"val","nameLocation":"1128:3:148","nodeType":"VariableDeclaration","scope":59449,"src":"1120:11:148","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":59446,"name":"address","nodeType":"ElementaryTypeName","src":"1120:7:148","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"src":"1107:25:148"}},{"id":59455,"nodeType":"EventDefinition","src":"1138:55:148","nodes":[],"anonymous":false,"eventSelector":"afb795c9c61e4fe7468c386f925d7a5429ecad9c0495ddb8d38d690614d32f99","name":"log_named_bytes32","nameLocation":"1144:17:148","parameters":{"id":59454,"nodeType":"ParameterList","parameters":[{"constant":false,"id":59451,"indexed":false,"mutability":"mutable","name":"key","nameLocation":"1175:3:148","nodeType":"VariableDeclaration","scope":59455,"src":"1168:10:148","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_string_memory_ptr","typeString":"string"},"typeName":{"id":59450,"name":"string","nodeType":"ElementaryTypeName","src":"1168:6:148","typeDescriptions":{"typeIdentifier":"t_string_storage_ptr","typeString":"string"}},"visibility":"internal"},{"constant":false,"id":59453,"indexed":false,"mutability":"mutable","name":"val","nameLocation":"1188:3:148","nodeType":"VariableDeclaration","scope":59455,"src":"1180:11:148","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"},"typeName":{"id":59452,"name":"bytes32","nodeType":"ElementaryTypeName","src":"1180:7:148","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"visibility":"internal"}],"src":"1167:25:148"}},{"id":59463,"nodeType":"EventDefinition","src":"1198:66:148","nodes":[],"anonymous":false,"eventSelector":"5da6ce9d51151ba10c09a559ef24d520b9dac5c5b8810ae8434e4d0d86411a95","name":"log_named_decimal_int","nameLocation":"1204:21:148","parameters":{"id":59462,"nodeType":"ParameterList","parameters":[{"constant":false,"id":59457,"indexed":false,"mutability":"mutable","name":"key","nameLocation":"1235:3:148","nodeType":"VariableDeclaration","scope":59463,"src":"1228:10:148","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_string_memory_ptr","typeString":"string"},"typeName":{"id":59456,"name":"string","nodeType":"ElementaryTypeName","src":"1228:6:148","typeDescriptions":{"typeIdentifier":"t_string_storage_ptr","typeString":"string"}},"visibility":"internal"},{"constant":false,"id":59459,"indexed":false,"mutability":"mutable","name":"val","nameLocation":"1244:3:148","nodeType":"VariableDeclaration","scope":59463,"src":"1240:7:148","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_int256","typeString":"int256"},"typeName":{"id":59458,"name":"int","nodeType":"ElementaryTypeName","src":"1240:3:148","typeDescriptions":{"typeIdentifier":"t_int256","typeString":"int256"}},"visibility":"internal"},{"constant":false,"id":59461,"indexed":false,"mutability":"mutable","name":"decimals","nameLocation":"1254:8:148","nodeType":"VariableDeclaration","scope":59463,"src":"1249:13:148","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":59460,"name":"uint","nodeType":"ElementaryTypeName","src":"1249:4:148","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"1227:36:148"}},{"id":59471,"nodeType":"EventDefinition","src":"1269:67:148","nodes":[],"anonymous":false,"eventSelector":"eb8ba43ced7537421946bd43e828b8b2b8428927aa8f801c13d934bf11aca57b","name":"log_named_decimal_uint","nameLocation":"1275:22:148","parameters":{"id":59470,"nodeType":"ParameterList","parameters":[{"constant":false,"id":59465,"indexed":false,"mutability":"mutable","name":"key","nameLocation":"1306:3:148","nodeType":"VariableDeclaration","scope":59471,"src":"1299:10:148","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_string_memory_ptr","typeString":"string"},"typeName":{"id":59464,"name":"string","nodeType":"ElementaryTypeName","src":"1299:6:148","typeDescriptions":{"typeIdentifier":"t_string_storage_ptr","typeString":"string"}},"visibility":"internal"},{"constant":false,"id":59467,"indexed":false,"mutability":"mutable","name":"val","nameLocation":"1316:3:148","nodeType":"VariableDeclaration","scope":59471,"src":"1311:8:148","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":59466,"name":"uint","nodeType":"ElementaryTypeName","src":"1311:4:148","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":59469,"indexed":false,"mutability":"mutable","name":"decimals","nameLocation":"1326:8:148","nodeType":"VariableDeclaration","scope":59471,"src":"1321:13:148","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":59468,"name":"uint","nodeType":"ElementaryTypeName","src":"1321:4:148","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"1298:37:148"}},{"id":59477,"nodeType":"EventDefinition","src":"1341:51:148","nodes":[],"anonymous":false,"eventSelector":"2fe632779174374378442a8e978bccfbdcc1d6b2b0d81f7e8eb776ab2286f168","name":"log_named_int","nameLocation":"1347:13:148","parameters":{"id":59476,"nodeType":"ParameterList","parameters":[{"constant":false,"id":59473,"indexed":false,"mutability":"mutable","name":"key","nameLocation":"1378:3:148","nodeType":"VariableDeclaration","scope":59477,"src":"1371:10:148","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_string_memory_ptr","typeString":"string"},"typeName":{"id":59472,"name":"string","nodeType":"ElementaryTypeName","src":"1371:6:148","typeDescriptions":{"typeIdentifier":"t_string_storage_ptr","typeString":"string"}},"visibility":"internal"},{"constant":false,"id":59475,"indexed":false,"mutability":"mutable","name":"val","nameLocation":"1387:3:148","nodeType":"VariableDeclaration","scope":59477,"src":"1383:7:148","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_int256","typeString":"int256"},"typeName":{"id":59474,"name":"int","nodeType":"ElementaryTypeName","src":"1383:3:148","typeDescriptions":{"typeIdentifier":"t_int256","typeString":"int256"}},"visibility":"internal"}],"src":"1370:21:148"}},{"id":59483,"nodeType":"EventDefinition","src":"1397:52:148","nodes":[],"anonymous":false,"eventSelector":"b2de2fbe801a0df6c0cbddfd448ba3c41d48a040ca35c56c8196ef0fcae721a8","name":"log_named_uint","nameLocation":"1403:14:148","parameters":{"id":59482,"nodeType":"ParameterList","parameters":[{"constant":false,"id":59479,"indexed":false,"mutability":"mutable","name":"key","nameLocation":"1434:3:148","nodeType":"VariableDeclaration","scope":59483,"src":"1427:10:148","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_string_memory_ptr","typeString":"string"},"typeName":{"id":59478,"name":"string","nodeType":"ElementaryTypeName","src":"1427:6:148","typeDescriptions":{"typeIdentifier":"t_string_storage_ptr","typeString":"string"}},"visibility":"internal"},{"constant":false,"id":59481,"indexed":false,"mutability":"mutable","name":"val","nameLocation":"1444:3:148","nodeType":"VariableDeclaration","scope":59483,"src":"1439:8:148","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":59480,"name":"uint","nodeType":"ElementaryTypeName","src":"1439:4:148","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"1426:22:148"}},{"id":59489,"nodeType":"EventDefinition","src":"1454:53:148","nodes":[],"anonymous":false,"eventSelector":"d26e16cad4548705e4c9e2d94f98ee91c289085ee425594fd5635fa2964ccf18","name":"log_named_bytes","nameLocation":"1460:15:148","parameters":{"id":59488,"nodeType":"ParameterList","parameters":[{"constant":false,"id":59485,"indexed":false,"mutability":"mutable","name":"key","nameLocation":"1491:3:148","nodeType":"VariableDeclaration","scope":59489,"src":"1484:10:148","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_string_memory_ptr","typeString":"string"},"typeName":{"id":59484,"name":"string","nodeType":"ElementaryTypeName","src":"1484:6:148","typeDescriptions":{"typeIdentifier":"t_string_storage_ptr","typeString":"string"}},"visibility":"internal"},{"constant":false,"id":59487,"indexed":false,"mutability":"mutable","name":"val","nameLocation":"1502:3:148","nodeType":"VariableDeclaration","scope":59489,"src":"1496:9:148","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes"},"typeName":{"id":59486,"name":"bytes","nodeType":"ElementaryTypeName","src":"1496:5:148","typeDescriptions":{"typeIdentifier":"t_bytes_storage_ptr","typeString":"bytes"}},"visibility":"internal"}],"src":"1483:23:148"}},{"id":59495,"nodeType":"EventDefinition","src":"1512:54:148","nodes":[],"anonymous":false,"eventSelector":"280f4446b28a1372417dda658d30b95b2992b12ac9c7f378535f29a97acf3583","name":"log_named_string","nameLocation":"1518:16:148","parameters":{"id":59494,"nodeType":"ParameterList","parameters":[{"constant":false,"id":59491,"indexed":false,"mutability":"mutable","name":"key","nameLocation":"1549:3:148","nodeType":"VariableDeclaration","scope":59495,"src":"1542:10:148","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_string_memory_ptr","typeString":"string"},"typeName":{"id":59490,"name":"string","nodeType":"ElementaryTypeName","src":"1542:6:148","typeDescriptions":{"typeIdentifier":"t_string_storage_ptr","typeString":"string"}},"visibility":"internal"},{"constant":false,"id":59493,"indexed":false,"mutability":"mutable","name":"val","nameLocation":"1561:3:148","nodeType":"VariableDeclaration","scope":59495,"src":"1554:10:148","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_string_memory_ptr","typeString":"string"},"typeName":{"id":59492,"name":"string","nodeType":"ElementaryTypeName","src":"1554:6:148","typeDescriptions":{"typeIdentifier":"t_string_storage_ptr","typeString":"string"}},"visibility":"internal"}],"src":"1541:24:148"}},{"id":59498,"nodeType":"VariableDeclaration","src":"1572:26:148","nodes":[],"constant":false,"functionSelector":"fa7626d4","mutability":"mutable","name":"IS_TEST","nameLocation":"1584:7:148","scope":61196,"stateVariable":true,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"},"typeName":{"id":59496,"name":"bool","nodeType":"ElementaryTypeName","src":"1572:4:148","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"value":{"hexValue":"74727565","id":59497,"isConstant":false,"isLValue":false,"isPure":true,"kind":"bool","lValueRequested":false,"nodeType":"Literal","src":"1594:4:148","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"},"value":"true"},"visibility":"public"},{"id":59500,"nodeType":"VariableDeclaration","src":"1604:20:148","nodes":[],"constant":false,"mutability":"mutable","name":"_failed","nameLocation":"1617:7:148","scope":61196,"stateVariable":true,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"},"typeName":{"id":59499,"name":"bool","nodeType":"ElementaryTypeName","src":"1604:4:148","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"visibility":"private"},{"id":59517,"nodeType":"VariableDeclaration","src":"1631:104:148","nodes":[],"constant":true,"mutability":"constant","name":"HEVM_ADDRESS","nameLocation":"1648:12:148","scope":61196,"stateVariable":true,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":59501,"name":"address","nodeType":"ElementaryTypeName","src":"1631:7:148","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"value":{"arguments":[{"arguments":[{"arguments":[{"arguments":[{"arguments":[{"hexValue":"6865766d20636865617420636f6465","id":59511,"isConstant":false,"isLValue":false,"isPure":true,"kind":"string","lValueRequested":false,"nodeType":"Literal","src":"1713:17:148","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":59510,"name":"keccak256","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-8,"src":"1703:9:148","typeDescriptions":{"typeIdentifier":"t_function_keccak256_pure$_t_bytes_memory_ptr_$returns$_t_bytes32_$","typeString":"function (bytes memory) pure returns (bytes32)"}},"id":59512,"isConstant":false,"isLValue":false,"isPure":true,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"1703:28:148","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_bytes32","typeString":"bytes32"}],"id":59509,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"1695:7:148","typeDescriptions":{"typeIdentifier":"t_type$_t_uint256_$","typeString":"type(uint256)"},"typeName":{"id":59508,"name":"uint256","nodeType":"ElementaryTypeName","src":"1695:7:148","typeDescriptions":{}}},"id":59513,"isConstant":false,"isLValue":false,"isPure":true,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"1695:37:148","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"}],"id":59507,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"1687:7:148","typeDescriptions":{"typeIdentifier":"t_type$_t_uint160_$","typeString":"type(uint160)"},"typeName":{"id":59506,"name":"uint160","nodeType":"ElementaryTypeName","src":"1687:7:148","typeDescriptions":{}}},"id":59514,"isConstant":false,"isLValue":false,"isPure":true,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"1687:46:148","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_uint160","typeString":"uint160"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint160","typeString":"uint160"}],"id":59505,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"1679:7:148","typeDescriptions":{"typeIdentifier":"t_type$_t_bytes20_$","typeString":"type(bytes20)"},"typeName":{"id":59504,"name":"bytes20","nodeType":"ElementaryTypeName","src":"1679:7:148","typeDescriptions":{}}},"id":59515,"isConstant":false,"isLValue":false,"isPure":true,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"1679:55:148","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_bytes20","typeString":"bytes20"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_bytes20","typeString":"bytes20"}],"id":59503,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"1671:7:148","typeDescriptions":{"typeIdentifier":"t_type$_t_address_$","typeString":"type(address)"},"typeName":{"id":59502,"name":"address","nodeType":"ElementaryTypeName","src":"1671:7:148","typeDescriptions":{}}},"id":59516,"isConstant":false,"isLValue":false,"isPure":true,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"1671:64:148","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"id":59521,"nodeType":"ModifierDefinition","src":"1742:27:148","nodes":[],"body":{"id":59520,"nodeType":"Block","src":"1763:6:148","nodes":[],"statements":[{"id":59519,"nodeType":"PlaceholderStatement","src":"1765:1:148"}]},"name":"mayRevert","nameLocation":"1751:9:148","parameters":{"id":59518,"nodeType":"ParameterList","parameters":[],"src":"1760:2:148"},"virtual":false,"visibility":"internal"},{"id":59527,"nodeType":"ModifierDefinition","src":"1774:39:148","nodes":[],"body":{"id":59526,"nodeType":"Block","src":"1807:6:148","nodes":[],"statements":[{"id":59525,"nodeType":"PlaceholderStatement","src":"1809:1:148"}]},"name":"testopts","nameLocation":"1783:8:148","parameters":{"id":59524,"nodeType":"ParameterList","parameters":[{"constant":false,"id":59523,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":59527,"src":"1792:13:148","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_string_memory_ptr","typeString":"string"},"typeName":{"id":59522,"name":"string","nodeType":"ElementaryTypeName","src":"1792:6:148","typeDescriptions":{"typeIdentifier":"t_string_storage_ptr","typeString":"string"}},"visibility":"internal"}],"src":"1791:15:148"},"virtual":false,"visibility":"internal"},{"id":59582,"nodeType":"FunctionDefinition","src":"1819:584:148","nodes":[],"body":{"id":59581,"nodeType":"Block","src":"1859:544:148","nodes":[],"statements":[{"condition":{"id":59532,"name":"_failed","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":59500,"src":"1873:7:148","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"falseBody":{"id":59579,"nodeType":"Block","src":"1927:470:148","statements":[{"assignments":[59537],"declarations":[{"constant":false,"id":59537,"mutability":"mutable","name":"globalFailed","nameLocation":"1946:12:148","nodeType":"VariableDeclaration","scope":59579,"src":"1941:17:148","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"},"typeName":{"id":59536,"name":"bool","nodeType":"ElementaryTypeName","src":"1941:4:148","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"visibility":"internal"}],"id":59539,"initialValue":{"hexValue":"66616c7365","id":59538,"isConstant":false,"isLValue":false,"isPure":true,"kind":"bool","lValueRequested":false,"nodeType":"Literal","src":"1961:5:148","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"},"value":"false"},"nodeType":"VariableDeclarationStatement","src":"1941:25:148"},{"condition":{"arguments":[],"expression":{"argumentTypes":[],"id":59540,"name":"hasHEVMContext","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":59641,"src":"1984:14:148","typeDescriptions":{"typeIdentifier":"t_function_internal_view$__$returns$_t_bool_$","typeString":"function () view returns (bool)"}},"id":59541,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"1984:16:148","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":59576,"nodeType":"IfStatement","src":"1980:374:148","trueBody":{"id":59575,"nodeType":"Block","src":"2002:352:148","statements":[{"assignments":[null,59543],"declarations":[null,{"constant":false,"id":59543,"mutability":"mutable","name":"retdata","nameLocation":"2036:7:148","nodeType":"VariableDeclaration","scope":59575,"src":"2023:20:148","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes"},"typeName":{"id":59542,"name":"bytes","nodeType":"ElementaryTypeName","src":"2023:5:148","typeDescriptions":{"typeIdentifier":"t_bytes_storage_ptr","typeString":"bytes"}},"visibility":"internal"}],"id":59564,"initialValue":{"arguments":[{"arguments":[{"arguments":[{"arguments":[{"hexValue":"6c6f616428616464726573732c6279746573333229","id":59551,"isConstant":false,"isLValue":false,"isPure":true,"kind":"string","lValueRequested":false,"nodeType":"Literal","src":"2145:23:148","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":59550,"name":"keccak256","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-8,"src":"2135:9:148","typeDescriptions":{"typeIdentifier":"t_function_keccak256_pure$_t_bytes_memory_ptr_$returns$_t_bytes32_$","typeString":"function (bytes memory) pure returns (bytes32)"}},"id":59552,"isConstant":false,"isLValue":false,"isPure":true,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"2135:34:148","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_bytes32","typeString":"bytes32"}],"id":59549,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"2128:6:148","typeDescriptions":{"typeIdentifier":"t_type$_t_bytes4_$","typeString":"type(bytes4)"},"typeName":{"id":59548,"name":"bytes4","nodeType":"ElementaryTypeName","src":"2128:6:148","typeDescriptions":{}}},"id":59553,"isConstant":false,"isLValue":false,"isPure":true,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"2128:42:148","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_bytes4","typeString":"bytes4"}},{"arguments":[{"id":59556,"name":"HEVM_ADDRESS","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":59517,"src":"2207:12:148","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"arguments":[{"hexValue":"6661696c6564","id":59559,"isConstant":false,"isLValue":false,"isPure":true,"kind":"string","lValueRequested":false,"nodeType":"Literal","src":"2229:8:148","typeDescriptions":{"typeIdentifier":"t_stringliteral_8f44d68b1a26169d304522fa2f95aa938d98120d628d1db5726120ca84e53b43","typeString":"literal_string \"failed\""},"value":"failed"}],"expression":{"argumentTypes":[{"typeIdentifier":"t_stringliteral_8f44d68b1a26169d304522fa2f95aa938d98120d628d1db5726120ca84e53b43","typeString":"literal_string \"failed\""}],"id":59558,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"2221:7:148","typeDescriptions":{"typeIdentifier":"t_type$_t_bytes32_$","typeString":"type(bytes32)"},"typeName":{"id":59557,"name":"bytes32","nodeType":"ElementaryTypeName","src":"2221:7:148","typeDescriptions":{}}},"id":59560,"isConstant":false,"isLValue":false,"isPure":true,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"2221:17:148","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"},{"typeIdentifier":"t_bytes32","typeString":"bytes32"}],"expression":{"id":59554,"name":"abi","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-1,"src":"2196:3:148","typeDescriptions":{"typeIdentifier":"t_magic_abi","typeString":"abi"}},"id":59555,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"memberLocation":"2200:6:148","memberName":"encode","nodeType":"MemberAccess","src":"2196:10:148","typeDescriptions":{"typeIdentifier":"t_function_abiencode_pure$__$returns$_t_bytes_memory_ptr_$","typeString":"function () pure returns (bytes memory)"}},"id":59561,"isConstant":false,"isLValue":false,"isPure":true,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"2196:43:148","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":59546,"name":"abi","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-1,"src":"2086:3:148","typeDescriptions":{"typeIdentifier":"t_magic_abi","typeString":"abi"}},"id":59547,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"memberLocation":"2090:12:148","memberName":"encodePacked","nodeType":"MemberAccess","src":"2086:16:148","typeDescriptions":{"typeIdentifier":"t_function_abiencodepacked_pure$__$returns$_t_bytes_memory_ptr_$","typeString":"function () pure returns (bytes memory)"}},"id":59562,"isConstant":false,"isLValue":false,"isPure":true,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"2086:175:148","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes memory"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes memory"}],"expression":{"id":59544,"name":"HEVM_ADDRESS","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":59517,"src":"2047:12:148","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"id":59545,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"2060:4:148","memberName":"call","nodeType":"MemberAccess","src":"2047:17:148","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":59563,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"2047:232:148","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$_t_bool_$_t_bytes_memory_ptr_$","typeString":"tuple(bool,bytes memory)"}},"nodeType":"VariableDeclarationStatement","src":"2020:259:148"},{"expression":{"id":59573,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":59565,"name":"globalFailed","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":59537,"src":"2297:12:148","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"arguments":[{"id":59568,"name":"retdata","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":59543,"src":"2323:7:148","typeDescriptions":{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes memory"}},{"components":[{"id":59570,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"2333:4:148","typeDescriptions":{"typeIdentifier":"t_type$_t_bool_$","typeString":"type(bool)"},"typeName":{"id":59569,"name":"bool","nodeType":"ElementaryTypeName","src":"2333:4:148","typeDescriptions":{}}}],"id":59571,"isConstant":false,"isInlineArray":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"TupleExpression","src":"2332:6:148","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":59566,"name":"abi","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-1,"src":"2312:3:148","typeDescriptions":{"typeIdentifier":"t_magic_abi","typeString":"abi"}},"id":59567,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"memberLocation":"2316:6:148","memberName":"decode","nodeType":"MemberAccess","src":"2312:10:148","typeDescriptions":{"typeIdentifier":"t_function_abidecode_pure$__$returns$__$","typeString":"function () pure"}},"id":59572,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"2312:27:148","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"src":"2297:42:148","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":59574,"nodeType":"ExpressionStatement","src":"2297:42:148"}]}},{"expression":{"id":59577,"name":"globalFailed","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":59537,"src":"2374:12:148","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"functionReturnParameters":59531,"id":59578,"nodeType":"Return","src":"2367:19:148"}]},"id":59580,"nodeType":"IfStatement","src":"1869:528:148","trueBody":{"id":59535,"nodeType":"Block","src":"1882:39:148","statements":[{"expression":{"id":59533,"name":"_failed","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":59500,"src":"1903:7:148","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"functionReturnParameters":59531,"id":59534,"nodeType":"Return","src":"1896:14:148"}]}}]},"functionSelector":"ba414fa6","implemented":true,"kind":"function","modifiers":[],"name":"failed","nameLocation":"1828:6:148","parameters":{"id":59528,"nodeType":"ParameterList","parameters":[],"src":"1834:2:148"},"returnParameters":{"id":59531,"nodeType":"ParameterList","parameters":[{"constant":false,"id":59530,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":59582,"src":"1853:4:148","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"},"typeName":{"id":59529,"name":"bool","nodeType":"ElementaryTypeName","src":"1853:4:148","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"visibility":"internal"}],"src":"1852:6:148"},"scope":61196,"stateMutability":"nonpayable","virtual":false,"visibility":"public"},{"id":59626,"nodeType":"FunctionDefinition","src":"2410:424:148","nodes":[],"body":{"id":59625,"nodeType":"Block","src":"2435:399:148","nodes":[],"statements":[{"condition":{"arguments":[],"expression":{"argumentTypes":[],"id":59585,"name":"hasHEVMContext","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":59641,"src":"2449:14:148","typeDescriptions":{"typeIdentifier":"t_function_internal_view$__$returns$_t_bool_$","typeString":"function () view returns (bool)"}},"id":59586,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"2449:16:148","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":59620,"nodeType":"IfStatement","src":"2445:359:148","trueBody":{"id":59619,"nodeType":"Block","src":"2467:337:148","statements":[{"assignments":[59588,null],"declarations":[{"constant":false,"id":59588,"mutability":"mutable","name":"status","nameLocation":"2487:6:148","nodeType":"VariableDeclaration","scope":59619,"src":"2482:11:148","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"},"typeName":{"id":59587,"name":"bool","nodeType":"ElementaryTypeName","src":"2482:4:148","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"visibility":"internal"},null],"id":59616,"initialValue":{"arguments":[{"arguments":[{"arguments":[{"arguments":[{"hexValue":"73746f726528616464726573732c627974657333322c6279746573333229","id":59596,"isConstant":false,"isLValue":false,"isPure":true,"kind":"string","lValueRequested":false,"nodeType":"Literal","src":"2589:32:148","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":59595,"name":"keccak256","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-8,"src":"2579:9:148","typeDescriptions":{"typeIdentifier":"t_function_keccak256_pure$_t_bytes_memory_ptr_$returns$_t_bytes32_$","typeString":"function (bytes memory) pure returns (bytes32)"}},"id":59597,"isConstant":false,"isLValue":false,"isPure":true,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"2579:43:148","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_bytes32","typeString":"bytes32"}],"id":59594,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"2572:6:148","typeDescriptions":{"typeIdentifier":"t_type$_t_bytes4_$","typeString":"type(bytes4)"},"typeName":{"id":59593,"name":"bytes4","nodeType":"ElementaryTypeName","src":"2572:6:148","typeDescriptions":{}}},"id":59598,"isConstant":false,"isLValue":false,"isPure":true,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"2572:51:148","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_bytes4","typeString":"bytes4"}},{"arguments":[{"id":59601,"name":"HEVM_ADDRESS","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":59517,"src":"2656:12:148","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"arguments":[{"hexValue":"6661696c6564","id":59604,"isConstant":false,"isLValue":false,"isPure":true,"kind":"string","lValueRequested":false,"nodeType":"Literal","src":"2678:8:148","typeDescriptions":{"typeIdentifier":"t_stringliteral_8f44d68b1a26169d304522fa2f95aa938d98120d628d1db5726120ca84e53b43","typeString":"literal_string \"failed\""},"value":"failed"}],"expression":{"argumentTypes":[{"typeIdentifier":"t_stringliteral_8f44d68b1a26169d304522fa2f95aa938d98120d628d1db5726120ca84e53b43","typeString":"literal_string \"failed\""}],"id":59603,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"2670:7:148","typeDescriptions":{"typeIdentifier":"t_type$_t_bytes32_$","typeString":"type(bytes32)"},"typeName":{"id":59602,"name":"bytes32","nodeType":"ElementaryTypeName","src":"2670:7:148","typeDescriptions":{}}},"id":59605,"isConstant":false,"isLValue":false,"isPure":true,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"2670:17:148","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},{"arguments":[{"arguments":[{"hexValue":"30783031","id":59610,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"2705:4:148","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":59609,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"2697:7:148","typeDescriptions":{"typeIdentifier":"t_type$_t_uint256_$","typeString":"type(uint256)"},"typeName":{"id":59608,"name":"uint256","nodeType":"ElementaryTypeName","src":"2697:7:148","typeDescriptions":{}}},"id":59611,"isConstant":false,"isLValue":false,"isPure":true,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"2697:13:148","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"}],"id":59607,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"2689:7:148","typeDescriptions":{"typeIdentifier":"t_type$_t_bytes32_$","typeString":"type(bytes32)"},"typeName":{"id":59606,"name":"bytes32","nodeType":"ElementaryTypeName","src":"2689:7:148","typeDescriptions":{}}},"id":59612,"isConstant":false,"isLValue":false,"isPure":true,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"2689:22:148","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":59599,"name":"abi","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-1,"src":"2645:3:148","typeDescriptions":{"typeIdentifier":"t_magic_abi","typeString":"abi"}},"id":59600,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"memberLocation":"2649:6:148","memberName":"encode","nodeType":"MemberAccess","src":"2645:10:148","typeDescriptions":{"typeIdentifier":"t_function_abiencode_pure$__$returns$_t_bytes_memory_ptr_$","typeString":"function () pure returns (bytes memory)"}},"id":59613,"isConstant":false,"isLValue":false,"isPure":true,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"2645:67:148","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":59591,"name":"abi","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-1,"src":"2534:3:148","typeDescriptions":{"typeIdentifier":"t_magic_abi","typeString":"abi"}},"id":59592,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"memberLocation":"2538:12:148","memberName":"encodePacked","nodeType":"MemberAccess","src":"2534:16:148","typeDescriptions":{"typeIdentifier":"t_function_abiencodepacked_pure$__$returns$_t_bytes_memory_ptr_$","typeString":"function () pure returns (bytes memory)"}},"id":59614,"isConstant":false,"isLValue":false,"isPure":true,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"2534:196:148","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes memory"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes memory"}],"expression":{"id":59589,"name":"HEVM_ADDRESS","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":59517,"src":"2499:12:148","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"id":59590,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"2512:4:148","memberName":"call","nodeType":"MemberAccess","src":"2499:17:148","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":59615,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"2499:245:148","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$_t_bool_$_t_bytes_memory_ptr_$","typeString":"tuple(bool,bytes memory)"}},"nodeType":"VariableDeclarationStatement","src":"2481:263:148"},{"expression":{"id":59617,"name":"status","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":59588,"src":"2758:6:148","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":59618,"nodeType":"ExpressionStatement","src":"2758:6:148"}]}},{"expression":{"id":59623,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":59621,"name":"_failed","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":59500,"src":"2813:7:148","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"hexValue":"74727565","id":59622,"isConstant":false,"isLValue":false,"isPure":true,"kind":"bool","lValueRequested":false,"nodeType":"Literal","src":"2823:4:148","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"},"value":"true"},"src":"2813:14:148","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":59624,"nodeType":"ExpressionStatement","src":"2813:14:148"}]},"implemented":true,"kind":"function","modifiers":[],"name":"fail","nameLocation":"2419:4:148","parameters":{"id":59583,"nodeType":"ParameterList","parameters":[],"src":"2423:2:148"},"returnParameters":{"id":59584,"nodeType":"ParameterList","parameters":[],"src":"2435:0:148"},"scope":61196,"stateMutability":"nonpayable","virtual":false,"visibility":"internal"},{"id":59641,"nodeType":"FunctionDefinition","src":"2840:242:148","nodes":[],"body":{"id":59640,"nodeType":"Block","src":"2895:187:148","nodes":[],"statements":[{"assignments":[59632],"declarations":[{"constant":false,"id":59632,"mutability":"mutable","name":"hevmCodeSize","nameLocation":"2913:12:148","nodeType":"VariableDeclaration","scope":59640,"src":"2905:20:148","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":59631,"name":"uint256","nodeType":"ElementaryTypeName","src":"2905:7:148","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"id":59634,"initialValue":{"hexValue":"30","id":59633,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"2928:1:148","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"},"nodeType":"VariableDeclarationStatement","src":"2905:24:148"},{"AST":{"nativeSrc":"2948:95:148","nodeType":"YulBlock","src":"2948:95:148","statements":[{"nativeSrc":"2962:71:148","nodeType":"YulAssignment","src":"2962:71:148","value":{"arguments":[{"kind":"number","nativeSrc":"2990:42:148","nodeType":"YulLiteral","src":"2990:42:148","type":"","value":"0x7109709ECfa91a80626fF3989D68f67F5b1DD12D"}],"functionName":{"name":"extcodesize","nativeSrc":"2978:11:148","nodeType":"YulIdentifier","src":"2978:11:148"},"nativeSrc":"2978:55:148","nodeType":"YulFunctionCall","src":"2978:55:148"},"variableNames":[{"name":"hevmCodeSize","nativeSrc":"2962:12:148","nodeType":"YulIdentifier","src":"2962:12:148"}]}]},"evmVersion":"paris","externalReferences":[{"declaration":59632,"isOffset":false,"isSlot":false,"src":"2962:12:148","valueSize":1}],"id":59635,"nodeType":"InlineAssembly","src":"2939:104:148"},{"expression":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":59638,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":59636,"name":"hevmCodeSize","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":59632,"src":"3059:12:148","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":">","rightExpression":{"hexValue":"30","id":59637,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"3074:1:148","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"},"src":"3059:16:148","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"functionReturnParameters":59630,"id":59639,"nodeType":"Return","src":"3052:23:148"}]},"implemented":true,"kind":"function","modifiers":[],"name":"hasHEVMContext","nameLocation":"2849:14:148","parameters":{"id":59627,"nodeType":"ParameterList","parameters":[],"src":"2863:2:148"},"returnParameters":{"id":59630,"nodeType":"ParameterList","parameters":[{"constant":false,"id":59629,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":59641,"src":"2889:4:148","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"},"typeName":{"id":59628,"name":"bool","nodeType":"ElementaryTypeName","src":"2889:4:148","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"visibility":"internal"}],"src":"2888:6:148"},"scope":61196,"stateMutability":"view","virtual":false,"visibility":"internal"},{"id":59662,"nodeType":"ModifierDefinition","src":"3088:161:148","nodes":[],"body":{"id":59661,"nodeType":"Block","src":"3108:141:148","nodes":[],"statements":[{"assignments":[59644],"declarations":[{"constant":false,"id":59644,"mutability":"mutable","name":"startGas","nameLocation":"3123:8:148","nodeType":"VariableDeclaration","scope":59661,"src":"3118:13:148","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":59643,"name":"uint","nodeType":"ElementaryTypeName","src":"3118:4:148","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"id":59647,"initialValue":{"arguments":[],"expression":{"argumentTypes":[],"id":59645,"name":"gasleft","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-7,"src":"3134:7:148","typeDescriptions":{"typeIdentifier":"t_function_gasleft_view$__$returns$_t_uint256_$","typeString":"function () view returns (uint256)"}},"id":59646,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"3134:9:148","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"VariableDeclarationStatement","src":"3118:25:148"},{"id":59648,"nodeType":"PlaceholderStatement","src":"3153:1:148"},{"assignments":[59650],"declarations":[{"constant":false,"id":59650,"mutability":"mutable","name":"endGas","nameLocation":"3169:6:148","nodeType":"VariableDeclaration","scope":59661,"src":"3164:11:148","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":59649,"name":"uint","nodeType":"ElementaryTypeName","src":"3164:4:148","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"id":59653,"initialValue":{"arguments":[],"expression":{"argumentTypes":[],"id":59651,"name":"gasleft","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-7,"src":"3178:7:148","typeDescriptions":{"typeIdentifier":"t_function_gasleft_view$__$returns$_t_uint256_$","typeString":"function () view returns (uint256)"}},"id":59652,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"3178:9:148","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"VariableDeclarationStatement","src":"3164:23:148"},{"eventCall":{"arguments":[{"hexValue":"676173","id":59655,"isConstant":false,"isLValue":false,"isPure":true,"kind":"string","lValueRequested":false,"nodeType":"Literal","src":"3217:5:148","typeDescriptions":{"typeIdentifier":"t_stringliteral_4498c2139ad6cf2beef3ae7bec34c4856d471c8680dfd28d553f117df74df6b7","typeString":"literal_string \"gas\""},"value":"gas"},{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":59658,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":59656,"name":"startGas","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":59644,"src":"3224:8:148","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"-","rightExpression":{"id":59657,"name":"endGas","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":59650,"src":"3235:6:148","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"3224:17:148","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_stringliteral_4498c2139ad6cf2beef3ae7bec34c4856d471c8680dfd28d553f117df74df6b7","typeString":"literal_string \"gas\""},{"typeIdentifier":"t_uint256","typeString":"uint256"}],"id":59654,"name":"log_named_uint","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":59483,"src":"3202:14:148","typeDescriptions":{"typeIdentifier":"t_function_event_nonpayable$_t_string_memory_ptr_$_t_uint256_$returns$__$","typeString":"function (string memory,uint256)"}},"id":59659,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"3202:40:148","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":59660,"nodeType":"EmitStatement","src":"3197:45:148"}]},"name":"logs_gas","nameLocation":"3097:8:148","parameters":{"id":59642,"nodeType":"ParameterList","parameters":[],"src":"3105:2:148"},"virtual":false,"visibility":"internal"},{"id":59679,"nodeType":"FunctionDefinition","src":"3255:157:148","nodes":[],"body":{"id":59678,"nodeType":"Block","src":"3300:112:148","nodes":[],"statements":[{"condition":{"id":59668,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"UnaryOperation","operator":"!","prefix":true,"src":"3314:10:148","subExpression":{"id":59667,"name":"condition","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":59664,"src":"3315:9:148","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":59677,"nodeType":"IfStatement","src":"3310:96:148","trueBody":{"id":59676,"nodeType":"Block","src":"3326:80:148","statements":[{"eventCall":{"arguments":[{"hexValue":"4572726f723a20417373657274696f6e204661696c6564","id":59670,"isConstant":false,"isLValue":false,"isPure":true,"kind":"string","lValueRequested":false,"nodeType":"Literal","src":"3349:25:148","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":59669,"name":"log","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":59415,"src":"3345:3:148","typeDescriptions":{"typeIdentifier":"t_function_event_nonpayable$_t_string_memory_ptr_$returns$__$","typeString":"function (string memory)"}},"id":59671,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"3345:30:148","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":59672,"nodeType":"EmitStatement","src":"3340:35:148"},{"expression":{"arguments":[],"expression":{"argumentTypes":[],"id":59673,"name":"fail","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":59626,"src":"3389:4:148","typeDescriptions":{"typeIdentifier":"t_function_internal_nonpayable$__$returns$__$","typeString":"function ()"}},"id":59674,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"3389:6:148","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":59675,"nodeType":"ExpressionStatement","src":"3389:6:148"}]}}]},"implemented":true,"kind":"function","modifiers":[],"name":"assertTrue","nameLocation":"3264:10:148","parameters":{"id":59665,"nodeType":"ParameterList","parameters":[{"constant":false,"id":59664,"mutability":"mutable","name":"condition","nameLocation":"3280:9:148","nodeType":"VariableDeclaration","scope":59679,"src":"3275:14:148","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"},"typeName":{"id":59663,"name":"bool","nodeType":"ElementaryTypeName","src":"3275:4:148","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"visibility":"internal"}],"src":"3274:16:148"},"returnParameters":{"id":59666,"nodeType":"ParameterList","parameters":[],"src":"3300:0:148"},"scope":61196,"stateMutability":"nonpayable","virtual":false,"visibility":"internal"},{"id":59700,"nodeType":"FunctionDefinition","src":"3418:191:148","nodes":[],"body":{"id":59699,"nodeType":"Block","src":"3482:127:148","nodes":[],"statements":[{"condition":{"id":59687,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"UnaryOperation","operator":"!","prefix":true,"src":"3496:10:148","subExpression":{"id":59686,"name":"condition","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":59681,"src":"3497:9:148","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":59698,"nodeType":"IfStatement","src":"3492:111:148","trueBody":{"id":59697,"nodeType":"Block","src":"3508:95:148","statements":[{"eventCall":{"arguments":[{"hexValue":"4572726f72","id":59689,"isConstant":false,"isLValue":false,"isPure":true,"kind":"string","lValueRequested":false,"nodeType":"Literal","src":"3544:7:148","typeDescriptions":{"typeIdentifier":"t_stringliteral_e342daa49723ff3485f4ff5f755a17b8bc9c3c33bbd312ceee37c94eebfe45c1","typeString":"literal_string \"Error\""},"value":"Error"},{"id":59690,"name":"err","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":59683,"src":"3553:3:148","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":59688,"name":"log_named_string","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":59495,"src":"3527:16:148","typeDescriptions":{"typeIdentifier":"t_function_event_nonpayable$_t_string_memory_ptr_$_t_string_memory_ptr_$returns$__$","typeString":"function (string memory,string memory)"}},"id":59691,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"3527:30:148","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":59692,"nodeType":"EmitStatement","src":"3522:35:148"},{"expression":{"arguments":[{"id":59694,"name":"condition","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":59681,"src":"3582:9:148","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_bool","typeString":"bool"}],"id":59693,"name":"assertTrue","nodeType":"Identifier","overloadedDeclarations":[59679,59700],"referencedDeclaration":59679,"src":"3571:10:148","typeDescriptions":{"typeIdentifier":"t_function_internal_nonpayable$_t_bool_$returns$__$","typeString":"function (bool)"}},"id":59695,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"3571:21:148","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":59696,"nodeType":"ExpressionStatement","src":"3571:21:148"}]}}]},"implemented":true,"kind":"function","modifiers":[],"name":"assertTrue","nameLocation":"3427:10:148","parameters":{"id":59684,"nodeType":"ParameterList","parameters":[{"constant":false,"id":59681,"mutability":"mutable","name":"condition","nameLocation":"3443:9:148","nodeType":"VariableDeclaration","scope":59700,"src":"3438:14:148","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"},"typeName":{"id":59680,"name":"bool","nodeType":"ElementaryTypeName","src":"3438:4:148","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"visibility":"internal"},{"constant":false,"id":59683,"mutability":"mutable","name":"err","nameLocation":"3468:3:148","nodeType":"VariableDeclaration","scope":59700,"src":"3454:17:148","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_string_memory_ptr","typeString":"string"},"typeName":{"id":59682,"name":"string","nodeType":"ElementaryTypeName","src":"3454:6:148","typeDescriptions":{"typeIdentifier":"t_string_storage_ptr","typeString":"string"}},"visibility":"internal"}],"src":"3437:35:148"},"returnParameters":{"id":59685,"nodeType":"ParameterList","parameters":[],"src":"3482:0:148"},"scope":61196,"stateMutability":"nonpayable","virtual":false,"visibility":"internal"},{"id":59730,"nodeType":"FunctionDefinition","src":"3615:277:148","nodes":[],"body":{"id":59729,"nodeType":"Block","src":"3664:228:148","nodes":[],"statements":[{"condition":{"commonType":{"typeIdentifier":"t_address","typeString":"address"},"id":59709,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":59707,"name":"a","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":59702,"src":"3678:1:148","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"BinaryOperation","operator":"!=","rightExpression":{"id":59708,"name":"b","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":59704,"src":"3683:1:148","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"src":"3678:6:148","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":59728,"nodeType":"IfStatement","src":"3674:212:148","trueBody":{"id":59727,"nodeType":"Block","src":"3686:200:148","statements":[{"eventCall":{"arguments":[{"hexValue":"4572726f723a2061203d3d2062206e6f7420736174697366696564205b616464726573735d","id":59711,"isConstant":false,"isLValue":false,"isPure":true,"kind":"string","lValueRequested":false,"nodeType":"Literal","src":"3709:39:148","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":59710,"name":"log","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":59415,"src":"3705:3:148","typeDescriptions":{"typeIdentifier":"t_function_event_nonpayable$_t_string_memory_ptr_$returns$__$","typeString":"function (string memory)"}},"id":59712,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"3705:44:148","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":59713,"nodeType":"EmitStatement","src":"3700:49:148"},{"eventCall":{"arguments":[{"hexValue":"20204578706563746564","id":59715,"isConstant":false,"isLValue":false,"isPure":true,"kind":"string","lValueRequested":false,"nodeType":"Literal","src":"3786:12:148","typeDescriptions":{"typeIdentifier":"t_stringliteral_42fa07d7c51ce5de92a0fc65dbf7e7800814fd01c258dc50e84d5be59184bf0b","typeString":"literal_string \"  Expected\""},"value":"  Expected"},{"id":59716,"name":"b","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":59704,"src":"3800:1:148","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_stringliteral_42fa07d7c51ce5de92a0fc65dbf7e7800814fd01c258dc50e84d5be59184bf0b","typeString":"literal_string \"  Expected\""},{"typeIdentifier":"t_address","typeString":"address"}],"id":59714,"name":"log_named_address","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":59449,"src":"3768:17:148","typeDescriptions":{"typeIdentifier":"t_function_event_nonpayable$_t_string_memory_ptr_$_t_address_$returns$__$","typeString":"function (string memory,address)"}},"id":59717,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"3768:34:148","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":59718,"nodeType":"EmitStatement","src":"3763:39:148"},{"eventCall":{"arguments":[{"hexValue":"2020202041637475616c","id":59720,"isConstant":false,"isLValue":false,"isPure":true,"kind":"string","lValueRequested":false,"nodeType":"Literal","src":"3839:12:148","typeDescriptions":{"typeIdentifier":"t_stringliteral_d7896f3f645b3ba89da46bf231a5df16e525e587a84bc9b284dfb39958fb219b","typeString":"literal_string \"    Actual\""},"value":"    Actual"},{"id":59721,"name":"a","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":59702,"src":"3853:1:148","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_stringliteral_d7896f3f645b3ba89da46bf231a5df16e525e587a84bc9b284dfb39958fb219b","typeString":"literal_string \"    Actual\""},{"typeIdentifier":"t_address","typeString":"address"}],"id":59719,"name":"log_named_address","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":59449,"src":"3821:17:148","typeDescriptions":{"typeIdentifier":"t_function_event_nonpayable$_t_string_memory_ptr_$_t_address_$returns$__$","typeString":"function (string memory,address)"}},"id":59722,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"3821:34:148","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":59723,"nodeType":"EmitStatement","src":"3816:39:148"},{"expression":{"arguments":[],"expression":{"argumentTypes":[],"id":59724,"name":"fail","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":59626,"src":"3869:4:148","typeDescriptions":{"typeIdentifier":"t_function_internal_nonpayable$__$returns$__$","typeString":"function ()"}},"id":59725,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"3869:6:148","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":59726,"nodeType":"ExpressionStatement","src":"3869:6:148"}]}}]},"implemented":true,"kind":"function","modifiers":[],"name":"assertEq","nameLocation":"3624:8:148","parameters":{"id":59705,"nodeType":"ParameterList","parameters":[{"constant":false,"id":59702,"mutability":"mutable","name":"a","nameLocation":"3641:1:148","nodeType":"VariableDeclaration","scope":59730,"src":"3633:9:148","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":59701,"name":"address","nodeType":"ElementaryTypeName","src":"3633:7:148","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":59704,"mutability":"mutable","name":"b","nameLocation":"3652:1:148","nodeType":"VariableDeclaration","scope":59730,"src":"3644:9:148","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":59703,"name":"address","nodeType":"ElementaryTypeName","src":"3644:7:148","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"src":"3632:22:148"},"returnParameters":{"id":59706,"nodeType":"ParameterList","parameters":[],"src":"3664:0:148"},"scope":61196,"stateMutability":"nonpayable","virtual":false,"visibility":"internal"},{"id":59755,"nodeType":"FunctionDefinition","src":"3897:185:148","nodes":[],"body":{"id":59754,"nodeType":"Block","src":"3965:117:148","nodes":[],"statements":[{"condition":{"commonType":{"typeIdentifier":"t_address","typeString":"address"},"id":59741,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":59739,"name":"a","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":59732,"src":"3979:1:148","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"BinaryOperation","operator":"!=","rightExpression":{"id":59740,"name":"b","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":59734,"src":"3984:1:148","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"src":"3979:6:148","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":59753,"nodeType":"IfStatement","src":"3975:101:148","trueBody":{"id":59752,"nodeType":"Block","src":"3987:89:148","statements":[{"eventCall":{"arguments":[{"hexValue":"4572726f72","id":59743,"isConstant":false,"isLValue":false,"isPure":true,"kind":"string","lValueRequested":false,"nodeType":"Literal","src":"4024:7:148","typeDescriptions":{"typeIdentifier":"t_stringliteral_e342daa49723ff3485f4ff5f755a17b8bc9c3c33bbd312ceee37c94eebfe45c1","typeString":"literal_string \"Error\""},"value":"Error"},{"id":59744,"name":"err","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":59736,"src":"4033:3:148","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":59742,"name":"log_named_string","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":59495,"src":"4006:16:148","typeDescriptions":{"typeIdentifier":"t_function_event_nonpayable$_t_string_memory_ptr_$_t_string_memory_ptr_$returns$__$","typeString":"function (string memory,string memory)"}},"id":59745,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"4006:31:148","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":59746,"nodeType":"EmitStatement","src":"4001:36:148"},{"expression":{"arguments":[{"id":59748,"name":"a","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":59732,"src":"4060:1:148","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"id":59749,"name":"b","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":59734,"src":"4063:1:148","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"},{"typeIdentifier":"t_address","typeString":"address"}],"id":59747,"name":"assertEq","nodeType":"Identifier","overloadedDeclarations":[59730,59755,59785,59810,59869,59894,59924,59949,61049,61084],"referencedDeclaration":59730,"src":"4051:8:148","typeDescriptions":{"typeIdentifier":"t_function_internal_nonpayable$_t_address_$_t_address_$returns$__$","typeString":"function (address,address)"}},"id":59750,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"4051:14:148","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":59751,"nodeType":"ExpressionStatement","src":"4051:14:148"}]}}]},"implemented":true,"kind":"function","modifiers":[],"name":"assertEq","nameLocation":"3906:8:148","parameters":{"id":59737,"nodeType":"ParameterList","parameters":[{"constant":false,"id":59732,"mutability":"mutable","name":"a","nameLocation":"3923:1:148","nodeType":"VariableDeclaration","scope":59755,"src":"3915:9:148","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":59731,"name":"address","nodeType":"ElementaryTypeName","src":"3915:7:148","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":59734,"mutability":"mutable","name":"b","nameLocation":"3934:1:148","nodeType":"VariableDeclaration","scope":59755,"src":"3926:9:148","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":59733,"name":"address","nodeType":"ElementaryTypeName","src":"3926:7:148","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":59736,"mutability":"mutable","name":"err","nameLocation":"3951:3:148","nodeType":"VariableDeclaration","scope":59755,"src":"3937:17:148","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_string_memory_ptr","typeString":"string"},"typeName":{"id":59735,"name":"string","nodeType":"ElementaryTypeName","src":"3937:6:148","typeDescriptions":{"typeIdentifier":"t_string_storage_ptr","typeString":"string"}},"visibility":"internal"}],"src":"3914:41:148"},"returnParameters":{"id":59738,"nodeType":"ParameterList","parameters":[],"src":"3965:0:148"},"scope":61196,"stateMutability":"nonpayable","virtual":false,"visibility":"internal"},{"id":59785,"nodeType":"FunctionDefinition","src":"4088:277:148","nodes":[],"body":{"id":59784,"nodeType":"Block","src":"4137:228:148","nodes":[],"statements":[{"condition":{"commonType":{"typeIdentifier":"t_bytes32","typeString":"bytes32"},"id":59764,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":59762,"name":"a","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":59757,"src":"4151:1:148","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"nodeType":"BinaryOperation","operator":"!=","rightExpression":{"id":59763,"name":"b","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":59759,"src":"4156:1:148","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"src":"4151:6:148","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":59783,"nodeType":"IfStatement","src":"4147:212:148","trueBody":{"id":59782,"nodeType":"Block","src":"4159:200:148","statements":[{"eventCall":{"arguments":[{"hexValue":"4572726f723a2061203d3d2062206e6f7420736174697366696564205b627974657333325d","id":59766,"isConstant":false,"isLValue":false,"isPure":true,"kind":"string","lValueRequested":false,"nodeType":"Literal","src":"4182:39:148","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":59765,"name":"log","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":59415,"src":"4178:3:148","typeDescriptions":{"typeIdentifier":"t_function_event_nonpayable$_t_string_memory_ptr_$returns$__$","typeString":"function (string memory)"}},"id":59767,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"4178:44:148","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":59768,"nodeType":"EmitStatement","src":"4173:49:148"},{"eventCall":{"arguments":[{"hexValue":"20204578706563746564","id":59770,"isConstant":false,"isLValue":false,"isPure":true,"kind":"string","lValueRequested":false,"nodeType":"Literal","src":"4259:12:148","typeDescriptions":{"typeIdentifier":"t_stringliteral_42fa07d7c51ce5de92a0fc65dbf7e7800814fd01c258dc50e84d5be59184bf0b","typeString":"literal_string \"  Expected\""},"value":"  Expected"},{"id":59771,"name":"b","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":59759,"src":"4273:1:148","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_stringliteral_42fa07d7c51ce5de92a0fc65dbf7e7800814fd01c258dc50e84d5be59184bf0b","typeString":"literal_string \"  Expected\""},{"typeIdentifier":"t_bytes32","typeString":"bytes32"}],"id":59769,"name":"log_named_bytes32","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":59455,"src":"4241:17:148","typeDescriptions":{"typeIdentifier":"t_function_event_nonpayable$_t_string_memory_ptr_$_t_bytes32_$returns$__$","typeString":"function (string memory,bytes32)"}},"id":59772,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"4241:34:148","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":59773,"nodeType":"EmitStatement","src":"4236:39:148"},{"eventCall":{"arguments":[{"hexValue":"2020202041637475616c","id":59775,"isConstant":false,"isLValue":false,"isPure":true,"kind":"string","lValueRequested":false,"nodeType":"Literal","src":"4312:12:148","typeDescriptions":{"typeIdentifier":"t_stringliteral_d7896f3f645b3ba89da46bf231a5df16e525e587a84bc9b284dfb39958fb219b","typeString":"literal_string \"    Actual\""},"value":"    Actual"},{"id":59776,"name":"a","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":59757,"src":"4326:1:148","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_stringliteral_d7896f3f645b3ba89da46bf231a5df16e525e587a84bc9b284dfb39958fb219b","typeString":"literal_string \"    Actual\""},{"typeIdentifier":"t_bytes32","typeString":"bytes32"}],"id":59774,"name":"log_named_bytes32","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":59455,"src":"4294:17:148","typeDescriptions":{"typeIdentifier":"t_function_event_nonpayable$_t_string_memory_ptr_$_t_bytes32_$returns$__$","typeString":"function (string memory,bytes32)"}},"id":59777,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"4294:34:148","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":59778,"nodeType":"EmitStatement","src":"4289:39:148"},{"expression":{"arguments":[],"expression":{"argumentTypes":[],"id":59779,"name":"fail","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":59626,"src":"4342:4:148","typeDescriptions":{"typeIdentifier":"t_function_internal_nonpayable$__$returns$__$","typeString":"function ()"}},"id":59780,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"4342:6:148","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":59781,"nodeType":"ExpressionStatement","src":"4342:6:148"}]}}]},"implemented":true,"kind":"function","modifiers":[],"name":"assertEq","nameLocation":"4097:8:148","parameters":{"id":59760,"nodeType":"ParameterList","parameters":[{"constant":false,"id":59757,"mutability":"mutable","name":"a","nameLocation":"4114:1:148","nodeType":"VariableDeclaration","scope":59785,"src":"4106:9:148","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"},"typeName":{"id":59756,"name":"bytes32","nodeType":"ElementaryTypeName","src":"4106:7:148","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"visibility":"internal"},{"constant":false,"id":59759,"mutability":"mutable","name":"b","nameLocation":"4125:1:148","nodeType":"VariableDeclaration","scope":59785,"src":"4117:9:148","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"},"typeName":{"id":59758,"name":"bytes32","nodeType":"ElementaryTypeName","src":"4117:7:148","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"visibility":"internal"}],"src":"4105:22:148"},"returnParameters":{"id":59761,"nodeType":"ParameterList","parameters":[],"src":"4137:0:148"},"scope":61196,"stateMutability":"nonpayable","virtual":false,"visibility":"internal"},{"id":59810,"nodeType":"FunctionDefinition","src":"4370:185:148","nodes":[],"body":{"id":59809,"nodeType":"Block","src":"4438:117:148","nodes":[],"statements":[{"condition":{"commonType":{"typeIdentifier":"t_bytes32","typeString":"bytes32"},"id":59796,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":59794,"name":"a","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":59787,"src":"4452:1:148","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"nodeType":"BinaryOperation","operator":"!=","rightExpression":{"id":59795,"name":"b","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":59789,"src":"4457:1:148","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"src":"4452:6:148","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":59808,"nodeType":"IfStatement","src":"4448:101:148","trueBody":{"id":59807,"nodeType":"Block","src":"4460:89:148","statements":[{"eventCall":{"arguments":[{"hexValue":"4572726f72","id":59798,"isConstant":false,"isLValue":false,"isPure":true,"kind":"string","lValueRequested":false,"nodeType":"Literal","src":"4497:7:148","typeDescriptions":{"typeIdentifier":"t_stringliteral_e342daa49723ff3485f4ff5f755a17b8bc9c3c33bbd312ceee37c94eebfe45c1","typeString":"literal_string \"Error\""},"value":"Error"},{"id":59799,"name":"err","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":59791,"src":"4506:3:148","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":59797,"name":"log_named_string","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":59495,"src":"4479:16:148","typeDescriptions":{"typeIdentifier":"t_function_event_nonpayable$_t_string_memory_ptr_$_t_string_memory_ptr_$returns$__$","typeString":"function (string memory,string memory)"}},"id":59800,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"4479:31:148","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":59801,"nodeType":"EmitStatement","src":"4474:36:148"},{"expression":{"arguments":[{"id":59803,"name":"a","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":59787,"src":"4533:1:148","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},{"id":59804,"name":"b","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":59789,"src":"4536:1:148","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_bytes32","typeString":"bytes32"},{"typeIdentifier":"t_bytes32","typeString":"bytes32"}],"id":59802,"name":"assertEq","nodeType":"Identifier","overloadedDeclarations":[59730,59755,59785,59810,59869,59894,59924,59949,61049,61084],"referencedDeclaration":59785,"src":"4524:8:148","typeDescriptions":{"typeIdentifier":"t_function_internal_nonpayable$_t_bytes32_$_t_bytes32_$returns$__$","typeString":"function (bytes32,bytes32)"}},"id":59805,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"4524:14:148","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":59806,"nodeType":"ExpressionStatement","src":"4524:14:148"}]}}]},"implemented":true,"kind":"function","modifiers":[],"name":"assertEq","nameLocation":"4379:8:148","parameters":{"id":59792,"nodeType":"ParameterList","parameters":[{"constant":false,"id":59787,"mutability":"mutable","name":"a","nameLocation":"4396:1:148","nodeType":"VariableDeclaration","scope":59810,"src":"4388:9:148","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"},"typeName":{"id":59786,"name":"bytes32","nodeType":"ElementaryTypeName","src":"4388:7:148","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"visibility":"internal"},{"constant":false,"id":59789,"mutability":"mutable","name":"b","nameLocation":"4407:1:148","nodeType":"VariableDeclaration","scope":59810,"src":"4399:9:148","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"},"typeName":{"id":59788,"name":"bytes32","nodeType":"ElementaryTypeName","src":"4399:7:148","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"visibility":"internal"},{"constant":false,"id":59791,"mutability":"mutable","name":"err","nameLocation":"4424:3:148","nodeType":"VariableDeclaration","scope":59810,"src":"4410:17:148","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_string_memory_ptr","typeString":"string"},"typeName":{"id":59790,"name":"string","nodeType":"ElementaryTypeName","src":"4410:6:148","typeDescriptions":{"typeIdentifier":"t_string_storage_ptr","typeString":"string"}},"visibility":"internal"}],"src":"4387:41:148"},"returnParameters":{"id":59793,"nodeType":"ParameterList","parameters":[],"src":"4438:0:148"},"scope":61196,"stateMutability":"nonpayable","virtual":false,"visibility":"internal"},{"id":59823,"nodeType":"FunctionDefinition","src":"4560:82:148","nodes":[],"body":{"id":59822,"nodeType":"Block","src":"4611:31:148","nodes":[],"statements":[{"expression":{"arguments":[{"id":59818,"name":"a","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":59812,"src":"4630:1:148","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},{"id":59819,"name":"b","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":59814,"src":"4633:1:148","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_bytes32","typeString":"bytes32"},{"typeIdentifier":"t_bytes32","typeString":"bytes32"}],"id":59817,"name":"assertEq","nodeType":"Identifier","overloadedDeclarations":[59730,59755,59785,59810,59869,59894,59924,59949,61049,61084],"referencedDeclaration":59785,"src":"4621:8:148","typeDescriptions":{"typeIdentifier":"t_function_internal_nonpayable$_t_bytes32_$_t_bytes32_$returns$__$","typeString":"function (bytes32,bytes32)"}},"id":59820,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"4621:14:148","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":59821,"nodeType":"ExpressionStatement","src":"4621:14:148"}]},"implemented":true,"kind":"function","modifiers":[],"name":"assertEq32","nameLocation":"4569:10:148","parameters":{"id":59815,"nodeType":"ParameterList","parameters":[{"constant":false,"id":59812,"mutability":"mutable","name":"a","nameLocation":"4588:1:148","nodeType":"VariableDeclaration","scope":59823,"src":"4580:9:148","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"},"typeName":{"id":59811,"name":"bytes32","nodeType":"ElementaryTypeName","src":"4580:7:148","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"visibility":"internal"},{"constant":false,"id":59814,"mutability":"mutable","name":"b","nameLocation":"4599:1:148","nodeType":"VariableDeclaration","scope":59823,"src":"4591:9:148","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"},"typeName":{"id":59813,"name":"bytes32","nodeType":"ElementaryTypeName","src":"4591:7:148","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"visibility":"internal"}],"src":"4579:22:148"},"returnParameters":{"id":59816,"nodeType":"ParameterList","parameters":[],"src":"4611:0:148"},"scope":61196,"stateMutability":"nonpayable","virtual":false,"visibility":"internal"},{"id":59839,"nodeType":"FunctionDefinition","src":"4647:106:148","nodes":[],"body":{"id":59838,"nodeType":"Block","src":"4717:36:148","nodes":[],"statements":[{"expression":{"arguments":[{"id":59833,"name":"a","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":59825,"src":"4736:1:148","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},{"id":59834,"name":"b","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":59827,"src":"4739:1:148","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},{"id":59835,"name":"err","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":59829,"src":"4742:3:148","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":59832,"name":"assertEq","nodeType":"Identifier","overloadedDeclarations":[59730,59755,59785,59810,59869,59894,59924,59949,61049,61084],"referencedDeclaration":59810,"src":"4727:8:148","typeDescriptions":{"typeIdentifier":"t_function_internal_nonpayable$_t_bytes32_$_t_bytes32_$_t_string_memory_ptr_$returns$__$","typeString":"function (bytes32,bytes32,string memory)"}},"id":59836,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"4727:19:148","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":59837,"nodeType":"ExpressionStatement","src":"4727:19:148"}]},"implemented":true,"kind":"function","modifiers":[],"name":"assertEq32","nameLocation":"4656:10:148","parameters":{"id":59830,"nodeType":"ParameterList","parameters":[{"constant":false,"id":59825,"mutability":"mutable","name":"a","nameLocation":"4675:1:148","nodeType":"VariableDeclaration","scope":59839,"src":"4667:9:148","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"},"typeName":{"id":59824,"name":"bytes32","nodeType":"ElementaryTypeName","src":"4667:7:148","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"visibility":"internal"},{"constant":false,"id":59827,"mutability":"mutable","name":"b","nameLocation":"4686:1:148","nodeType":"VariableDeclaration","scope":59839,"src":"4678:9:148","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"},"typeName":{"id":59826,"name":"bytes32","nodeType":"ElementaryTypeName","src":"4678:7:148","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"visibility":"internal"},{"constant":false,"id":59829,"mutability":"mutable","name":"err","nameLocation":"4703:3:148","nodeType":"VariableDeclaration","scope":59839,"src":"4689:17:148","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_string_memory_ptr","typeString":"string"},"typeName":{"id":59828,"name":"string","nodeType":"ElementaryTypeName","src":"4689:6:148","typeDescriptions":{"typeIdentifier":"t_string_storage_ptr","typeString":"string"}},"visibility":"internal"}],"src":"4666:41:148"},"returnParameters":{"id":59831,"nodeType":"ParameterList","parameters":[],"src":"4717:0:148"},"scope":61196,"stateMutability":"nonpayable","virtual":false,"visibility":"internal"},{"id":59869,"nodeType":"FunctionDefinition","src":"4759:257:148","nodes":[],"body":{"id":59868,"nodeType":"Block","src":"4800:216:148","nodes":[],"statements":[{"condition":{"commonType":{"typeIdentifier":"t_int256","typeString":"int256"},"id":59848,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":59846,"name":"a","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":59841,"src":"4814:1:148","typeDescriptions":{"typeIdentifier":"t_int256","typeString":"int256"}},"nodeType":"BinaryOperation","operator":"!=","rightExpression":{"id":59847,"name":"b","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":59843,"src":"4819:1:148","typeDescriptions":{"typeIdentifier":"t_int256","typeString":"int256"}},"src":"4814:6:148","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":59867,"nodeType":"IfStatement","src":"4810:200:148","trueBody":{"id":59866,"nodeType":"Block","src":"4822:188:148","statements":[{"eventCall":{"arguments":[{"hexValue":"4572726f723a2061203d3d2062206e6f7420736174697366696564205b696e745d","id":59850,"isConstant":false,"isLValue":false,"isPure":true,"kind":"string","lValueRequested":false,"nodeType":"Literal","src":"4845:35:148","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":59849,"name":"log","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":59415,"src":"4841:3:148","typeDescriptions":{"typeIdentifier":"t_function_event_nonpayable$_t_string_memory_ptr_$returns$__$","typeString":"function (string memory)"}},"id":59851,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"4841:40:148","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":59852,"nodeType":"EmitStatement","src":"4836:45:148"},{"eventCall":{"arguments":[{"hexValue":"20204578706563746564","id":59854,"isConstant":false,"isLValue":false,"isPure":true,"kind":"string","lValueRequested":false,"nodeType":"Literal","src":"4914:12:148","typeDescriptions":{"typeIdentifier":"t_stringliteral_42fa07d7c51ce5de92a0fc65dbf7e7800814fd01c258dc50e84d5be59184bf0b","typeString":"literal_string \"  Expected\""},"value":"  Expected"},{"id":59855,"name":"b","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":59843,"src":"4928:1:148","typeDescriptions":{"typeIdentifier":"t_int256","typeString":"int256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_stringliteral_42fa07d7c51ce5de92a0fc65dbf7e7800814fd01c258dc50e84d5be59184bf0b","typeString":"literal_string \"  Expected\""},{"typeIdentifier":"t_int256","typeString":"int256"}],"id":59853,"name":"log_named_int","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":59477,"src":"4900:13:148","typeDescriptions":{"typeIdentifier":"t_function_event_nonpayable$_t_string_memory_ptr_$_t_int256_$returns$__$","typeString":"function (string memory,int256)"}},"id":59856,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"4900:30:148","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":59857,"nodeType":"EmitStatement","src":"4895:35:148"},{"eventCall":{"arguments":[{"hexValue":"2020202041637475616c","id":59859,"isConstant":false,"isLValue":false,"isPure":true,"kind":"string","lValueRequested":false,"nodeType":"Literal","src":"4963:12:148","typeDescriptions":{"typeIdentifier":"t_stringliteral_d7896f3f645b3ba89da46bf231a5df16e525e587a84bc9b284dfb39958fb219b","typeString":"literal_string \"    Actual\""},"value":"    Actual"},{"id":59860,"name":"a","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":59841,"src":"4977:1:148","typeDescriptions":{"typeIdentifier":"t_int256","typeString":"int256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_stringliteral_d7896f3f645b3ba89da46bf231a5df16e525e587a84bc9b284dfb39958fb219b","typeString":"literal_string \"    Actual\""},{"typeIdentifier":"t_int256","typeString":"int256"}],"id":59858,"name":"log_named_int","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":59477,"src":"4949:13:148","typeDescriptions":{"typeIdentifier":"t_function_event_nonpayable$_t_string_memory_ptr_$_t_int256_$returns$__$","typeString":"function (string memory,int256)"}},"id":59861,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"4949:30:148","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":59862,"nodeType":"EmitStatement","src":"4944:35:148"},{"expression":{"arguments":[],"expression":{"argumentTypes":[],"id":59863,"name":"fail","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":59626,"src":"4993:4:148","typeDescriptions":{"typeIdentifier":"t_function_internal_nonpayable$__$returns$__$","typeString":"function ()"}},"id":59864,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"4993:6:148","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":59865,"nodeType":"ExpressionStatement","src":"4993:6:148"}]}}]},"implemented":true,"kind":"function","modifiers":[],"name":"assertEq","nameLocation":"4768:8:148","parameters":{"id":59844,"nodeType":"ParameterList","parameters":[{"constant":false,"id":59841,"mutability":"mutable","name":"a","nameLocation":"4781:1:148","nodeType":"VariableDeclaration","scope":59869,"src":"4777:5:148","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_int256","typeString":"int256"},"typeName":{"id":59840,"name":"int","nodeType":"ElementaryTypeName","src":"4777:3:148","typeDescriptions":{"typeIdentifier":"t_int256","typeString":"int256"}},"visibility":"internal"},{"constant":false,"id":59843,"mutability":"mutable","name":"b","nameLocation":"4788:1:148","nodeType":"VariableDeclaration","scope":59869,"src":"4784:5:148","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_int256","typeString":"int256"},"typeName":{"id":59842,"name":"int","nodeType":"ElementaryTypeName","src":"4784:3:148","typeDescriptions":{"typeIdentifier":"t_int256","typeString":"int256"}},"visibility":"internal"}],"src":"4776:14:148"},"returnParameters":{"id":59845,"nodeType":"ParameterList","parameters":[],"src":"4800:0:148"},"scope":61196,"stateMutability":"nonpayable","virtual":false,"visibility":"internal"},{"id":59894,"nodeType":"FunctionDefinition","src":"5021:176:148","nodes":[],"body":{"id":59893,"nodeType":"Block","src":"5081:116:148","nodes":[],"statements":[{"condition":{"commonType":{"typeIdentifier":"t_int256","typeString":"int256"},"id":59880,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":59878,"name":"a","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":59871,"src":"5095:1:148","typeDescriptions":{"typeIdentifier":"t_int256","typeString":"int256"}},"nodeType":"BinaryOperation","operator":"!=","rightExpression":{"id":59879,"name":"b","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":59873,"src":"5100:1:148","typeDescriptions":{"typeIdentifier":"t_int256","typeString":"int256"}},"src":"5095:6:148","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":59892,"nodeType":"IfStatement","src":"5091:100:148","trueBody":{"id":59891,"nodeType":"Block","src":"5103:88:148","statements":[{"eventCall":{"arguments":[{"hexValue":"4572726f72","id":59882,"isConstant":false,"isLValue":false,"isPure":true,"kind":"string","lValueRequested":false,"nodeType":"Literal","src":"5139:7:148","typeDescriptions":{"typeIdentifier":"t_stringliteral_e342daa49723ff3485f4ff5f755a17b8bc9c3c33bbd312ceee37c94eebfe45c1","typeString":"literal_string \"Error\""},"value":"Error"},{"id":59883,"name":"err","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":59875,"src":"5148:3:148","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":59881,"name":"log_named_string","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":59495,"src":"5122:16:148","typeDescriptions":{"typeIdentifier":"t_function_event_nonpayable$_t_string_memory_ptr_$_t_string_memory_ptr_$returns$__$","typeString":"function (string memory,string memory)"}},"id":59884,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"5122:30:148","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":59885,"nodeType":"EmitStatement","src":"5117:35:148"},{"expression":{"arguments":[{"id":59887,"name":"a","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":59871,"src":"5175:1:148","typeDescriptions":{"typeIdentifier":"t_int256","typeString":"int256"}},{"id":59888,"name":"b","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":59873,"src":"5178:1:148","typeDescriptions":{"typeIdentifier":"t_int256","typeString":"int256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_int256","typeString":"int256"},{"typeIdentifier":"t_int256","typeString":"int256"}],"id":59886,"name":"assertEq","nodeType":"Identifier","overloadedDeclarations":[59730,59755,59785,59810,59869,59894,59924,59949,61049,61084],"referencedDeclaration":59869,"src":"5166:8:148","typeDescriptions":{"typeIdentifier":"t_function_internal_nonpayable$_t_int256_$_t_int256_$returns$__$","typeString":"function (int256,int256)"}},"id":59889,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"5166:14:148","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":59890,"nodeType":"ExpressionStatement","src":"5166:14:148"}]}}]},"implemented":true,"kind":"function","modifiers":[],"name":"assertEq","nameLocation":"5030:8:148","parameters":{"id":59876,"nodeType":"ParameterList","parameters":[{"constant":false,"id":59871,"mutability":"mutable","name":"a","nameLocation":"5043:1:148","nodeType":"VariableDeclaration","scope":59894,"src":"5039:5:148","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_int256","typeString":"int256"},"typeName":{"id":59870,"name":"int","nodeType":"ElementaryTypeName","src":"5039:3:148","typeDescriptions":{"typeIdentifier":"t_int256","typeString":"int256"}},"visibility":"internal"},{"constant":false,"id":59873,"mutability":"mutable","name":"b","nameLocation":"5050:1:148","nodeType":"VariableDeclaration","scope":59894,"src":"5046:5:148","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_int256","typeString":"int256"},"typeName":{"id":59872,"name":"int","nodeType":"ElementaryTypeName","src":"5046:3:148","typeDescriptions":{"typeIdentifier":"t_int256","typeString":"int256"}},"visibility":"internal"},{"constant":false,"id":59875,"mutability":"mutable","name":"err","nameLocation":"5067:3:148","nodeType":"VariableDeclaration","scope":59894,"src":"5053:17:148","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_string_memory_ptr","typeString":"string"},"typeName":{"id":59874,"name":"string","nodeType":"ElementaryTypeName","src":"5053:6:148","typeDescriptions":{"typeIdentifier":"t_string_storage_ptr","typeString":"string"}},"visibility":"internal"}],"src":"5038:33:148"},"returnParameters":{"id":59877,"nodeType":"ParameterList","parameters":[],"src":"5081:0:148"},"scope":61196,"stateMutability":"nonpayable","virtual":false,"visibility":"internal"},{"id":59924,"nodeType":"FunctionDefinition","src":"5202:262:148","nodes":[],"body":{"id":59923,"nodeType":"Block","src":"5245:219:148","nodes":[],"statements":[{"condition":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":59903,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":59901,"name":"a","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":59896,"src":"5259:1:148","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"!=","rightExpression":{"id":59902,"name":"b","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":59898,"src":"5264:1:148","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"5259:6:148","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":59922,"nodeType":"IfStatement","src":"5255:203:148","trueBody":{"id":59921,"nodeType":"Block","src":"5267:191:148","statements":[{"eventCall":{"arguments":[{"hexValue":"4572726f723a2061203d3d2062206e6f7420736174697366696564205b75696e745d","id":59905,"isConstant":false,"isLValue":false,"isPure":true,"kind":"string","lValueRequested":false,"nodeType":"Literal","src":"5290:36:148","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":59904,"name":"log","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":59415,"src":"5286:3:148","typeDescriptions":{"typeIdentifier":"t_function_event_nonpayable$_t_string_memory_ptr_$returns$__$","typeString":"function (string memory)"}},"id":59906,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"5286:41:148","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":59907,"nodeType":"EmitStatement","src":"5281:46:148"},{"eventCall":{"arguments":[{"hexValue":"20204578706563746564","id":59909,"isConstant":false,"isLValue":false,"isPure":true,"kind":"string","lValueRequested":false,"nodeType":"Literal","src":"5361:12:148","typeDescriptions":{"typeIdentifier":"t_stringliteral_42fa07d7c51ce5de92a0fc65dbf7e7800814fd01c258dc50e84d5be59184bf0b","typeString":"literal_string \"  Expected\""},"value":"  Expected"},{"id":59910,"name":"b","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":59898,"src":"5375:1:148","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_stringliteral_42fa07d7c51ce5de92a0fc65dbf7e7800814fd01c258dc50e84d5be59184bf0b","typeString":"literal_string \"  Expected\""},{"typeIdentifier":"t_uint256","typeString":"uint256"}],"id":59908,"name":"log_named_uint","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":59483,"src":"5346:14:148","typeDescriptions":{"typeIdentifier":"t_function_event_nonpayable$_t_string_memory_ptr_$_t_uint256_$returns$__$","typeString":"function (string memory,uint256)"}},"id":59911,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"5346:31:148","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":59912,"nodeType":"EmitStatement","src":"5341:36:148"},{"eventCall":{"arguments":[{"hexValue":"2020202041637475616c","id":59914,"isConstant":false,"isLValue":false,"isPure":true,"kind":"string","lValueRequested":false,"nodeType":"Literal","src":"5411:12:148","typeDescriptions":{"typeIdentifier":"t_stringliteral_d7896f3f645b3ba89da46bf231a5df16e525e587a84bc9b284dfb39958fb219b","typeString":"literal_string \"    Actual\""},"value":"    Actual"},{"id":59915,"name":"a","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":59896,"src":"5425:1:148","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_stringliteral_d7896f3f645b3ba89da46bf231a5df16e525e587a84bc9b284dfb39958fb219b","typeString":"literal_string \"    Actual\""},{"typeIdentifier":"t_uint256","typeString":"uint256"}],"id":59913,"name":"log_named_uint","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":59483,"src":"5396:14:148","typeDescriptions":{"typeIdentifier":"t_function_event_nonpayable$_t_string_memory_ptr_$_t_uint256_$returns$__$","typeString":"function (string memory,uint256)"}},"id":59916,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"5396:31:148","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":59917,"nodeType":"EmitStatement","src":"5391:36:148"},{"expression":{"arguments":[],"expression":{"argumentTypes":[],"id":59918,"name":"fail","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":59626,"src":"5441:4:148","typeDescriptions":{"typeIdentifier":"t_function_internal_nonpayable$__$returns$__$","typeString":"function ()"}},"id":59919,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"5441:6:148","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":59920,"nodeType":"ExpressionStatement","src":"5441:6:148"}]}}]},"implemented":true,"kind":"function","modifiers":[],"name":"assertEq","nameLocation":"5211:8:148","parameters":{"id":59899,"nodeType":"ParameterList","parameters":[{"constant":false,"id":59896,"mutability":"mutable","name":"a","nameLocation":"5225:1:148","nodeType":"VariableDeclaration","scope":59924,"src":"5220:6:148","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":59895,"name":"uint","nodeType":"ElementaryTypeName","src":"5220:4:148","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":59898,"mutability":"mutable","name":"b","nameLocation":"5233:1:148","nodeType":"VariableDeclaration","scope":59924,"src":"5228:6:148","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":59897,"name":"uint","nodeType":"ElementaryTypeName","src":"5228:4:148","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"5219:16:148"},"returnParameters":{"id":59900,"nodeType":"ParameterList","parameters":[],"src":"5245:0:148"},"scope":61196,"stateMutability":"nonpayable","virtual":false,"visibility":"internal"},{"id":59949,"nodeType":"FunctionDefinition","src":"5469:178:148","nodes":[],"body":{"id":59948,"nodeType":"Block","src":"5531:116:148","nodes":[],"statements":[{"condition":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":59935,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":59933,"name":"a","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":59926,"src":"5545:1:148","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"!=","rightExpression":{"id":59934,"name":"b","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":59928,"src":"5550:1:148","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"5545:6:148","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":59947,"nodeType":"IfStatement","src":"5541:100:148","trueBody":{"id":59946,"nodeType":"Block","src":"5553:88:148","statements":[{"eventCall":{"arguments":[{"hexValue":"4572726f72","id":59937,"isConstant":false,"isLValue":false,"isPure":true,"kind":"string","lValueRequested":false,"nodeType":"Literal","src":"5589:7:148","typeDescriptions":{"typeIdentifier":"t_stringliteral_e342daa49723ff3485f4ff5f755a17b8bc9c3c33bbd312ceee37c94eebfe45c1","typeString":"literal_string \"Error\""},"value":"Error"},{"id":59938,"name":"err","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":59930,"src":"5598:3:148","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":59936,"name":"log_named_string","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":59495,"src":"5572:16:148","typeDescriptions":{"typeIdentifier":"t_function_event_nonpayable$_t_string_memory_ptr_$_t_string_memory_ptr_$returns$__$","typeString":"function (string memory,string memory)"}},"id":59939,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"5572:30:148","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":59940,"nodeType":"EmitStatement","src":"5567:35:148"},{"expression":{"arguments":[{"id":59942,"name":"a","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":59926,"src":"5625:1:148","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},{"id":59943,"name":"b","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":59928,"src":"5628:1:148","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"},{"typeIdentifier":"t_uint256","typeString":"uint256"}],"id":59941,"name":"assertEq","nodeType":"Identifier","overloadedDeclarations":[59730,59755,59785,59810,59869,59894,59924,59949,61049,61084],"referencedDeclaration":59924,"src":"5616:8:148","typeDescriptions":{"typeIdentifier":"t_function_internal_nonpayable$_t_uint256_$_t_uint256_$returns$__$","typeString":"function (uint256,uint256)"}},"id":59944,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"5616:14:148","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":59945,"nodeType":"ExpressionStatement","src":"5616:14:148"}]}}]},"implemented":true,"kind":"function","modifiers":[],"name":"assertEq","nameLocation":"5478:8:148","parameters":{"id":59931,"nodeType":"ParameterList","parameters":[{"constant":false,"id":59926,"mutability":"mutable","name":"a","nameLocation":"5492:1:148","nodeType":"VariableDeclaration","scope":59949,"src":"5487:6:148","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":59925,"name":"uint","nodeType":"ElementaryTypeName","src":"5487:4:148","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":59928,"mutability":"mutable","name":"b","nameLocation":"5500:1:148","nodeType":"VariableDeclaration","scope":59949,"src":"5495:6:148","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":59927,"name":"uint","nodeType":"ElementaryTypeName","src":"5495:4:148","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":59930,"mutability":"mutable","name":"err","nameLocation":"5517:3:148","nodeType":"VariableDeclaration","scope":59949,"src":"5503:17:148","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_string_memory_ptr","typeString":"string"},"typeName":{"id":59929,"name":"string","nodeType":"ElementaryTypeName","src":"5503:6:148","typeDescriptions":{"typeIdentifier":"t_string_storage_ptr","typeString":"string"}},"visibility":"internal"}],"src":"5486:35:148"},"returnParameters":{"id":59932,"nodeType":"ParameterList","parameters":[],"src":"5531:0:148"},"scope":61196,"stateMutability":"nonpayable","virtual":false,"visibility":"internal"},{"id":59983,"nodeType":"FunctionDefinition","src":"5652:323:148","nodes":[],"body":{"id":59982,"nodeType":"Block","src":"5715:260:148","nodes":[],"statements":[{"condition":{"commonType":{"typeIdentifier":"t_int256","typeString":"int256"},"id":59960,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":59958,"name":"a","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":59951,"src":"5729:1:148","typeDescriptions":{"typeIdentifier":"t_int256","typeString":"int256"}},"nodeType":"BinaryOperation","operator":"!=","rightExpression":{"id":59959,"name":"b","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":59953,"src":"5734:1:148","typeDescriptions":{"typeIdentifier":"t_int256","typeString":"int256"}},"src":"5729:6:148","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":59981,"nodeType":"IfStatement","src":"5725:244:148","trueBody":{"id":59980,"nodeType":"Block","src":"5737:232:148","statements":[{"eventCall":{"arguments":[{"hexValue":"4572726f723a2061203d3d2062206e6f7420736174697366696564205b646563696d616c20696e745d","id":59962,"isConstant":false,"isLValue":false,"isPure":true,"kind":"string","lValueRequested":false,"nodeType":"Literal","src":"5760:43:148","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":59961,"name":"log","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":59415,"src":"5756:3:148","typeDescriptions":{"typeIdentifier":"t_function_event_nonpayable$_t_string_memory_ptr_$returns$__$","typeString":"function (string memory)"}},"id":59963,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"5756:48:148","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":59964,"nodeType":"EmitStatement","src":"5751:53:148"},{"eventCall":{"arguments":[{"hexValue":"20204578706563746564","id":59966,"isConstant":false,"isLValue":false,"isPure":true,"kind":"string","lValueRequested":false,"nodeType":"Literal","src":"5845:12:148","typeDescriptions":{"typeIdentifier":"t_stringliteral_42fa07d7c51ce5de92a0fc65dbf7e7800814fd01c258dc50e84d5be59184bf0b","typeString":"literal_string \"  Expected\""},"value":"  Expected"},{"id":59967,"name":"b","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":59953,"src":"5859:1:148","typeDescriptions":{"typeIdentifier":"t_int256","typeString":"int256"}},{"id":59968,"name":"decimals","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":59955,"src":"5862:8:148","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":59965,"name":"log_named_decimal_int","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":59463,"src":"5823:21:148","typeDescriptions":{"typeIdentifier":"t_function_event_nonpayable$_t_string_memory_ptr_$_t_int256_$_t_uint256_$returns$__$","typeString":"function (string memory,int256,uint256)"}},"id":59969,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"5823:48:148","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":59970,"nodeType":"EmitStatement","src":"5818:53:148"},{"eventCall":{"arguments":[{"hexValue":"2020202041637475616c","id":59972,"isConstant":false,"isLValue":false,"isPure":true,"kind":"string","lValueRequested":false,"nodeType":"Literal","src":"5912:12:148","typeDescriptions":{"typeIdentifier":"t_stringliteral_d7896f3f645b3ba89da46bf231a5df16e525e587a84bc9b284dfb39958fb219b","typeString":"literal_string \"    Actual\""},"value":"    Actual"},{"id":59973,"name":"a","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":59951,"src":"5926:1:148","typeDescriptions":{"typeIdentifier":"t_int256","typeString":"int256"}},{"id":59974,"name":"decimals","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":59955,"src":"5929:8:148","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":59971,"name":"log_named_decimal_int","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":59463,"src":"5890:21:148","typeDescriptions":{"typeIdentifier":"t_function_event_nonpayable$_t_string_memory_ptr_$_t_int256_$_t_uint256_$returns$__$","typeString":"function (string memory,int256,uint256)"}},"id":59975,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"5890:48:148","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":59976,"nodeType":"EmitStatement","src":"5885:53:148"},{"expression":{"arguments":[],"expression":{"argumentTypes":[],"id":59977,"name":"fail","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":59626,"src":"5952:4:148","typeDescriptions":{"typeIdentifier":"t_function_internal_nonpayable$__$returns$__$","typeString":"function ()"}},"id":59978,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"5952:6:148","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":59979,"nodeType":"ExpressionStatement","src":"5952:6:148"}]}}]},"implemented":true,"kind":"function","modifiers":[],"name":"assertEqDecimal","nameLocation":"5661:15:148","parameters":{"id":59956,"nodeType":"ParameterList","parameters":[{"constant":false,"id":59951,"mutability":"mutable","name":"a","nameLocation":"5681:1:148","nodeType":"VariableDeclaration","scope":59983,"src":"5677:5:148","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_int256","typeString":"int256"},"typeName":{"id":59950,"name":"int","nodeType":"ElementaryTypeName","src":"5677:3:148","typeDescriptions":{"typeIdentifier":"t_int256","typeString":"int256"}},"visibility":"internal"},{"constant":false,"id":59953,"mutability":"mutable","name":"b","nameLocation":"5688:1:148","nodeType":"VariableDeclaration","scope":59983,"src":"5684:5:148","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_int256","typeString":"int256"},"typeName":{"id":59952,"name":"int","nodeType":"ElementaryTypeName","src":"5684:3:148","typeDescriptions":{"typeIdentifier":"t_int256","typeString":"int256"}},"visibility":"internal"},{"constant":false,"id":59955,"mutability":"mutable","name":"decimals","nameLocation":"5696:8:148","nodeType":"VariableDeclaration","scope":59983,"src":"5691:13:148","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":59954,"name":"uint","nodeType":"ElementaryTypeName","src":"5691:4:148","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"5676:29:148"},"returnParameters":{"id":59957,"nodeType":"ParameterList","parameters":[],"src":"5715:0:148"},"scope":61196,"stateMutability":"nonpayable","virtual":false,"visibility":"internal"},{"id":60011,"nodeType":"FunctionDefinition","src":"5980:215:148","nodes":[],"body":{"id":60010,"nodeType":"Block","src":"6062:133:148","nodes":[],"statements":[{"condition":{"commonType":{"typeIdentifier":"t_int256","typeString":"int256"},"id":59996,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":59994,"name":"a","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":59985,"src":"6076:1:148","typeDescriptions":{"typeIdentifier":"t_int256","typeString":"int256"}},"nodeType":"BinaryOperation","operator":"!=","rightExpression":{"id":59995,"name":"b","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":59987,"src":"6081:1:148","typeDescriptions":{"typeIdentifier":"t_int256","typeString":"int256"}},"src":"6076:6:148","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":60009,"nodeType":"IfStatement","src":"6072:117:148","trueBody":{"id":60008,"nodeType":"Block","src":"6084:105:148","statements":[{"eventCall":{"arguments":[{"hexValue":"4572726f72","id":59998,"isConstant":false,"isLValue":false,"isPure":true,"kind":"string","lValueRequested":false,"nodeType":"Literal","src":"6120:7:148","typeDescriptions":{"typeIdentifier":"t_stringliteral_e342daa49723ff3485f4ff5f755a17b8bc9c3c33bbd312ceee37c94eebfe45c1","typeString":"literal_string \"Error\""},"value":"Error"},{"id":59999,"name":"err","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":59991,"src":"6129:3:148","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":59997,"name":"log_named_string","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":59495,"src":"6103:16:148","typeDescriptions":{"typeIdentifier":"t_function_event_nonpayable$_t_string_memory_ptr_$_t_string_memory_ptr_$returns$__$","typeString":"function (string memory,string memory)"}},"id":60000,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"6103:30:148","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":60001,"nodeType":"EmitStatement","src":"6098:35:148"},{"expression":{"arguments":[{"id":60003,"name":"a","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":59985,"src":"6163:1:148","typeDescriptions":{"typeIdentifier":"t_int256","typeString":"int256"}},{"id":60004,"name":"b","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":59987,"src":"6166:1:148","typeDescriptions":{"typeIdentifier":"t_int256","typeString":"int256"}},{"id":60005,"name":"decimals","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":59989,"src":"6169:8:148","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_int256","typeString":"int256"},{"typeIdentifier":"t_int256","typeString":"int256"},{"typeIdentifier":"t_uint256","typeString":"uint256"}],"id":60002,"name":"assertEqDecimal","nodeType":"Identifier","overloadedDeclarations":[59983,60011,60045,60073],"referencedDeclaration":59983,"src":"6147:15:148","typeDescriptions":{"typeIdentifier":"t_function_internal_nonpayable$_t_int256_$_t_int256_$_t_uint256_$returns$__$","typeString":"function (int256,int256,uint256)"}},"id":60006,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"6147:31:148","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":60007,"nodeType":"ExpressionStatement","src":"6147:31:148"}]}}]},"implemented":true,"kind":"function","modifiers":[],"name":"assertEqDecimal","nameLocation":"5989:15:148","parameters":{"id":59992,"nodeType":"ParameterList","parameters":[{"constant":false,"id":59985,"mutability":"mutable","name":"a","nameLocation":"6009:1:148","nodeType":"VariableDeclaration","scope":60011,"src":"6005:5:148","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_int256","typeString":"int256"},"typeName":{"id":59984,"name":"int","nodeType":"ElementaryTypeName","src":"6005:3:148","typeDescriptions":{"typeIdentifier":"t_int256","typeString":"int256"}},"visibility":"internal"},{"constant":false,"id":59987,"mutability":"mutable","name":"b","nameLocation":"6016:1:148","nodeType":"VariableDeclaration","scope":60011,"src":"6012:5:148","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_int256","typeString":"int256"},"typeName":{"id":59986,"name":"int","nodeType":"ElementaryTypeName","src":"6012:3:148","typeDescriptions":{"typeIdentifier":"t_int256","typeString":"int256"}},"visibility":"internal"},{"constant":false,"id":59989,"mutability":"mutable","name":"decimals","nameLocation":"6024:8:148","nodeType":"VariableDeclaration","scope":60011,"src":"6019:13:148","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":59988,"name":"uint","nodeType":"ElementaryTypeName","src":"6019:4:148","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":59991,"mutability":"mutable","name":"err","nameLocation":"6048:3:148","nodeType":"VariableDeclaration","scope":60011,"src":"6034:17:148","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_string_memory_ptr","typeString":"string"},"typeName":{"id":59990,"name":"string","nodeType":"ElementaryTypeName","src":"6034:6:148","typeDescriptions":{"typeIdentifier":"t_string_storage_ptr","typeString":"string"}},"visibility":"internal"}],"src":"6004:48:148"},"returnParameters":{"id":59993,"nodeType":"ParameterList","parameters":[],"src":"6062:0:148"},"scope":61196,"stateMutability":"nonpayable","virtual":false,"visibility":"internal"},{"id":60045,"nodeType":"FunctionDefinition","src":"6200:328:148","nodes":[],"body":{"id":60044,"nodeType":"Block","src":"6265:263:148","nodes":[],"statements":[{"condition":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":60022,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":60020,"name":"a","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":60013,"src":"6279:1:148","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"!=","rightExpression":{"id":60021,"name":"b","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":60015,"src":"6284:1:148","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"6279:6:148","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":60043,"nodeType":"IfStatement","src":"6275:247:148","trueBody":{"id":60042,"nodeType":"Block","src":"6287:235:148","statements":[{"eventCall":{"arguments":[{"hexValue":"4572726f723a2061203d3d2062206e6f7420736174697366696564205b646563696d616c2075696e745d","id":60024,"isConstant":false,"isLValue":false,"isPure":true,"kind":"string","lValueRequested":false,"nodeType":"Literal","src":"6310:44:148","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":60023,"name":"log","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":59415,"src":"6306:3:148","typeDescriptions":{"typeIdentifier":"t_function_event_nonpayable$_t_string_memory_ptr_$returns$__$","typeString":"function (string memory)"}},"id":60025,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"6306:49:148","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":60026,"nodeType":"EmitStatement","src":"6301:54:148"},{"eventCall":{"arguments":[{"hexValue":"20204578706563746564","id":60028,"isConstant":false,"isLValue":false,"isPure":true,"kind":"string","lValueRequested":false,"nodeType":"Literal","src":"6397:12:148","typeDescriptions":{"typeIdentifier":"t_stringliteral_42fa07d7c51ce5de92a0fc65dbf7e7800814fd01c258dc50e84d5be59184bf0b","typeString":"literal_string \"  Expected\""},"value":"  Expected"},{"id":60029,"name":"b","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":60015,"src":"6411:1:148","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},{"id":60030,"name":"decimals","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":60017,"src":"6414:8:148","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":60027,"name":"log_named_decimal_uint","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":59471,"src":"6374:22:148","typeDescriptions":{"typeIdentifier":"t_function_event_nonpayable$_t_string_memory_ptr_$_t_uint256_$_t_uint256_$returns$__$","typeString":"function (string memory,uint256,uint256)"}},"id":60031,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"6374:49:148","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":60032,"nodeType":"EmitStatement","src":"6369:54:148"},{"eventCall":{"arguments":[{"hexValue":"2020202041637475616c","id":60034,"isConstant":false,"isLValue":false,"isPure":true,"kind":"string","lValueRequested":false,"nodeType":"Literal","src":"6465:12:148","typeDescriptions":{"typeIdentifier":"t_stringliteral_d7896f3f645b3ba89da46bf231a5df16e525e587a84bc9b284dfb39958fb219b","typeString":"literal_string \"    Actual\""},"value":"    Actual"},{"id":60035,"name":"a","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":60013,"src":"6479:1:148","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},{"id":60036,"name":"decimals","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":60017,"src":"6482:8:148","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":60033,"name":"log_named_decimal_uint","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":59471,"src":"6442:22:148","typeDescriptions":{"typeIdentifier":"t_function_event_nonpayable$_t_string_memory_ptr_$_t_uint256_$_t_uint256_$returns$__$","typeString":"function (string memory,uint256,uint256)"}},"id":60037,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"6442:49:148","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":60038,"nodeType":"EmitStatement","src":"6437:54:148"},{"expression":{"arguments":[],"expression":{"argumentTypes":[],"id":60039,"name":"fail","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":59626,"src":"6505:4:148","typeDescriptions":{"typeIdentifier":"t_function_internal_nonpayable$__$returns$__$","typeString":"function ()"}},"id":60040,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"6505:6:148","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":60041,"nodeType":"ExpressionStatement","src":"6505:6:148"}]}}]},"implemented":true,"kind":"function","modifiers":[],"name":"assertEqDecimal","nameLocation":"6209:15:148","parameters":{"id":60018,"nodeType":"ParameterList","parameters":[{"constant":false,"id":60013,"mutability":"mutable","name":"a","nameLocation":"6230:1:148","nodeType":"VariableDeclaration","scope":60045,"src":"6225:6:148","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":60012,"name":"uint","nodeType":"ElementaryTypeName","src":"6225:4:148","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":60015,"mutability":"mutable","name":"b","nameLocation":"6238:1:148","nodeType":"VariableDeclaration","scope":60045,"src":"6233:6:148","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":60014,"name":"uint","nodeType":"ElementaryTypeName","src":"6233:4:148","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":60017,"mutability":"mutable","name":"decimals","nameLocation":"6246:8:148","nodeType":"VariableDeclaration","scope":60045,"src":"6241:13:148","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":60016,"name":"uint","nodeType":"ElementaryTypeName","src":"6241:4:148","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"6224:31:148"},"returnParameters":{"id":60019,"nodeType":"ParameterList","parameters":[],"src":"6265:0:148"},"scope":61196,"stateMutability":"nonpayable","virtual":false,"visibility":"internal"},{"id":60073,"nodeType":"FunctionDefinition","src":"6533:217:148","nodes":[],"body":{"id":60072,"nodeType":"Block","src":"6617:133:148","nodes":[],"statements":[{"condition":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":60058,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":60056,"name":"a","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":60047,"src":"6631:1:148","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"!=","rightExpression":{"id":60057,"name":"b","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":60049,"src":"6636:1:148","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"6631:6:148","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":60071,"nodeType":"IfStatement","src":"6627:117:148","trueBody":{"id":60070,"nodeType":"Block","src":"6639:105:148","statements":[{"eventCall":{"arguments":[{"hexValue":"4572726f72","id":60060,"isConstant":false,"isLValue":false,"isPure":true,"kind":"string","lValueRequested":false,"nodeType":"Literal","src":"6675:7:148","typeDescriptions":{"typeIdentifier":"t_stringliteral_e342daa49723ff3485f4ff5f755a17b8bc9c3c33bbd312ceee37c94eebfe45c1","typeString":"literal_string \"Error\""},"value":"Error"},{"id":60061,"name":"err","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":60053,"src":"6684:3:148","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":60059,"name":"log_named_string","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":59495,"src":"6658:16:148","typeDescriptions":{"typeIdentifier":"t_function_event_nonpayable$_t_string_memory_ptr_$_t_string_memory_ptr_$returns$__$","typeString":"function (string memory,string memory)"}},"id":60062,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"6658:30:148","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":60063,"nodeType":"EmitStatement","src":"6653:35:148"},{"expression":{"arguments":[{"id":60065,"name":"a","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":60047,"src":"6718:1:148","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},{"id":60066,"name":"b","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":60049,"src":"6721:1:148","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},{"id":60067,"name":"decimals","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":60051,"src":"6724:8:148","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"},{"typeIdentifier":"t_uint256","typeString":"uint256"},{"typeIdentifier":"t_uint256","typeString":"uint256"}],"id":60064,"name":"assertEqDecimal","nodeType":"Identifier","overloadedDeclarations":[59983,60011,60045,60073],"referencedDeclaration":60045,"src":"6702:15:148","typeDescriptions":{"typeIdentifier":"t_function_internal_nonpayable$_t_uint256_$_t_uint256_$_t_uint256_$returns$__$","typeString":"function (uint256,uint256,uint256)"}},"id":60068,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"6702:31:148","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":60069,"nodeType":"ExpressionStatement","src":"6702:31:148"}]}}]},"implemented":true,"kind":"function","modifiers":[],"name":"assertEqDecimal","nameLocation":"6542:15:148","parameters":{"id":60054,"nodeType":"ParameterList","parameters":[{"constant":false,"id":60047,"mutability":"mutable","name":"a","nameLocation":"6563:1:148","nodeType":"VariableDeclaration","scope":60073,"src":"6558:6:148","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":60046,"name":"uint","nodeType":"ElementaryTypeName","src":"6558:4:148","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":60049,"mutability":"mutable","name":"b","nameLocation":"6571:1:148","nodeType":"VariableDeclaration","scope":60073,"src":"6566:6:148","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":60048,"name":"uint","nodeType":"ElementaryTypeName","src":"6566:4:148","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":60051,"mutability":"mutable","name":"decimals","nameLocation":"6579:8:148","nodeType":"VariableDeclaration","scope":60073,"src":"6574:13:148","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":60050,"name":"uint","nodeType":"ElementaryTypeName","src":"6574:4:148","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":60053,"mutability":"mutable","name":"err","nameLocation":"6603:3:148","nodeType":"VariableDeclaration","scope":60073,"src":"6589:17:148","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_string_memory_ptr","typeString":"string"},"typeName":{"id":60052,"name":"string","nodeType":"ElementaryTypeName","src":"6589:6:148","typeDescriptions":{"typeIdentifier":"t_string_storage_ptr","typeString":"string"}},"visibility":"internal"}],"src":"6557:50:148"},"returnParameters":{"id":60055,"nodeType":"ParameterList","parameters":[],"src":"6617:0:148"},"scope":61196,"stateMutability":"nonpayable","virtual":false,"visibility":"internal"},{"id":60103,"nodeType":"FunctionDefinition","src":"6756:259:148","nodes":[],"body":{"id":60102,"nodeType":"Block","src":"6799:216:148","nodes":[],"statements":[{"condition":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":60082,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":60080,"name":"a","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":60075,"src":"6813:1:148","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"<=","rightExpression":{"id":60081,"name":"b","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":60077,"src":"6818:1:148","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"6813:6:148","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":60101,"nodeType":"IfStatement","src":"6809:200:148","trueBody":{"id":60100,"nodeType":"Block","src":"6821:188:148","statements":[{"eventCall":{"arguments":[{"hexValue":"4572726f723a2061203e2062206e6f7420736174697366696564205b75696e745d","id":60084,"isConstant":false,"isLValue":false,"isPure":true,"kind":"string","lValueRequested":false,"nodeType":"Literal","src":"6844:35:148","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":60083,"name":"log","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":59415,"src":"6840:3:148","typeDescriptions":{"typeIdentifier":"t_function_event_nonpayable$_t_string_memory_ptr_$returns$__$","typeString":"function (string memory)"}},"id":60085,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"6840:40:148","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":60086,"nodeType":"EmitStatement","src":"6835:45:148"},{"eventCall":{"arguments":[{"hexValue":"202056616c75652061","id":60088,"isConstant":false,"isLValue":false,"isPure":true,"kind":"string","lValueRequested":false,"nodeType":"Literal","src":"6914:11:148","typeDescriptions":{"typeIdentifier":"t_stringliteral_c592b529b874569f165479a5a4380dedf000796f11e04035f76bfa7310b31d26","typeString":"literal_string \"  Value a\""},"value":"  Value a"},{"id":60089,"name":"a","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":60075,"src":"6927:1:148","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_stringliteral_c592b529b874569f165479a5a4380dedf000796f11e04035f76bfa7310b31d26","typeString":"literal_string \"  Value a\""},{"typeIdentifier":"t_uint256","typeString":"uint256"}],"id":60087,"name":"log_named_uint","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":59483,"src":"6899:14:148","typeDescriptions":{"typeIdentifier":"t_function_event_nonpayable$_t_string_memory_ptr_$_t_uint256_$returns$__$","typeString":"function (string memory,uint256)"}},"id":60090,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"6899:30:148","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":60091,"nodeType":"EmitStatement","src":"6894:35:148"},{"eventCall":{"arguments":[{"hexValue":"202056616c75652062","id":60093,"isConstant":false,"isLValue":false,"isPure":true,"kind":"string","lValueRequested":false,"nodeType":"Literal","src":"6963:11:148","typeDescriptions":{"typeIdentifier":"t_stringliteral_e4b1d025132960c3fb1a582cf2366864dc416744d1b9770aa69fe3749623ebc3","typeString":"literal_string \"  Value b\""},"value":"  Value b"},{"id":60094,"name":"b","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":60077,"src":"6976:1:148","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_stringliteral_e4b1d025132960c3fb1a582cf2366864dc416744d1b9770aa69fe3749623ebc3","typeString":"literal_string \"  Value b\""},{"typeIdentifier":"t_uint256","typeString":"uint256"}],"id":60092,"name":"log_named_uint","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":59483,"src":"6948:14:148","typeDescriptions":{"typeIdentifier":"t_function_event_nonpayable$_t_string_memory_ptr_$_t_uint256_$returns$__$","typeString":"function (string memory,uint256)"}},"id":60095,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"6948:30:148","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":60096,"nodeType":"EmitStatement","src":"6943:35:148"},{"expression":{"arguments":[],"expression":{"argumentTypes":[],"id":60097,"name":"fail","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":59626,"src":"6992:4:148","typeDescriptions":{"typeIdentifier":"t_function_internal_nonpayable$__$returns$__$","typeString":"function ()"}},"id":60098,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"6992:6:148","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":60099,"nodeType":"ExpressionStatement","src":"6992:6:148"}]}}]},"implemented":true,"kind":"function","modifiers":[],"name":"assertGt","nameLocation":"6765:8:148","parameters":{"id":60078,"nodeType":"ParameterList","parameters":[{"constant":false,"id":60075,"mutability":"mutable","name":"a","nameLocation":"6779:1:148","nodeType":"VariableDeclaration","scope":60103,"src":"6774:6:148","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":60074,"name":"uint","nodeType":"ElementaryTypeName","src":"6774:4:148","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":60077,"mutability":"mutable","name":"b","nameLocation":"6787:1:148","nodeType":"VariableDeclaration","scope":60103,"src":"6782:6:148","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":60076,"name":"uint","nodeType":"ElementaryTypeName","src":"6782:4:148","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"6773:16:148"},"returnParameters":{"id":60079,"nodeType":"ParameterList","parameters":[],"src":"6799:0:148"},"scope":61196,"stateMutability":"nonpayable","virtual":false,"visibility":"internal"},{"id":60128,"nodeType":"FunctionDefinition","src":"7020:178:148","nodes":[],"body":{"id":60127,"nodeType":"Block","src":"7082:116:148","nodes":[],"statements":[{"condition":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":60114,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":60112,"name":"a","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":60105,"src":"7096:1:148","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"<=","rightExpression":{"id":60113,"name":"b","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":60107,"src":"7101:1:148","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"7096:6:148","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":60126,"nodeType":"IfStatement","src":"7092:100:148","trueBody":{"id":60125,"nodeType":"Block","src":"7104:88:148","statements":[{"eventCall":{"arguments":[{"hexValue":"4572726f72","id":60116,"isConstant":false,"isLValue":false,"isPure":true,"kind":"string","lValueRequested":false,"nodeType":"Literal","src":"7140:7:148","typeDescriptions":{"typeIdentifier":"t_stringliteral_e342daa49723ff3485f4ff5f755a17b8bc9c3c33bbd312ceee37c94eebfe45c1","typeString":"literal_string \"Error\""},"value":"Error"},{"id":60117,"name":"err","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":60109,"src":"7149:3:148","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":60115,"name":"log_named_string","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":59495,"src":"7123:16:148","typeDescriptions":{"typeIdentifier":"t_function_event_nonpayable$_t_string_memory_ptr_$_t_string_memory_ptr_$returns$__$","typeString":"function (string memory,string memory)"}},"id":60118,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"7123:30:148","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":60119,"nodeType":"EmitStatement","src":"7118:35:148"},{"expression":{"arguments":[{"id":60121,"name":"a","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":60105,"src":"7176:1:148","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},{"id":60122,"name":"b","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":60107,"src":"7179:1:148","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"},{"typeIdentifier":"t_uint256","typeString":"uint256"}],"id":60120,"name":"assertGt","nodeType":"Identifier","overloadedDeclarations":[60103,60128,60158,60183],"referencedDeclaration":60103,"src":"7167:8:148","typeDescriptions":{"typeIdentifier":"t_function_internal_nonpayable$_t_uint256_$_t_uint256_$returns$__$","typeString":"function (uint256,uint256)"}},"id":60123,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"7167:14:148","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":60124,"nodeType":"ExpressionStatement","src":"7167:14:148"}]}}]},"implemented":true,"kind":"function","modifiers":[],"name":"assertGt","nameLocation":"7029:8:148","parameters":{"id":60110,"nodeType":"ParameterList","parameters":[{"constant":false,"id":60105,"mutability":"mutable","name":"a","nameLocation":"7043:1:148","nodeType":"VariableDeclaration","scope":60128,"src":"7038:6:148","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":60104,"name":"uint","nodeType":"ElementaryTypeName","src":"7038:4:148","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":60107,"mutability":"mutable","name":"b","nameLocation":"7051:1:148","nodeType":"VariableDeclaration","scope":60128,"src":"7046:6:148","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":60106,"name":"uint","nodeType":"ElementaryTypeName","src":"7046:4:148","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":60109,"mutability":"mutable","name":"err","nameLocation":"7068:3:148","nodeType":"VariableDeclaration","scope":60128,"src":"7054:17:148","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_string_memory_ptr","typeString":"string"},"typeName":{"id":60108,"name":"string","nodeType":"ElementaryTypeName","src":"7054:6:148","typeDescriptions":{"typeIdentifier":"t_string_storage_ptr","typeString":"string"}},"visibility":"internal"}],"src":"7037:35:148"},"returnParameters":{"id":60111,"nodeType":"ParameterList","parameters":[],"src":"7082:0:148"},"scope":61196,"stateMutability":"nonpayable","virtual":false,"visibility":"internal"},{"id":60158,"nodeType":"FunctionDefinition","src":"7203:254:148","nodes":[],"body":{"id":60157,"nodeType":"Block","src":"7244:213:148","nodes":[],"statements":[{"condition":{"commonType":{"typeIdentifier":"t_int256","typeString":"int256"},"id":60137,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":60135,"name":"a","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":60130,"src":"7258:1:148","typeDescriptions":{"typeIdentifier":"t_int256","typeString":"int256"}},"nodeType":"BinaryOperation","operator":"<=","rightExpression":{"id":60136,"name":"b","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":60132,"src":"7263:1:148","typeDescriptions":{"typeIdentifier":"t_int256","typeString":"int256"}},"src":"7258:6:148","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":60156,"nodeType":"IfStatement","src":"7254:197:148","trueBody":{"id":60155,"nodeType":"Block","src":"7266:185:148","statements":[{"eventCall":{"arguments":[{"hexValue":"4572726f723a2061203e2062206e6f7420736174697366696564205b696e745d","id":60139,"isConstant":false,"isLValue":false,"isPure":true,"kind":"string","lValueRequested":false,"nodeType":"Literal","src":"7289:34:148","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":60138,"name":"log","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":59415,"src":"7285:3:148","typeDescriptions":{"typeIdentifier":"t_function_event_nonpayable$_t_string_memory_ptr_$returns$__$","typeString":"function (string memory)"}},"id":60140,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"7285:39:148","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":60141,"nodeType":"EmitStatement","src":"7280:44:148"},{"eventCall":{"arguments":[{"hexValue":"202056616c75652061","id":60143,"isConstant":false,"isLValue":false,"isPure":true,"kind":"string","lValueRequested":false,"nodeType":"Literal","src":"7357:11:148","typeDescriptions":{"typeIdentifier":"t_stringliteral_c592b529b874569f165479a5a4380dedf000796f11e04035f76bfa7310b31d26","typeString":"literal_string \"  Value a\""},"value":"  Value a"},{"id":60144,"name":"a","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":60130,"src":"7370:1:148","typeDescriptions":{"typeIdentifier":"t_int256","typeString":"int256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_stringliteral_c592b529b874569f165479a5a4380dedf000796f11e04035f76bfa7310b31d26","typeString":"literal_string \"  Value a\""},{"typeIdentifier":"t_int256","typeString":"int256"}],"id":60142,"name":"log_named_int","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":59477,"src":"7343:13:148","typeDescriptions":{"typeIdentifier":"t_function_event_nonpayable$_t_string_memory_ptr_$_t_int256_$returns$__$","typeString":"function (string memory,int256)"}},"id":60145,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"7343:29:148","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":60146,"nodeType":"EmitStatement","src":"7338:34:148"},{"eventCall":{"arguments":[{"hexValue":"202056616c75652062","id":60148,"isConstant":false,"isLValue":false,"isPure":true,"kind":"string","lValueRequested":false,"nodeType":"Literal","src":"7405:11:148","typeDescriptions":{"typeIdentifier":"t_stringliteral_e4b1d025132960c3fb1a582cf2366864dc416744d1b9770aa69fe3749623ebc3","typeString":"literal_string \"  Value b\""},"value":"  Value b"},{"id":60149,"name":"b","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":60132,"src":"7418:1:148","typeDescriptions":{"typeIdentifier":"t_int256","typeString":"int256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_stringliteral_e4b1d025132960c3fb1a582cf2366864dc416744d1b9770aa69fe3749623ebc3","typeString":"literal_string \"  Value b\""},{"typeIdentifier":"t_int256","typeString":"int256"}],"id":60147,"name":"log_named_int","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":59477,"src":"7391:13:148","typeDescriptions":{"typeIdentifier":"t_function_event_nonpayable$_t_string_memory_ptr_$_t_int256_$returns$__$","typeString":"function (string memory,int256)"}},"id":60150,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"7391:29:148","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":60151,"nodeType":"EmitStatement","src":"7386:34:148"},{"expression":{"arguments":[],"expression":{"argumentTypes":[],"id":60152,"name":"fail","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":59626,"src":"7434:4:148","typeDescriptions":{"typeIdentifier":"t_function_internal_nonpayable$__$returns$__$","typeString":"function ()"}},"id":60153,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"7434:6:148","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":60154,"nodeType":"ExpressionStatement","src":"7434:6:148"}]}}]},"implemented":true,"kind":"function","modifiers":[],"name":"assertGt","nameLocation":"7212:8:148","parameters":{"id":60133,"nodeType":"ParameterList","parameters":[{"constant":false,"id":60130,"mutability":"mutable","name":"a","nameLocation":"7225:1:148","nodeType":"VariableDeclaration","scope":60158,"src":"7221:5:148","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_int256","typeString":"int256"},"typeName":{"id":60129,"name":"int","nodeType":"ElementaryTypeName","src":"7221:3:148","typeDescriptions":{"typeIdentifier":"t_int256","typeString":"int256"}},"visibility":"internal"},{"constant":false,"id":60132,"mutability":"mutable","name":"b","nameLocation":"7232:1:148","nodeType":"VariableDeclaration","scope":60158,"src":"7228:5:148","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_int256","typeString":"int256"},"typeName":{"id":60131,"name":"int","nodeType":"ElementaryTypeName","src":"7228:3:148","typeDescriptions":{"typeIdentifier":"t_int256","typeString":"int256"}},"visibility":"internal"}],"src":"7220:14:148"},"returnParameters":{"id":60134,"nodeType":"ParameterList","parameters":[],"src":"7244:0:148"},"scope":61196,"stateMutability":"nonpayable","virtual":false,"visibility":"internal"},{"id":60183,"nodeType":"FunctionDefinition","src":"7462:176:148","nodes":[],"body":{"id":60182,"nodeType":"Block","src":"7522:116:148","nodes":[],"statements":[{"condition":{"commonType":{"typeIdentifier":"t_int256","typeString":"int256"},"id":60169,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":60167,"name":"a","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":60160,"src":"7536:1:148","typeDescriptions":{"typeIdentifier":"t_int256","typeString":"int256"}},"nodeType":"BinaryOperation","operator":"<=","rightExpression":{"id":60168,"name":"b","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":60162,"src":"7541:1:148","typeDescriptions":{"typeIdentifier":"t_int256","typeString":"int256"}},"src":"7536:6:148","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":60181,"nodeType":"IfStatement","src":"7532:100:148","trueBody":{"id":60180,"nodeType":"Block","src":"7544:88:148","statements":[{"eventCall":{"arguments":[{"hexValue":"4572726f72","id":60171,"isConstant":false,"isLValue":false,"isPure":true,"kind":"string","lValueRequested":false,"nodeType":"Literal","src":"7580:7:148","typeDescriptions":{"typeIdentifier":"t_stringliteral_e342daa49723ff3485f4ff5f755a17b8bc9c3c33bbd312ceee37c94eebfe45c1","typeString":"literal_string \"Error\""},"value":"Error"},{"id":60172,"name":"err","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":60164,"src":"7589:3:148","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":60170,"name":"log_named_string","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":59495,"src":"7563:16:148","typeDescriptions":{"typeIdentifier":"t_function_event_nonpayable$_t_string_memory_ptr_$_t_string_memory_ptr_$returns$__$","typeString":"function (string memory,string memory)"}},"id":60173,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"7563:30:148","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":60174,"nodeType":"EmitStatement","src":"7558:35:148"},{"expression":{"arguments":[{"id":60176,"name":"a","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":60160,"src":"7616:1:148","typeDescriptions":{"typeIdentifier":"t_int256","typeString":"int256"}},{"id":60177,"name":"b","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":60162,"src":"7619:1:148","typeDescriptions":{"typeIdentifier":"t_int256","typeString":"int256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_int256","typeString":"int256"},{"typeIdentifier":"t_int256","typeString":"int256"}],"id":60175,"name":"assertGt","nodeType":"Identifier","overloadedDeclarations":[60103,60128,60158,60183],"referencedDeclaration":60158,"src":"7607:8:148","typeDescriptions":{"typeIdentifier":"t_function_internal_nonpayable$_t_int256_$_t_int256_$returns$__$","typeString":"function (int256,int256)"}},"id":60178,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"7607:14:148","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":60179,"nodeType":"ExpressionStatement","src":"7607:14:148"}]}}]},"implemented":true,"kind":"function","modifiers":[],"name":"assertGt","nameLocation":"7471:8:148","parameters":{"id":60165,"nodeType":"ParameterList","parameters":[{"constant":false,"id":60160,"mutability":"mutable","name":"a","nameLocation":"7484:1:148","nodeType":"VariableDeclaration","scope":60183,"src":"7480:5:148","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_int256","typeString":"int256"},"typeName":{"id":60159,"name":"int","nodeType":"ElementaryTypeName","src":"7480:3:148","typeDescriptions":{"typeIdentifier":"t_int256","typeString":"int256"}},"visibility":"internal"},{"constant":false,"id":60162,"mutability":"mutable","name":"b","nameLocation":"7491:1:148","nodeType":"VariableDeclaration","scope":60183,"src":"7487:5:148","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_int256","typeString":"int256"},"typeName":{"id":60161,"name":"int","nodeType":"ElementaryTypeName","src":"7487:3:148","typeDescriptions":{"typeIdentifier":"t_int256","typeString":"int256"}},"visibility":"internal"},{"constant":false,"id":60164,"mutability":"mutable","name":"err","nameLocation":"7508:3:148","nodeType":"VariableDeclaration","scope":60183,"src":"7494:17:148","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_string_memory_ptr","typeString":"string"},"typeName":{"id":60163,"name":"string","nodeType":"ElementaryTypeName","src":"7494:6:148","typeDescriptions":{"typeIdentifier":"t_string_storage_ptr","typeString":"string"}},"visibility":"internal"}],"src":"7479:33:148"},"returnParameters":{"id":60166,"nodeType":"ParameterList","parameters":[],"src":"7522:0:148"},"scope":61196,"stateMutability":"nonpayable","virtual":false,"visibility":"internal"},{"id":60217,"nodeType":"FunctionDefinition","src":"7643:320:148","nodes":[],"body":{"id":60216,"nodeType":"Block","src":"7706:257:148","nodes":[],"statements":[{"condition":{"commonType":{"typeIdentifier":"t_int256","typeString":"int256"},"id":60194,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":60192,"name":"a","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":60185,"src":"7720:1:148","typeDescriptions":{"typeIdentifier":"t_int256","typeString":"int256"}},"nodeType":"BinaryOperation","operator":"<=","rightExpression":{"id":60193,"name":"b","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":60187,"src":"7725:1:148","typeDescriptions":{"typeIdentifier":"t_int256","typeString":"int256"}},"src":"7720:6:148","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":60215,"nodeType":"IfStatement","src":"7716:241:148","trueBody":{"id":60214,"nodeType":"Block","src":"7728:229:148","statements":[{"eventCall":{"arguments":[{"hexValue":"4572726f723a2061203e2062206e6f7420736174697366696564205b646563696d616c20696e745d","id":60196,"isConstant":false,"isLValue":false,"isPure":true,"kind":"string","lValueRequested":false,"nodeType":"Literal","src":"7751:42:148","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":60195,"name":"log","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":59415,"src":"7747:3:148","typeDescriptions":{"typeIdentifier":"t_function_event_nonpayable$_t_string_memory_ptr_$returns$__$","typeString":"function (string memory)"}},"id":60197,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"7747:47:148","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":60198,"nodeType":"EmitStatement","src":"7742:52:148"},{"eventCall":{"arguments":[{"hexValue":"202056616c75652061","id":60200,"isConstant":false,"isLValue":false,"isPure":true,"kind":"string","lValueRequested":false,"nodeType":"Literal","src":"7835:11:148","typeDescriptions":{"typeIdentifier":"t_stringliteral_c592b529b874569f165479a5a4380dedf000796f11e04035f76bfa7310b31d26","typeString":"literal_string \"  Value a\""},"value":"  Value a"},{"id":60201,"name":"a","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":60185,"src":"7848:1:148","typeDescriptions":{"typeIdentifier":"t_int256","typeString":"int256"}},{"id":60202,"name":"decimals","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":60189,"src":"7851:8:148","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":60199,"name":"log_named_decimal_int","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":59463,"src":"7813:21:148","typeDescriptions":{"typeIdentifier":"t_function_event_nonpayable$_t_string_memory_ptr_$_t_int256_$_t_uint256_$returns$__$","typeString":"function (string memory,int256,uint256)"}},"id":60203,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"7813:47:148","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":60204,"nodeType":"EmitStatement","src":"7808:52:148"},{"eventCall":{"arguments":[{"hexValue":"202056616c75652062","id":60206,"isConstant":false,"isLValue":false,"isPure":true,"kind":"string","lValueRequested":false,"nodeType":"Literal","src":"7901:11:148","typeDescriptions":{"typeIdentifier":"t_stringliteral_e4b1d025132960c3fb1a582cf2366864dc416744d1b9770aa69fe3749623ebc3","typeString":"literal_string \"  Value b\""},"value":"  Value b"},{"id":60207,"name":"b","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":60187,"src":"7914:1:148","typeDescriptions":{"typeIdentifier":"t_int256","typeString":"int256"}},{"id":60208,"name":"decimals","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":60189,"src":"7917:8:148","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":60205,"name":"log_named_decimal_int","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":59463,"src":"7879:21:148","typeDescriptions":{"typeIdentifier":"t_function_event_nonpayable$_t_string_memory_ptr_$_t_int256_$_t_uint256_$returns$__$","typeString":"function (string memory,int256,uint256)"}},"id":60209,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"7879:47:148","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":60210,"nodeType":"EmitStatement","src":"7874:52:148"},{"expression":{"arguments":[],"expression":{"argumentTypes":[],"id":60211,"name":"fail","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":59626,"src":"7940:4:148","typeDescriptions":{"typeIdentifier":"t_function_internal_nonpayable$__$returns$__$","typeString":"function ()"}},"id":60212,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"7940:6:148","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":60213,"nodeType":"ExpressionStatement","src":"7940:6:148"}]}}]},"implemented":true,"kind":"function","modifiers":[],"name":"assertGtDecimal","nameLocation":"7652:15:148","parameters":{"id":60190,"nodeType":"ParameterList","parameters":[{"constant":false,"id":60185,"mutability":"mutable","name":"a","nameLocation":"7672:1:148","nodeType":"VariableDeclaration","scope":60217,"src":"7668:5:148","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_int256","typeString":"int256"},"typeName":{"id":60184,"name":"int","nodeType":"ElementaryTypeName","src":"7668:3:148","typeDescriptions":{"typeIdentifier":"t_int256","typeString":"int256"}},"visibility":"internal"},{"constant":false,"id":60187,"mutability":"mutable","name":"b","nameLocation":"7679:1:148","nodeType":"VariableDeclaration","scope":60217,"src":"7675:5:148","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_int256","typeString":"int256"},"typeName":{"id":60186,"name":"int","nodeType":"ElementaryTypeName","src":"7675:3:148","typeDescriptions":{"typeIdentifier":"t_int256","typeString":"int256"}},"visibility":"internal"},{"constant":false,"id":60189,"mutability":"mutable","name":"decimals","nameLocation":"7687:8:148","nodeType":"VariableDeclaration","scope":60217,"src":"7682:13:148","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":60188,"name":"uint","nodeType":"ElementaryTypeName","src":"7682:4:148","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"7667:29:148"},"returnParameters":{"id":60191,"nodeType":"ParameterList","parameters":[],"src":"7706:0:148"},"scope":61196,"stateMutability":"nonpayable","virtual":false,"visibility":"internal"},{"id":60245,"nodeType":"FunctionDefinition","src":"7968:215:148","nodes":[],"body":{"id":60244,"nodeType":"Block","src":"8050:133:148","nodes":[],"statements":[{"condition":{"commonType":{"typeIdentifier":"t_int256","typeString":"int256"},"id":60230,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":60228,"name":"a","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":60219,"src":"8064:1:148","typeDescriptions":{"typeIdentifier":"t_int256","typeString":"int256"}},"nodeType":"BinaryOperation","operator":"<=","rightExpression":{"id":60229,"name":"b","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":60221,"src":"8069:1:148","typeDescriptions":{"typeIdentifier":"t_int256","typeString":"int256"}},"src":"8064:6:148","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":60243,"nodeType":"IfStatement","src":"8060:117:148","trueBody":{"id":60242,"nodeType":"Block","src":"8072:105:148","statements":[{"eventCall":{"arguments":[{"hexValue":"4572726f72","id":60232,"isConstant":false,"isLValue":false,"isPure":true,"kind":"string","lValueRequested":false,"nodeType":"Literal","src":"8108:7:148","typeDescriptions":{"typeIdentifier":"t_stringliteral_e342daa49723ff3485f4ff5f755a17b8bc9c3c33bbd312ceee37c94eebfe45c1","typeString":"literal_string \"Error\""},"value":"Error"},{"id":60233,"name":"err","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":60225,"src":"8117:3:148","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":60231,"name":"log_named_string","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":59495,"src":"8091:16:148","typeDescriptions":{"typeIdentifier":"t_function_event_nonpayable$_t_string_memory_ptr_$_t_string_memory_ptr_$returns$__$","typeString":"function (string memory,string memory)"}},"id":60234,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"8091:30:148","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":60235,"nodeType":"EmitStatement","src":"8086:35:148"},{"expression":{"arguments":[{"id":60237,"name":"a","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":60219,"src":"8151:1:148","typeDescriptions":{"typeIdentifier":"t_int256","typeString":"int256"}},{"id":60238,"name":"b","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":60221,"src":"8154:1:148","typeDescriptions":{"typeIdentifier":"t_int256","typeString":"int256"}},{"id":60239,"name":"decimals","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":60223,"src":"8157:8:148","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_int256","typeString":"int256"},{"typeIdentifier":"t_int256","typeString":"int256"},{"typeIdentifier":"t_uint256","typeString":"uint256"}],"id":60236,"name":"assertGtDecimal","nodeType":"Identifier","overloadedDeclarations":[60217,60245,60279,60307],"referencedDeclaration":60217,"src":"8135:15:148","typeDescriptions":{"typeIdentifier":"t_function_internal_nonpayable$_t_int256_$_t_int256_$_t_uint256_$returns$__$","typeString":"function (int256,int256,uint256)"}},"id":60240,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"8135:31:148","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":60241,"nodeType":"ExpressionStatement","src":"8135:31:148"}]}}]},"implemented":true,"kind":"function","modifiers":[],"name":"assertGtDecimal","nameLocation":"7977:15:148","parameters":{"id":60226,"nodeType":"ParameterList","parameters":[{"constant":false,"id":60219,"mutability":"mutable","name":"a","nameLocation":"7997:1:148","nodeType":"VariableDeclaration","scope":60245,"src":"7993:5:148","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_int256","typeString":"int256"},"typeName":{"id":60218,"name":"int","nodeType":"ElementaryTypeName","src":"7993:3:148","typeDescriptions":{"typeIdentifier":"t_int256","typeString":"int256"}},"visibility":"internal"},{"constant":false,"id":60221,"mutability":"mutable","name":"b","nameLocation":"8004:1:148","nodeType":"VariableDeclaration","scope":60245,"src":"8000:5:148","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_int256","typeString":"int256"},"typeName":{"id":60220,"name":"int","nodeType":"ElementaryTypeName","src":"8000:3:148","typeDescriptions":{"typeIdentifier":"t_int256","typeString":"int256"}},"visibility":"internal"},{"constant":false,"id":60223,"mutability":"mutable","name":"decimals","nameLocation":"8012:8:148","nodeType":"VariableDeclaration","scope":60245,"src":"8007:13:148","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":60222,"name":"uint","nodeType":"ElementaryTypeName","src":"8007:4:148","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":60225,"mutability":"mutable","name":"err","nameLocation":"8036:3:148","nodeType":"VariableDeclaration","scope":60245,"src":"8022:17:148","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_string_memory_ptr","typeString":"string"},"typeName":{"id":60224,"name":"string","nodeType":"ElementaryTypeName","src":"8022:6:148","typeDescriptions":{"typeIdentifier":"t_string_storage_ptr","typeString":"string"}},"visibility":"internal"}],"src":"7992:48:148"},"returnParameters":{"id":60227,"nodeType":"ParameterList","parameters":[],"src":"8050:0:148"},"scope":61196,"stateMutability":"nonpayable","virtual":false,"visibility":"internal"},{"id":60279,"nodeType":"FunctionDefinition","src":"8188:325:148","nodes":[],"body":{"id":60278,"nodeType":"Block","src":"8253:260:148","nodes":[],"statements":[{"condition":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":60256,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":60254,"name":"a","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":60247,"src":"8267:1:148","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"<=","rightExpression":{"id":60255,"name":"b","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":60249,"src":"8272:1:148","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"8267:6:148","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":60277,"nodeType":"IfStatement","src":"8263:244:148","trueBody":{"id":60276,"nodeType":"Block","src":"8275:232:148","statements":[{"eventCall":{"arguments":[{"hexValue":"4572726f723a2061203e2062206e6f7420736174697366696564205b646563696d616c2075696e745d","id":60258,"isConstant":false,"isLValue":false,"isPure":true,"kind":"string","lValueRequested":false,"nodeType":"Literal","src":"8298:43:148","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":60257,"name":"log","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":59415,"src":"8294:3:148","typeDescriptions":{"typeIdentifier":"t_function_event_nonpayable$_t_string_memory_ptr_$returns$__$","typeString":"function (string memory)"}},"id":60259,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"8294:48:148","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":60260,"nodeType":"EmitStatement","src":"8289:53:148"},{"eventCall":{"arguments":[{"hexValue":"202056616c75652061","id":60262,"isConstant":false,"isLValue":false,"isPure":true,"kind":"string","lValueRequested":false,"nodeType":"Literal","src":"8384:11:148","typeDescriptions":{"typeIdentifier":"t_stringliteral_c592b529b874569f165479a5a4380dedf000796f11e04035f76bfa7310b31d26","typeString":"literal_string \"  Value a\""},"value":"  Value a"},{"id":60263,"name":"a","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":60247,"src":"8397:1:148","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},{"id":60264,"name":"decimals","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":60251,"src":"8400:8:148","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":60261,"name":"log_named_decimal_uint","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":59471,"src":"8361:22:148","typeDescriptions":{"typeIdentifier":"t_function_event_nonpayable$_t_string_memory_ptr_$_t_uint256_$_t_uint256_$returns$__$","typeString":"function (string memory,uint256,uint256)"}},"id":60265,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"8361:48:148","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":60266,"nodeType":"EmitStatement","src":"8356:53:148"},{"eventCall":{"arguments":[{"hexValue":"202056616c75652062","id":60268,"isConstant":false,"isLValue":false,"isPure":true,"kind":"string","lValueRequested":false,"nodeType":"Literal","src":"8451:11:148","typeDescriptions":{"typeIdentifier":"t_stringliteral_e4b1d025132960c3fb1a582cf2366864dc416744d1b9770aa69fe3749623ebc3","typeString":"literal_string \"  Value b\""},"value":"  Value b"},{"id":60269,"name":"b","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":60249,"src":"8464:1:148","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},{"id":60270,"name":"decimals","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":60251,"src":"8467:8:148","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":60267,"name":"log_named_decimal_uint","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":59471,"src":"8428:22:148","typeDescriptions":{"typeIdentifier":"t_function_event_nonpayable$_t_string_memory_ptr_$_t_uint256_$_t_uint256_$returns$__$","typeString":"function (string memory,uint256,uint256)"}},"id":60271,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"8428:48:148","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":60272,"nodeType":"EmitStatement","src":"8423:53:148"},{"expression":{"arguments":[],"expression":{"argumentTypes":[],"id":60273,"name":"fail","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":59626,"src":"8490:4:148","typeDescriptions":{"typeIdentifier":"t_function_internal_nonpayable$__$returns$__$","typeString":"function ()"}},"id":60274,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"8490:6:148","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":60275,"nodeType":"ExpressionStatement","src":"8490:6:148"}]}}]},"implemented":true,"kind":"function","modifiers":[],"name":"assertGtDecimal","nameLocation":"8197:15:148","parameters":{"id":60252,"nodeType":"ParameterList","parameters":[{"constant":false,"id":60247,"mutability":"mutable","name":"a","nameLocation":"8218:1:148","nodeType":"VariableDeclaration","scope":60279,"src":"8213:6:148","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":60246,"name":"uint","nodeType":"ElementaryTypeName","src":"8213:4:148","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":60249,"mutability":"mutable","name":"b","nameLocation":"8226:1:148","nodeType":"VariableDeclaration","scope":60279,"src":"8221:6:148","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":60248,"name":"uint","nodeType":"ElementaryTypeName","src":"8221:4:148","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":60251,"mutability":"mutable","name":"decimals","nameLocation":"8234:8:148","nodeType":"VariableDeclaration","scope":60279,"src":"8229:13:148","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":60250,"name":"uint","nodeType":"ElementaryTypeName","src":"8229:4:148","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"8212:31:148"},"returnParameters":{"id":60253,"nodeType":"ParameterList","parameters":[],"src":"8253:0:148"},"scope":61196,"stateMutability":"nonpayable","virtual":false,"visibility":"internal"},{"id":60307,"nodeType":"FunctionDefinition","src":"8518:217:148","nodes":[],"body":{"id":60306,"nodeType":"Block","src":"8602:133:148","nodes":[],"statements":[{"condition":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":60292,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":60290,"name":"a","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":60281,"src":"8616:1:148","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"<=","rightExpression":{"id":60291,"name":"b","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":60283,"src":"8621:1:148","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"8616:6:148","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":60305,"nodeType":"IfStatement","src":"8612:117:148","trueBody":{"id":60304,"nodeType":"Block","src":"8624:105:148","statements":[{"eventCall":{"arguments":[{"hexValue":"4572726f72","id":60294,"isConstant":false,"isLValue":false,"isPure":true,"kind":"string","lValueRequested":false,"nodeType":"Literal","src":"8660:7:148","typeDescriptions":{"typeIdentifier":"t_stringliteral_e342daa49723ff3485f4ff5f755a17b8bc9c3c33bbd312ceee37c94eebfe45c1","typeString":"literal_string \"Error\""},"value":"Error"},{"id":60295,"name":"err","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":60287,"src":"8669:3:148","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":60293,"name":"log_named_string","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":59495,"src":"8643:16:148","typeDescriptions":{"typeIdentifier":"t_function_event_nonpayable$_t_string_memory_ptr_$_t_string_memory_ptr_$returns$__$","typeString":"function (string memory,string memory)"}},"id":60296,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"8643:30:148","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":60297,"nodeType":"EmitStatement","src":"8638:35:148"},{"expression":{"arguments":[{"id":60299,"name":"a","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":60281,"src":"8703:1:148","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},{"id":60300,"name":"b","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":60283,"src":"8706:1:148","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},{"id":60301,"name":"decimals","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":60285,"src":"8709:8:148","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"},{"typeIdentifier":"t_uint256","typeString":"uint256"},{"typeIdentifier":"t_uint256","typeString":"uint256"}],"id":60298,"name":"assertGtDecimal","nodeType":"Identifier","overloadedDeclarations":[60217,60245,60279,60307],"referencedDeclaration":60279,"src":"8687:15:148","typeDescriptions":{"typeIdentifier":"t_function_internal_nonpayable$_t_uint256_$_t_uint256_$_t_uint256_$returns$__$","typeString":"function (uint256,uint256,uint256)"}},"id":60302,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"8687:31:148","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":60303,"nodeType":"ExpressionStatement","src":"8687:31:148"}]}}]},"implemented":true,"kind":"function","modifiers":[],"name":"assertGtDecimal","nameLocation":"8527:15:148","parameters":{"id":60288,"nodeType":"ParameterList","parameters":[{"constant":false,"id":60281,"mutability":"mutable","name":"a","nameLocation":"8548:1:148","nodeType":"VariableDeclaration","scope":60307,"src":"8543:6:148","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":60280,"name":"uint","nodeType":"ElementaryTypeName","src":"8543:4:148","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":60283,"mutability":"mutable","name":"b","nameLocation":"8556:1:148","nodeType":"VariableDeclaration","scope":60307,"src":"8551:6:148","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":60282,"name":"uint","nodeType":"ElementaryTypeName","src":"8551:4:148","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":60285,"mutability":"mutable","name":"decimals","nameLocation":"8564:8:148","nodeType":"VariableDeclaration","scope":60307,"src":"8559:13:148","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":60284,"name":"uint","nodeType":"ElementaryTypeName","src":"8559:4:148","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":60287,"mutability":"mutable","name":"err","nameLocation":"8588:3:148","nodeType":"VariableDeclaration","scope":60307,"src":"8574:17:148","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_string_memory_ptr","typeString":"string"},"typeName":{"id":60286,"name":"string","nodeType":"ElementaryTypeName","src":"8574:6:148","typeDescriptions":{"typeIdentifier":"t_string_storage_ptr","typeString":"string"}},"visibility":"internal"}],"src":"8542:50:148"},"returnParameters":{"id":60289,"nodeType":"ParameterList","parameters":[],"src":"8602:0:148"},"scope":61196,"stateMutability":"nonpayable","virtual":false,"visibility":"internal"},{"id":60337,"nodeType":"FunctionDefinition","src":"8741:259:148","nodes":[],"body":{"id":60336,"nodeType":"Block","src":"8784:216:148","nodes":[],"statements":[{"condition":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":60316,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":60314,"name":"a","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":60309,"src":"8798:1:148","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"<","rightExpression":{"id":60315,"name":"b","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":60311,"src":"8802:1:148","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"8798:5:148","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":60335,"nodeType":"IfStatement","src":"8794:200:148","trueBody":{"id":60334,"nodeType":"Block","src":"8805:189:148","statements":[{"eventCall":{"arguments":[{"hexValue":"4572726f723a2061203e3d2062206e6f7420736174697366696564205b75696e745d","id":60318,"isConstant":false,"isLValue":false,"isPure":true,"kind":"string","lValueRequested":false,"nodeType":"Literal","src":"8828:36:148","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":60317,"name":"log","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":59415,"src":"8824:3:148","typeDescriptions":{"typeIdentifier":"t_function_event_nonpayable$_t_string_memory_ptr_$returns$__$","typeString":"function (string memory)"}},"id":60319,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"8824:41:148","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":60320,"nodeType":"EmitStatement","src":"8819:46:148"},{"eventCall":{"arguments":[{"hexValue":"202056616c75652061","id":60322,"isConstant":false,"isLValue":false,"isPure":true,"kind":"string","lValueRequested":false,"nodeType":"Literal","src":"8899:11:148","typeDescriptions":{"typeIdentifier":"t_stringliteral_c592b529b874569f165479a5a4380dedf000796f11e04035f76bfa7310b31d26","typeString":"literal_string \"  Value a\""},"value":"  Value a"},{"id":60323,"name":"a","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":60309,"src":"8912:1:148","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_stringliteral_c592b529b874569f165479a5a4380dedf000796f11e04035f76bfa7310b31d26","typeString":"literal_string \"  Value a\""},{"typeIdentifier":"t_uint256","typeString":"uint256"}],"id":60321,"name":"log_named_uint","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":59483,"src":"8884:14:148","typeDescriptions":{"typeIdentifier":"t_function_event_nonpayable$_t_string_memory_ptr_$_t_uint256_$returns$__$","typeString":"function (string memory,uint256)"}},"id":60324,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"8884:30:148","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":60325,"nodeType":"EmitStatement","src":"8879:35:148"},{"eventCall":{"arguments":[{"hexValue":"202056616c75652062","id":60327,"isConstant":false,"isLValue":false,"isPure":true,"kind":"string","lValueRequested":false,"nodeType":"Literal","src":"8948:11:148","typeDescriptions":{"typeIdentifier":"t_stringliteral_e4b1d025132960c3fb1a582cf2366864dc416744d1b9770aa69fe3749623ebc3","typeString":"literal_string \"  Value b\""},"value":"  Value b"},{"id":60328,"name":"b","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":60311,"src":"8961:1:148","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_stringliteral_e4b1d025132960c3fb1a582cf2366864dc416744d1b9770aa69fe3749623ebc3","typeString":"literal_string \"  Value b\""},{"typeIdentifier":"t_uint256","typeString":"uint256"}],"id":60326,"name":"log_named_uint","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":59483,"src":"8933:14:148","typeDescriptions":{"typeIdentifier":"t_function_event_nonpayable$_t_string_memory_ptr_$_t_uint256_$returns$__$","typeString":"function (string memory,uint256)"}},"id":60329,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"8933:30:148","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":60330,"nodeType":"EmitStatement","src":"8928:35:148"},{"expression":{"arguments":[],"expression":{"argumentTypes":[],"id":60331,"name":"fail","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":59626,"src":"8977:4:148","typeDescriptions":{"typeIdentifier":"t_function_internal_nonpayable$__$returns$__$","typeString":"function ()"}},"id":60332,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"8977:6:148","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":60333,"nodeType":"ExpressionStatement","src":"8977:6:148"}]}}]},"implemented":true,"kind":"function","modifiers":[],"name":"assertGe","nameLocation":"8750:8:148","parameters":{"id":60312,"nodeType":"ParameterList","parameters":[{"constant":false,"id":60309,"mutability":"mutable","name":"a","nameLocation":"8764:1:148","nodeType":"VariableDeclaration","scope":60337,"src":"8759:6:148","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":60308,"name":"uint","nodeType":"ElementaryTypeName","src":"8759:4:148","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":60311,"mutability":"mutable","name":"b","nameLocation":"8772:1:148","nodeType":"VariableDeclaration","scope":60337,"src":"8767:6:148","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":60310,"name":"uint","nodeType":"ElementaryTypeName","src":"8767:4:148","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"8758:16:148"},"returnParameters":{"id":60313,"nodeType":"ParameterList","parameters":[],"src":"8784:0:148"},"scope":61196,"stateMutability":"nonpayable","virtual":false,"visibility":"internal"},{"id":60362,"nodeType":"FunctionDefinition","src":"9005:177:148","nodes":[],"body":{"id":60361,"nodeType":"Block","src":"9067:115:148","nodes":[],"statements":[{"condition":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":60348,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":60346,"name":"a","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":60339,"src":"9081:1:148","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"<","rightExpression":{"id":60347,"name":"b","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":60341,"src":"9085:1:148","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"9081:5:148","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":60360,"nodeType":"IfStatement","src":"9077:99:148","trueBody":{"id":60359,"nodeType":"Block","src":"9088:88:148","statements":[{"eventCall":{"arguments":[{"hexValue":"4572726f72","id":60350,"isConstant":false,"isLValue":false,"isPure":true,"kind":"string","lValueRequested":false,"nodeType":"Literal","src":"9124:7:148","typeDescriptions":{"typeIdentifier":"t_stringliteral_e342daa49723ff3485f4ff5f755a17b8bc9c3c33bbd312ceee37c94eebfe45c1","typeString":"literal_string \"Error\""},"value":"Error"},{"id":60351,"name":"err","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":60343,"src":"9133:3:148","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":60349,"name":"log_named_string","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":59495,"src":"9107:16:148","typeDescriptions":{"typeIdentifier":"t_function_event_nonpayable$_t_string_memory_ptr_$_t_string_memory_ptr_$returns$__$","typeString":"function (string memory,string memory)"}},"id":60352,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"9107:30:148","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":60353,"nodeType":"EmitStatement","src":"9102:35:148"},{"expression":{"arguments":[{"id":60355,"name":"a","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":60339,"src":"9160:1:148","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},{"id":60356,"name":"b","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":60341,"src":"9163:1:148","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"},{"typeIdentifier":"t_uint256","typeString":"uint256"}],"id":60354,"name":"assertGe","nodeType":"Identifier","overloadedDeclarations":[60337,60362,60392,60417],"referencedDeclaration":60337,"src":"9151:8:148","typeDescriptions":{"typeIdentifier":"t_function_internal_nonpayable$_t_uint256_$_t_uint256_$returns$__$","typeString":"function (uint256,uint256)"}},"id":60357,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"9151:14:148","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":60358,"nodeType":"ExpressionStatement","src":"9151:14:148"}]}}]},"implemented":true,"kind":"function","modifiers":[],"name":"assertGe","nameLocation":"9014:8:148","parameters":{"id":60344,"nodeType":"ParameterList","parameters":[{"constant":false,"id":60339,"mutability":"mutable","name":"a","nameLocation":"9028:1:148","nodeType":"VariableDeclaration","scope":60362,"src":"9023:6:148","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":60338,"name":"uint","nodeType":"ElementaryTypeName","src":"9023:4:148","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":60341,"mutability":"mutable","name":"b","nameLocation":"9036:1:148","nodeType":"VariableDeclaration","scope":60362,"src":"9031:6:148","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":60340,"name":"uint","nodeType":"ElementaryTypeName","src":"9031:4:148","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":60343,"mutability":"mutable","name":"err","nameLocation":"9053:3:148","nodeType":"VariableDeclaration","scope":60362,"src":"9039:17:148","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_string_memory_ptr","typeString":"string"},"typeName":{"id":60342,"name":"string","nodeType":"ElementaryTypeName","src":"9039:6:148","typeDescriptions":{"typeIdentifier":"t_string_storage_ptr","typeString":"string"}},"visibility":"internal"}],"src":"9022:35:148"},"returnParameters":{"id":60345,"nodeType":"ParameterList","parameters":[],"src":"9067:0:148"},"scope":61196,"stateMutability":"nonpayable","virtual":false,"visibility":"internal"},{"id":60392,"nodeType":"FunctionDefinition","src":"9187:254:148","nodes":[],"body":{"id":60391,"nodeType":"Block","src":"9228:213:148","nodes":[],"statements":[{"condition":{"commonType":{"typeIdentifier":"t_int256","typeString":"int256"},"id":60371,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":60369,"name":"a","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":60364,"src":"9242:1:148","typeDescriptions":{"typeIdentifier":"t_int256","typeString":"int256"}},"nodeType":"BinaryOperation","operator":"<","rightExpression":{"id":60370,"name":"b","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":60366,"src":"9246:1:148","typeDescriptions":{"typeIdentifier":"t_int256","typeString":"int256"}},"src":"9242:5:148","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":60390,"nodeType":"IfStatement","src":"9238:197:148","trueBody":{"id":60389,"nodeType":"Block","src":"9249:186:148","statements":[{"eventCall":{"arguments":[{"hexValue":"4572726f723a2061203e3d2062206e6f7420736174697366696564205b696e745d","id":60373,"isConstant":false,"isLValue":false,"isPure":true,"kind":"string","lValueRequested":false,"nodeType":"Literal","src":"9272:35:148","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":60372,"name":"log","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":59415,"src":"9268:3:148","typeDescriptions":{"typeIdentifier":"t_function_event_nonpayable$_t_string_memory_ptr_$returns$__$","typeString":"function (string memory)"}},"id":60374,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"9268:40:148","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":60375,"nodeType":"EmitStatement","src":"9263:45:148"},{"eventCall":{"arguments":[{"hexValue":"202056616c75652061","id":60377,"isConstant":false,"isLValue":false,"isPure":true,"kind":"string","lValueRequested":false,"nodeType":"Literal","src":"9341:11:148","typeDescriptions":{"typeIdentifier":"t_stringliteral_c592b529b874569f165479a5a4380dedf000796f11e04035f76bfa7310b31d26","typeString":"literal_string \"  Value a\""},"value":"  Value a"},{"id":60378,"name":"a","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":60364,"src":"9354:1:148","typeDescriptions":{"typeIdentifier":"t_int256","typeString":"int256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_stringliteral_c592b529b874569f165479a5a4380dedf000796f11e04035f76bfa7310b31d26","typeString":"literal_string \"  Value a\""},{"typeIdentifier":"t_int256","typeString":"int256"}],"id":60376,"name":"log_named_int","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":59477,"src":"9327:13:148","typeDescriptions":{"typeIdentifier":"t_function_event_nonpayable$_t_string_memory_ptr_$_t_int256_$returns$__$","typeString":"function (string memory,int256)"}},"id":60379,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"9327:29:148","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":60380,"nodeType":"EmitStatement","src":"9322:34:148"},{"eventCall":{"arguments":[{"hexValue":"202056616c75652062","id":60382,"isConstant":false,"isLValue":false,"isPure":true,"kind":"string","lValueRequested":false,"nodeType":"Literal","src":"9389:11:148","typeDescriptions":{"typeIdentifier":"t_stringliteral_e4b1d025132960c3fb1a582cf2366864dc416744d1b9770aa69fe3749623ebc3","typeString":"literal_string \"  Value b\""},"value":"  Value b"},{"id":60383,"name":"b","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":60366,"src":"9402:1:148","typeDescriptions":{"typeIdentifier":"t_int256","typeString":"int256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_stringliteral_e4b1d025132960c3fb1a582cf2366864dc416744d1b9770aa69fe3749623ebc3","typeString":"literal_string \"  Value b\""},{"typeIdentifier":"t_int256","typeString":"int256"}],"id":60381,"name":"log_named_int","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":59477,"src":"9375:13:148","typeDescriptions":{"typeIdentifier":"t_function_event_nonpayable$_t_string_memory_ptr_$_t_int256_$returns$__$","typeString":"function (string memory,int256)"}},"id":60384,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"9375:29:148","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":60385,"nodeType":"EmitStatement","src":"9370:34:148"},{"expression":{"arguments":[],"expression":{"argumentTypes":[],"id":60386,"name":"fail","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":59626,"src":"9418:4:148","typeDescriptions":{"typeIdentifier":"t_function_internal_nonpayable$__$returns$__$","typeString":"function ()"}},"id":60387,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"9418:6:148","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":60388,"nodeType":"ExpressionStatement","src":"9418:6:148"}]}}]},"implemented":true,"kind":"function","modifiers":[],"name":"assertGe","nameLocation":"9196:8:148","parameters":{"id":60367,"nodeType":"ParameterList","parameters":[{"constant":false,"id":60364,"mutability":"mutable","name":"a","nameLocation":"9209:1:148","nodeType":"VariableDeclaration","scope":60392,"src":"9205:5:148","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_int256","typeString":"int256"},"typeName":{"id":60363,"name":"int","nodeType":"ElementaryTypeName","src":"9205:3:148","typeDescriptions":{"typeIdentifier":"t_int256","typeString":"int256"}},"visibility":"internal"},{"constant":false,"id":60366,"mutability":"mutable","name":"b","nameLocation":"9216:1:148","nodeType":"VariableDeclaration","scope":60392,"src":"9212:5:148","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_int256","typeString":"int256"},"typeName":{"id":60365,"name":"int","nodeType":"ElementaryTypeName","src":"9212:3:148","typeDescriptions":{"typeIdentifier":"t_int256","typeString":"int256"}},"visibility":"internal"}],"src":"9204:14:148"},"returnParameters":{"id":60368,"nodeType":"ParameterList","parameters":[],"src":"9228:0:148"},"scope":61196,"stateMutability":"nonpayable","virtual":false,"visibility":"internal"},{"id":60417,"nodeType":"FunctionDefinition","src":"9446:175:148","nodes":[],"body":{"id":60416,"nodeType":"Block","src":"9506:115:148","nodes":[],"statements":[{"condition":{"commonType":{"typeIdentifier":"t_int256","typeString":"int256"},"id":60403,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":60401,"name":"a","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":60394,"src":"9520:1:148","typeDescriptions":{"typeIdentifier":"t_int256","typeString":"int256"}},"nodeType":"BinaryOperation","operator":"<","rightExpression":{"id":60402,"name":"b","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":60396,"src":"9524:1:148","typeDescriptions":{"typeIdentifier":"t_int256","typeString":"int256"}},"src":"9520:5:148","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":60415,"nodeType":"IfStatement","src":"9516:99:148","trueBody":{"id":60414,"nodeType":"Block","src":"9527:88:148","statements":[{"eventCall":{"arguments":[{"hexValue":"4572726f72","id":60405,"isConstant":false,"isLValue":false,"isPure":true,"kind":"string","lValueRequested":false,"nodeType":"Literal","src":"9563:7:148","typeDescriptions":{"typeIdentifier":"t_stringliteral_e342daa49723ff3485f4ff5f755a17b8bc9c3c33bbd312ceee37c94eebfe45c1","typeString":"literal_string \"Error\""},"value":"Error"},{"id":60406,"name":"err","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":60398,"src":"9572:3:148","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":60404,"name":"log_named_string","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":59495,"src":"9546:16:148","typeDescriptions":{"typeIdentifier":"t_function_event_nonpayable$_t_string_memory_ptr_$_t_string_memory_ptr_$returns$__$","typeString":"function (string memory,string memory)"}},"id":60407,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"9546:30:148","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":60408,"nodeType":"EmitStatement","src":"9541:35:148"},{"expression":{"arguments":[{"id":60410,"name":"a","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":60394,"src":"9599:1:148","typeDescriptions":{"typeIdentifier":"t_int256","typeString":"int256"}},{"id":60411,"name":"b","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":60396,"src":"9602:1:148","typeDescriptions":{"typeIdentifier":"t_int256","typeString":"int256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_int256","typeString":"int256"},{"typeIdentifier":"t_int256","typeString":"int256"}],"id":60409,"name":"assertGe","nodeType":"Identifier","overloadedDeclarations":[60337,60362,60392,60417],"referencedDeclaration":60392,"src":"9590:8:148","typeDescriptions":{"typeIdentifier":"t_function_internal_nonpayable$_t_int256_$_t_int256_$returns$__$","typeString":"function (int256,int256)"}},"id":60412,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"9590:14:148","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":60413,"nodeType":"ExpressionStatement","src":"9590:14:148"}]}}]},"implemented":true,"kind":"function","modifiers":[],"name":"assertGe","nameLocation":"9455:8:148","parameters":{"id":60399,"nodeType":"ParameterList","parameters":[{"constant":false,"id":60394,"mutability":"mutable","name":"a","nameLocation":"9468:1:148","nodeType":"VariableDeclaration","scope":60417,"src":"9464:5:148","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_int256","typeString":"int256"},"typeName":{"id":60393,"name":"int","nodeType":"ElementaryTypeName","src":"9464:3:148","typeDescriptions":{"typeIdentifier":"t_int256","typeString":"int256"}},"visibility":"internal"},{"constant":false,"id":60396,"mutability":"mutable","name":"b","nameLocation":"9475:1:148","nodeType":"VariableDeclaration","scope":60417,"src":"9471:5:148","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_int256","typeString":"int256"},"typeName":{"id":60395,"name":"int","nodeType":"ElementaryTypeName","src":"9471:3:148","typeDescriptions":{"typeIdentifier":"t_int256","typeString":"int256"}},"visibility":"internal"},{"constant":false,"id":60398,"mutability":"mutable","name":"err","nameLocation":"9492:3:148","nodeType":"VariableDeclaration","scope":60417,"src":"9478:17:148","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_string_memory_ptr","typeString":"string"},"typeName":{"id":60397,"name":"string","nodeType":"ElementaryTypeName","src":"9478:6:148","typeDescriptions":{"typeIdentifier":"t_string_storage_ptr","typeString":"string"}},"visibility":"internal"}],"src":"9463:33:148"},"returnParameters":{"id":60400,"nodeType":"ParameterList","parameters":[],"src":"9506:0:148"},"scope":61196,"stateMutability":"nonpayable","virtual":false,"visibility":"internal"},{"id":60451,"nodeType":"FunctionDefinition","src":"9626:320:148","nodes":[],"body":{"id":60450,"nodeType":"Block","src":"9689:257:148","nodes":[],"statements":[{"condition":{"commonType":{"typeIdentifier":"t_int256","typeString":"int256"},"id":60428,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":60426,"name":"a","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":60419,"src":"9703:1:148","typeDescriptions":{"typeIdentifier":"t_int256","typeString":"int256"}},"nodeType":"BinaryOperation","operator":"<","rightExpression":{"id":60427,"name":"b","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":60421,"src":"9707:1:148","typeDescriptions":{"typeIdentifier":"t_int256","typeString":"int256"}},"src":"9703:5:148","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":60449,"nodeType":"IfStatement","src":"9699:241:148","trueBody":{"id":60448,"nodeType":"Block","src":"9710:230:148","statements":[{"eventCall":{"arguments":[{"hexValue":"4572726f723a2061203e3d2062206e6f7420736174697366696564205b646563696d616c20696e745d","id":60430,"isConstant":false,"isLValue":false,"isPure":true,"kind":"string","lValueRequested":false,"nodeType":"Literal","src":"9733:43:148","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":60429,"name":"log","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":59415,"src":"9729:3:148","typeDescriptions":{"typeIdentifier":"t_function_event_nonpayable$_t_string_memory_ptr_$returns$__$","typeString":"function (string memory)"}},"id":60431,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"9729:48:148","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":60432,"nodeType":"EmitStatement","src":"9724:53:148"},{"eventCall":{"arguments":[{"hexValue":"202056616c75652061","id":60434,"isConstant":false,"isLValue":false,"isPure":true,"kind":"string","lValueRequested":false,"nodeType":"Literal","src":"9818:11:148","typeDescriptions":{"typeIdentifier":"t_stringliteral_c592b529b874569f165479a5a4380dedf000796f11e04035f76bfa7310b31d26","typeString":"literal_string \"  Value a\""},"value":"  Value a"},{"id":60435,"name":"a","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":60419,"src":"9831:1:148","typeDescriptions":{"typeIdentifier":"t_int256","typeString":"int256"}},{"id":60436,"name":"decimals","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":60423,"src":"9834:8:148","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":60433,"name":"log_named_decimal_int","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":59463,"src":"9796:21:148","typeDescriptions":{"typeIdentifier":"t_function_event_nonpayable$_t_string_memory_ptr_$_t_int256_$_t_uint256_$returns$__$","typeString":"function (string memory,int256,uint256)"}},"id":60437,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"9796:47:148","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":60438,"nodeType":"EmitStatement","src":"9791:52:148"},{"eventCall":{"arguments":[{"hexValue":"202056616c75652062","id":60440,"isConstant":false,"isLValue":false,"isPure":true,"kind":"string","lValueRequested":false,"nodeType":"Literal","src":"9884:11:148","typeDescriptions":{"typeIdentifier":"t_stringliteral_e4b1d025132960c3fb1a582cf2366864dc416744d1b9770aa69fe3749623ebc3","typeString":"literal_string \"  Value b\""},"value":"  Value b"},{"id":60441,"name":"b","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":60421,"src":"9897:1:148","typeDescriptions":{"typeIdentifier":"t_int256","typeString":"int256"}},{"id":60442,"name":"decimals","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":60423,"src":"9900:8:148","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":60439,"name":"log_named_decimal_int","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":59463,"src":"9862:21:148","typeDescriptions":{"typeIdentifier":"t_function_event_nonpayable$_t_string_memory_ptr_$_t_int256_$_t_uint256_$returns$__$","typeString":"function (string memory,int256,uint256)"}},"id":60443,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"9862:47:148","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":60444,"nodeType":"EmitStatement","src":"9857:52:148"},{"expression":{"arguments":[],"expression":{"argumentTypes":[],"id":60445,"name":"fail","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":59626,"src":"9923:4:148","typeDescriptions":{"typeIdentifier":"t_function_internal_nonpayable$__$returns$__$","typeString":"function ()"}},"id":60446,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"9923:6:148","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":60447,"nodeType":"ExpressionStatement","src":"9923:6:148"}]}}]},"implemented":true,"kind":"function","modifiers":[],"name":"assertGeDecimal","nameLocation":"9635:15:148","parameters":{"id":60424,"nodeType":"ParameterList","parameters":[{"constant":false,"id":60419,"mutability":"mutable","name":"a","nameLocation":"9655:1:148","nodeType":"VariableDeclaration","scope":60451,"src":"9651:5:148","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_int256","typeString":"int256"},"typeName":{"id":60418,"name":"int","nodeType":"ElementaryTypeName","src":"9651:3:148","typeDescriptions":{"typeIdentifier":"t_int256","typeString":"int256"}},"visibility":"internal"},{"constant":false,"id":60421,"mutability":"mutable","name":"b","nameLocation":"9662:1:148","nodeType":"VariableDeclaration","scope":60451,"src":"9658:5:148","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_int256","typeString":"int256"},"typeName":{"id":60420,"name":"int","nodeType":"ElementaryTypeName","src":"9658:3:148","typeDescriptions":{"typeIdentifier":"t_int256","typeString":"int256"}},"visibility":"internal"},{"constant":false,"id":60423,"mutability":"mutable","name":"decimals","nameLocation":"9670:8:148","nodeType":"VariableDeclaration","scope":60451,"src":"9665:13:148","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":60422,"name":"uint","nodeType":"ElementaryTypeName","src":"9665:4:148","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"9650:29:148"},"returnParameters":{"id":60425,"nodeType":"ParameterList","parameters":[],"src":"9689:0:148"},"scope":61196,"stateMutability":"nonpayable","virtual":false,"visibility":"internal"},{"id":60479,"nodeType":"FunctionDefinition","src":"9951:214:148","nodes":[],"body":{"id":60478,"nodeType":"Block","src":"10033:132:148","nodes":[],"statements":[{"condition":{"commonType":{"typeIdentifier":"t_int256","typeString":"int256"},"id":60464,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":60462,"name":"a","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":60453,"src":"10047:1:148","typeDescriptions":{"typeIdentifier":"t_int256","typeString":"int256"}},"nodeType":"BinaryOperation","operator":"<","rightExpression":{"id":60463,"name":"b","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":60455,"src":"10051:1:148","typeDescriptions":{"typeIdentifier":"t_int256","typeString":"int256"}},"src":"10047:5:148","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":60477,"nodeType":"IfStatement","src":"10043:116:148","trueBody":{"id":60476,"nodeType":"Block","src":"10054:105:148","statements":[{"eventCall":{"arguments":[{"hexValue":"4572726f72","id":60466,"isConstant":false,"isLValue":false,"isPure":true,"kind":"string","lValueRequested":false,"nodeType":"Literal","src":"10090:7:148","typeDescriptions":{"typeIdentifier":"t_stringliteral_e342daa49723ff3485f4ff5f755a17b8bc9c3c33bbd312ceee37c94eebfe45c1","typeString":"literal_string \"Error\""},"value":"Error"},{"id":60467,"name":"err","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":60459,"src":"10099:3:148","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":60465,"name":"log_named_string","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":59495,"src":"10073:16:148","typeDescriptions":{"typeIdentifier":"t_function_event_nonpayable$_t_string_memory_ptr_$_t_string_memory_ptr_$returns$__$","typeString":"function (string memory,string memory)"}},"id":60468,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"10073:30:148","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":60469,"nodeType":"EmitStatement","src":"10068:35:148"},{"expression":{"arguments":[{"id":60471,"name":"a","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":60453,"src":"10133:1:148","typeDescriptions":{"typeIdentifier":"t_int256","typeString":"int256"}},{"id":60472,"name":"b","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":60455,"src":"10136:1:148","typeDescriptions":{"typeIdentifier":"t_int256","typeString":"int256"}},{"id":60473,"name":"decimals","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":60457,"src":"10139:8:148","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_int256","typeString":"int256"},{"typeIdentifier":"t_int256","typeString":"int256"},{"typeIdentifier":"t_uint256","typeString":"uint256"}],"id":60470,"name":"assertGeDecimal","nodeType":"Identifier","overloadedDeclarations":[60451,60479,60513,60541],"referencedDeclaration":60451,"src":"10117:15:148","typeDescriptions":{"typeIdentifier":"t_function_internal_nonpayable$_t_int256_$_t_int256_$_t_uint256_$returns$__$","typeString":"function (int256,int256,uint256)"}},"id":60474,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"10117:31:148","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":60475,"nodeType":"ExpressionStatement","src":"10117:31:148"}]}}]},"implemented":true,"kind":"function","modifiers":[],"name":"assertGeDecimal","nameLocation":"9960:15:148","parameters":{"id":60460,"nodeType":"ParameterList","parameters":[{"constant":false,"id":60453,"mutability":"mutable","name":"a","nameLocation":"9980:1:148","nodeType":"VariableDeclaration","scope":60479,"src":"9976:5:148","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_int256","typeString":"int256"},"typeName":{"id":60452,"name":"int","nodeType":"ElementaryTypeName","src":"9976:3:148","typeDescriptions":{"typeIdentifier":"t_int256","typeString":"int256"}},"visibility":"internal"},{"constant":false,"id":60455,"mutability":"mutable","name":"b","nameLocation":"9987:1:148","nodeType":"VariableDeclaration","scope":60479,"src":"9983:5:148","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_int256","typeString":"int256"},"typeName":{"id":60454,"name":"int","nodeType":"ElementaryTypeName","src":"9983:3:148","typeDescriptions":{"typeIdentifier":"t_int256","typeString":"int256"}},"visibility":"internal"},{"constant":false,"id":60457,"mutability":"mutable","name":"decimals","nameLocation":"9995:8:148","nodeType":"VariableDeclaration","scope":60479,"src":"9990:13:148","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":60456,"name":"uint","nodeType":"ElementaryTypeName","src":"9990:4:148","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":60459,"mutability":"mutable","name":"err","nameLocation":"10019:3:148","nodeType":"VariableDeclaration","scope":60479,"src":"10005:17:148","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_string_memory_ptr","typeString":"string"},"typeName":{"id":60458,"name":"string","nodeType":"ElementaryTypeName","src":"10005:6:148","typeDescriptions":{"typeIdentifier":"t_string_storage_ptr","typeString":"string"}},"visibility":"internal"}],"src":"9975:48:148"},"returnParameters":{"id":60461,"nodeType":"ParameterList","parameters":[],"src":"10033:0:148"},"scope":61196,"stateMutability":"nonpayable","virtual":false,"visibility":"internal"},{"id":60513,"nodeType":"FunctionDefinition","src":"10170:325:148","nodes":[],"body":{"id":60512,"nodeType":"Block","src":"10235:260:148","nodes":[],"statements":[{"condition":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":60490,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":60488,"name":"a","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":60481,"src":"10249:1:148","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"<","rightExpression":{"id":60489,"name":"b","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":60483,"src":"10253:1:148","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"10249:5:148","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":60511,"nodeType":"IfStatement","src":"10245:244:148","trueBody":{"id":60510,"nodeType":"Block","src":"10256:233:148","statements":[{"eventCall":{"arguments":[{"hexValue":"4572726f723a2061203e3d2062206e6f7420736174697366696564205b646563696d616c2075696e745d","id":60492,"isConstant":false,"isLValue":false,"isPure":true,"kind":"string","lValueRequested":false,"nodeType":"Literal","src":"10279:44:148","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":60491,"name":"log","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":59415,"src":"10275:3:148","typeDescriptions":{"typeIdentifier":"t_function_event_nonpayable$_t_string_memory_ptr_$returns$__$","typeString":"function (string memory)"}},"id":60493,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"10275:49:148","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":60494,"nodeType":"EmitStatement","src":"10270:54:148"},{"eventCall":{"arguments":[{"hexValue":"202056616c75652061","id":60496,"isConstant":false,"isLValue":false,"isPure":true,"kind":"string","lValueRequested":false,"nodeType":"Literal","src":"10366:11:148","typeDescriptions":{"typeIdentifier":"t_stringliteral_c592b529b874569f165479a5a4380dedf000796f11e04035f76bfa7310b31d26","typeString":"literal_string \"  Value a\""},"value":"  Value a"},{"id":60497,"name":"a","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":60481,"src":"10379:1:148","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},{"id":60498,"name":"decimals","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":60485,"src":"10382:8:148","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":60495,"name":"log_named_decimal_uint","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":59471,"src":"10343:22:148","typeDescriptions":{"typeIdentifier":"t_function_event_nonpayable$_t_string_memory_ptr_$_t_uint256_$_t_uint256_$returns$__$","typeString":"function (string memory,uint256,uint256)"}},"id":60499,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"10343:48:148","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":60500,"nodeType":"EmitStatement","src":"10338:53:148"},{"eventCall":{"arguments":[{"hexValue":"202056616c75652062","id":60502,"isConstant":false,"isLValue":false,"isPure":true,"kind":"string","lValueRequested":false,"nodeType":"Literal","src":"10433:11:148","typeDescriptions":{"typeIdentifier":"t_stringliteral_e4b1d025132960c3fb1a582cf2366864dc416744d1b9770aa69fe3749623ebc3","typeString":"literal_string \"  Value b\""},"value":"  Value b"},{"id":60503,"name":"b","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":60483,"src":"10446:1:148","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},{"id":60504,"name":"decimals","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":60485,"src":"10449:8:148","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":60501,"name":"log_named_decimal_uint","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":59471,"src":"10410:22:148","typeDescriptions":{"typeIdentifier":"t_function_event_nonpayable$_t_string_memory_ptr_$_t_uint256_$_t_uint256_$returns$__$","typeString":"function (string memory,uint256,uint256)"}},"id":60505,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"10410:48:148","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":60506,"nodeType":"EmitStatement","src":"10405:53:148"},{"expression":{"arguments":[],"expression":{"argumentTypes":[],"id":60507,"name":"fail","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":59626,"src":"10472:4:148","typeDescriptions":{"typeIdentifier":"t_function_internal_nonpayable$__$returns$__$","typeString":"function ()"}},"id":60508,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"10472:6:148","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":60509,"nodeType":"ExpressionStatement","src":"10472:6:148"}]}}]},"implemented":true,"kind":"function","modifiers":[],"name":"assertGeDecimal","nameLocation":"10179:15:148","parameters":{"id":60486,"nodeType":"ParameterList","parameters":[{"constant":false,"id":60481,"mutability":"mutable","name":"a","nameLocation":"10200:1:148","nodeType":"VariableDeclaration","scope":60513,"src":"10195:6:148","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":60480,"name":"uint","nodeType":"ElementaryTypeName","src":"10195:4:148","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":60483,"mutability":"mutable","name":"b","nameLocation":"10208:1:148","nodeType":"VariableDeclaration","scope":60513,"src":"10203:6:148","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":60482,"name":"uint","nodeType":"ElementaryTypeName","src":"10203:4:148","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":60485,"mutability":"mutable","name":"decimals","nameLocation":"10216:8:148","nodeType":"VariableDeclaration","scope":60513,"src":"10211:13:148","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":60484,"name":"uint","nodeType":"ElementaryTypeName","src":"10211:4:148","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"10194:31:148"},"returnParameters":{"id":60487,"nodeType":"ParameterList","parameters":[],"src":"10235:0:148"},"scope":61196,"stateMutability":"nonpayable","virtual":false,"visibility":"internal"},{"id":60541,"nodeType":"FunctionDefinition","src":"10500:216:148","nodes":[],"body":{"id":60540,"nodeType":"Block","src":"10584:132:148","nodes":[],"statements":[{"condition":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":60526,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":60524,"name":"a","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":60515,"src":"10598:1:148","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"<","rightExpression":{"id":60525,"name":"b","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":60517,"src":"10602:1:148","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"10598:5:148","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":60539,"nodeType":"IfStatement","src":"10594:116:148","trueBody":{"id":60538,"nodeType":"Block","src":"10605:105:148","statements":[{"eventCall":{"arguments":[{"hexValue":"4572726f72","id":60528,"isConstant":false,"isLValue":false,"isPure":true,"kind":"string","lValueRequested":false,"nodeType":"Literal","src":"10641:7:148","typeDescriptions":{"typeIdentifier":"t_stringliteral_e342daa49723ff3485f4ff5f755a17b8bc9c3c33bbd312ceee37c94eebfe45c1","typeString":"literal_string \"Error\""},"value":"Error"},{"id":60529,"name":"err","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":60521,"src":"10650:3:148","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":60527,"name":"log_named_string","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":59495,"src":"10624:16:148","typeDescriptions":{"typeIdentifier":"t_function_event_nonpayable$_t_string_memory_ptr_$_t_string_memory_ptr_$returns$__$","typeString":"function (string memory,string memory)"}},"id":60530,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"10624:30:148","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":60531,"nodeType":"EmitStatement","src":"10619:35:148"},{"expression":{"arguments":[{"id":60533,"name":"a","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":60515,"src":"10684:1:148","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},{"id":60534,"name":"b","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":60517,"src":"10687:1:148","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},{"id":60535,"name":"decimals","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":60519,"src":"10690:8:148","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"},{"typeIdentifier":"t_uint256","typeString":"uint256"},{"typeIdentifier":"t_uint256","typeString":"uint256"}],"id":60532,"name":"assertGeDecimal","nodeType":"Identifier","overloadedDeclarations":[60451,60479,60513,60541],"referencedDeclaration":60513,"src":"10668:15:148","typeDescriptions":{"typeIdentifier":"t_function_internal_nonpayable$_t_uint256_$_t_uint256_$_t_uint256_$returns$__$","typeString":"function (uint256,uint256,uint256)"}},"id":60536,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"10668:31:148","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":60537,"nodeType":"ExpressionStatement","src":"10668:31:148"}]}}]},"implemented":true,"kind":"function","modifiers":[],"name":"assertGeDecimal","nameLocation":"10509:15:148","parameters":{"id":60522,"nodeType":"ParameterList","parameters":[{"constant":false,"id":60515,"mutability":"mutable","name":"a","nameLocation":"10530:1:148","nodeType":"VariableDeclaration","scope":60541,"src":"10525:6:148","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":60514,"name":"uint","nodeType":"ElementaryTypeName","src":"10525:4:148","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":60517,"mutability":"mutable","name":"b","nameLocation":"10538:1:148","nodeType":"VariableDeclaration","scope":60541,"src":"10533:6:148","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":60516,"name":"uint","nodeType":"ElementaryTypeName","src":"10533:4:148","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":60519,"mutability":"mutable","name":"decimals","nameLocation":"10546:8:148","nodeType":"VariableDeclaration","scope":60541,"src":"10541:13:148","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":60518,"name":"uint","nodeType":"ElementaryTypeName","src":"10541:4:148","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":60521,"mutability":"mutable","name":"err","nameLocation":"10570:3:148","nodeType":"VariableDeclaration","scope":60541,"src":"10556:17:148","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_string_memory_ptr","typeString":"string"},"typeName":{"id":60520,"name":"string","nodeType":"ElementaryTypeName","src":"10556:6:148","typeDescriptions":{"typeIdentifier":"t_string_storage_ptr","typeString":"string"}},"visibility":"internal"}],"src":"10524:50:148"},"returnParameters":{"id":60523,"nodeType":"ParameterList","parameters":[],"src":"10584:0:148"},"scope":61196,"stateMutability":"nonpayable","virtual":false,"visibility":"internal"},{"id":60571,"nodeType":"FunctionDefinition","src":"10722:259:148","nodes":[],"body":{"id":60570,"nodeType":"Block","src":"10765:216:148","nodes":[],"statements":[{"condition":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":60550,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":60548,"name":"a","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":60543,"src":"10779:1:148","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":">=","rightExpression":{"id":60549,"name":"b","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":60545,"src":"10784:1:148","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"10779:6:148","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":60569,"nodeType":"IfStatement","src":"10775:200:148","trueBody":{"id":60568,"nodeType":"Block","src":"10787:188:148","statements":[{"eventCall":{"arguments":[{"hexValue":"4572726f723a2061203c2062206e6f7420736174697366696564205b75696e745d","id":60552,"isConstant":false,"isLValue":false,"isPure":true,"kind":"string","lValueRequested":false,"nodeType":"Literal","src":"10810:35:148","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":60551,"name":"log","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":59415,"src":"10806:3:148","typeDescriptions":{"typeIdentifier":"t_function_event_nonpayable$_t_string_memory_ptr_$returns$__$","typeString":"function (string memory)"}},"id":60553,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"10806:40:148","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":60554,"nodeType":"EmitStatement","src":"10801:45:148"},{"eventCall":{"arguments":[{"hexValue":"202056616c75652061","id":60556,"isConstant":false,"isLValue":false,"isPure":true,"kind":"string","lValueRequested":false,"nodeType":"Literal","src":"10880:11:148","typeDescriptions":{"typeIdentifier":"t_stringliteral_c592b529b874569f165479a5a4380dedf000796f11e04035f76bfa7310b31d26","typeString":"literal_string \"  Value a\""},"value":"  Value a"},{"id":60557,"name":"a","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":60543,"src":"10893:1:148","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_stringliteral_c592b529b874569f165479a5a4380dedf000796f11e04035f76bfa7310b31d26","typeString":"literal_string \"  Value a\""},{"typeIdentifier":"t_uint256","typeString":"uint256"}],"id":60555,"name":"log_named_uint","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":59483,"src":"10865:14:148","typeDescriptions":{"typeIdentifier":"t_function_event_nonpayable$_t_string_memory_ptr_$_t_uint256_$returns$__$","typeString":"function (string memory,uint256)"}},"id":60558,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"10865:30:148","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":60559,"nodeType":"EmitStatement","src":"10860:35:148"},{"eventCall":{"arguments":[{"hexValue":"202056616c75652062","id":60561,"isConstant":false,"isLValue":false,"isPure":true,"kind":"string","lValueRequested":false,"nodeType":"Literal","src":"10929:11:148","typeDescriptions":{"typeIdentifier":"t_stringliteral_e4b1d025132960c3fb1a582cf2366864dc416744d1b9770aa69fe3749623ebc3","typeString":"literal_string \"  Value b\""},"value":"  Value b"},{"id":60562,"name":"b","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":60545,"src":"10942:1:148","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_stringliteral_e4b1d025132960c3fb1a582cf2366864dc416744d1b9770aa69fe3749623ebc3","typeString":"literal_string \"  Value b\""},{"typeIdentifier":"t_uint256","typeString":"uint256"}],"id":60560,"name":"log_named_uint","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":59483,"src":"10914:14:148","typeDescriptions":{"typeIdentifier":"t_function_event_nonpayable$_t_string_memory_ptr_$_t_uint256_$returns$__$","typeString":"function (string memory,uint256)"}},"id":60563,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"10914:30:148","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":60564,"nodeType":"EmitStatement","src":"10909:35:148"},{"expression":{"arguments":[],"expression":{"argumentTypes":[],"id":60565,"name":"fail","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":59626,"src":"10958:4:148","typeDescriptions":{"typeIdentifier":"t_function_internal_nonpayable$__$returns$__$","typeString":"function ()"}},"id":60566,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"10958:6:148","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":60567,"nodeType":"ExpressionStatement","src":"10958:6:148"}]}}]},"implemented":true,"kind":"function","modifiers":[],"name":"assertLt","nameLocation":"10731:8:148","parameters":{"id":60546,"nodeType":"ParameterList","parameters":[{"constant":false,"id":60543,"mutability":"mutable","name":"a","nameLocation":"10745:1:148","nodeType":"VariableDeclaration","scope":60571,"src":"10740:6:148","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":60542,"name":"uint","nodeType":"ElementaryTypeName","src":"10740:4:148","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":60545,"mutability":"mutable","name":"b","nameLocation":"10753:1:148","nodeType":"VariableDeclaration","scope":60571,"src":"10748:6:148","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":60544,"name":"uint","nodeType":"ElementaryTypeName","src":"10748:4:148","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"10739:16:148"},"returnParameters":{"id":60547,"nodeType":"ParameterList","parameters":[],"src":"10765:0:148"},"scope":61196,"stateMutability":"nonpayable","virtual":false,"visibility":"internal"},{"id":60596,"nodeType":"FunctionDefinition","src":"10986:178:148","nodes":[],"body":{"id":60595,"nodeType":"Block","src":"11048:116:148","nodes":[],"statements":[{"condition":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":60582,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":60580,"name":"a","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":60573,"src":"11062:1:148","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":">=","rightExpression":{"id":60581,"name":"b","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":60575,"src":"11067:1:148","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"11062:6:148","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":60594,"nodeType":"IfStatement","src":"11058:100:148","trueBody":{"id":60593,"nodeType":"Block","src":"11070:88:148","statements":[{"eventCall":{"arguments":[{"hexValue":"4572726f72","id":60584,"isConstant":false,"isLValue":false,"isPure":true,"kind":"string","lValueRequested":false,"nodeType":"Literal","src":"11106:7:148","typeDescriptions":{"typeIdentifier":"t_stringliteral_e342daa49723ff3485f4ff5f755a17b8bc9c3c33bbd312ceee37c94eebfe45c1","typeString":"literal_string \"Error\""},"value":"Error"},{"id":60585,"name":"err","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":60577,"src":"11115:3:148","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":60583,"name":"log_named_string","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":59495,"src":"11089:16:148","typeDescriptions":{"typeIdentifier":"t_function_event_nonpayable$_t_string_memory_ptr_$_t_string_memory_ptr_$returns$__$","typeString":"function (string memory,string memory)"}},"id":60586,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"11089:30:148","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":60587,"nodeType":"EmitStatement","src":"11084:35:148"},{"expression":{"arguments":[{"id":60589,"name":"a","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":60573,"src":"11142:1:148","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},{"id":60590,"name":"b","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":60575,"src":"11145:1:148","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"},{"typeIdentifier":"t_uint256","typeString":"uint256"}],"id":60588,"name":"assertLt","nodeType":"Identifier","overloadedDeclarations":[60571,60596,60626,60651],"referencedDeclaration":60571,"src":"11133:8:148","typeDescriptions":{"typeIdentifier":"t_function_internal_nonpayable$_t_uint256_$_t_uint256_$returns$__$","typeString":"function (uint256,uint256)"}},"id":60591,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"11133:14:148","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":60592,"nodeType":"ExpressionStatement","src":"11133:14:148"}]}}]},"implemented":true,"kind":"function","modifiers":[],"name":"assertLt","nameLocation":"10995:8:148","parameters":{"id":60578,"nodeType":"ParameterList","parameters":[{"constant":false,"id":60573,"mutability":"mutable","name":"a","nameLocation":"11009:1:148","nodeType":"VariableDeclaration","scope":60596,"src":"11004:6:148","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":60572,"name":"uint","nodeType":"ElementaryTypeName","src":"11004:4:148","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":60575,"mutability":"mutable","name":"b","nameLocation":"11017:1:148","nodeType":"VariableDeclaration","scope":60596,"src":"11012:6:148","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":60574,"name":"uint","nodeType":"ElementaryTypeName","src":"11012:4:148","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":60577,"mutability":"mutable","name":"err","nameLocation":"11034:3:148","nodeType":"VariableDeclaration","scope":60596,"src":"11020:17:148","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_string_memory_ptr","typeString":"string"},"typeName":{"id":60576,"name":"string","nodeType":"ElementaryTypeName","src":"11020:6:148","typeDescriptions":{"typeIdentifier":"t_string_storage_ptr","typeString":"string"}},"visibility":"internal"}],"src":"11003:35:148"},"returnParameters":{"id":60579,"nodeType":"ParameterList","parameters":[],"src":"11048:0:148"},"scope":61196,"stateMutability":"nonpayable","virtual":false,"visibility":"internal"},{"id":60626,"nodeType":"FunctionDefinition","src":"11169:254:148","nodes":[],"body":{"id":60625,"nodeType":"Block","src":"11210:213:148","nodes":[],"statements":[{"condition":{"commonType":{"typeIdentifier":"t_int256","typeString":"int256"},"id":60605,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":60603,"name":"a","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":60598,"src":"11224:1:148","typeDescriptions":{"typeIdentifier":"t_int256","typeString":"int256"}},"nodeType":"BinaryOperation","operator":">=","rightExpression":{"id":60604,"name":"b","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":60600,"src":"11229:1:148","typeDescriptions":{"typeIdentifier":"t_int256","typeString":"int256"}},"src":"11224:6:148","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":60624,"nodeType":"IfStatement","src":"11220:197:148","trueBody":{"id":60623,"nodeType":"Block","src":"11232:185:148","statements":[{"eventCall":{"arguments":[{"hexValue":"4572726f723a2061203c2062206e6f7420736174697366696564205b696e745d","id":60607,"isConstant":false,"isLValue":false,"isPure":true,"kind":"string","lValueRequested":false,"nodeType":"Literal","src":"11255:34:148","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":60606,"name":"log","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":59415,"src":"11251:3:148","typeDescriptions":{"typeIdentifier":"t_function_event_nonpayable$_t_string_memory_ptr_$returns$__$","typeString":"function (string memory)"}},"id":60608,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"11251:39:148","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":60609,"nodeType":"EmitStatement","src":"11246:44:148"},{"eventCall":{"arguments":[{"hexValue":"202056616c75652061","id":60611,"isConstant":false,"isLValue":false,"isPure":true,"kind":"string","lValueRequested":false,"nodeType":"Literal","src":"11323:11:148","typeDescriptions":{"typeIdentifier":"t_stringliteral_c592b529b874569f165479a5a4380dedf000796f11e04035f76bfa7310b31d26","typeString":"literal_string \"  Value a\""},"value":"  Value a"},{"id":60612,"name":"a","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":60598,"src":"11336:1:148","typeDescriptions":{"typeIdentifier":"t_int256","typeString":"int256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_stringliteral_c592b529b874569f165479a5a4380dedf000796f11e04035f76bfa7310b31d26","typeString":"literal_string \"  Value a\""},{"typeIdentifier":"t_int256","typeString":"int256"}],"id":60610,"name":"log_named_int","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":59477,"src":"11309:13:148","typeDescriptions":{"typeIdentifier":"t_function_event_nonpayable$_t_string_memory_ptr_$_t_int256_$returns$__$","typeString":"function (string memory,int256)"}},"id":60613,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"11309:29:148","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":60614,"nodeType":"EmitStatement","src":"11304:34:148"},{"eventCall":{"arguments":[{"hexValue":"202056616c75652062","id":60616,"isConstant":false,"isLValue":false,"isPure":true,"kind":"string","lValueRequested":false,"nodeType":"Literal","src":"11371:11:148","typeDescriptions":{"typeIdentifier":"t_stringliteral_e4b1d025132960c3fb1a582cf2366864dc416744d1b9770aa69fe3749623ebc3","typeString":"literal_string \"  Value b\""},"value":"  Value b"},{"id":60617,"name":"b","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":60600,"src":"11384:1:148","typeDescriptions":{"typeIdentifier":"t_int256","typeString":"int256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_stringliteral_e4b1d025132960c3fb1a582cf2366864dc416744d1b9770aa69fe3749623ebc3","typeString":"literal_string \"  Value b\""},{"typeIdentifier":"t_int256","typeString":"int256"}],"id":60615,"name":"log_named_int","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":59477,"src":"11357:13:148","typeDescriptions":{"typeIdentifier":"t_function_event_nonpayable$_t_string_memory_ptr_$_t_int256_$returns$__$","typeString":"function (string memory,int256)"}},"id":60618,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"11357:29:148","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":60619,"nodeType":"EmitStatement","src":"11352:34:148"},{"expression":{"arguments":[],"expression":{"argumentTypes":[],"id":60620,"name":"fail","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":59626,"src":"11400:4:148","typeDescriptions":{"typeIdentifier":"t_function_internal_nonpayable$__$returns$__$","typeString":"function ()"}},"id":60621,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"11400:6:148","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":60622,"nodeType":"ExpressionStatement","src":"11400:6:148"}]}}]},"implemented":true,"kind":"function","modifiers":[],"name":"assertLt","nameLocation":"11178:8:148","parameters":{"id":60601,"nodeType":"ParameterList","parameters":[{"constant":false,"id":60598,"mutability":"mutable","name":"a","nameLocation":"11191:1:148","nodeType":"VariableDeclaration","scope":60626,"src":"11187:5:148","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_int256","typeString":"int256"},"typeName":{"id":60597,"name":"int","nodeType":"ElementaryTypeName","src":"11187:3:148","typeDescriptions":{"typeIdentifier":"t_int256","typeString":"int256"}},"visibility":"internal"},{"constant":false,"id":60600,"mutability":"mutable","name":"b","nameLocation":"11198:1:148","nodeType":"VariableDeclaration","scope":60626,"src":"11194:5:148","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_int256","typeString":"int256"},"typeName":{"id":60599,"name":"int","nodeType":"ElementaryTypeName","src":"11194:3:148","typeDescriptions":{"typeIdentifier":"t_int256","typeString":"int256"}},"visibility":"internal"}],"src":"11186:14:148"},"returnParameters":{"id":60602,"nodeType":"ParameterList","parameters":[],"src":"11210:0:148"},"scope":61196,"stateMutability":"nonpayable","virtual":false,"visibility":"internal"},{"id":60651,"nodeType":"FunctionDefinition","src":"11428:176:148","nodes":[],"body":{"id":60650,"nodeType":"Block","src":"11488:116:148","nodes":[],"statements":[{"condition":{"commonType":{"typeIdentifier":"t_int256","typeString":"int256"},"id":60637,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":60635,"name":"a","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":60628,"src":"11502:1:148","typeDescriptions":{"typeIdentifier":"t_int256","typeString":"int256"}},"nodeType":"BinaryOperation","operator":">=","rightExpression":{"id":60636,"name":"b","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":60630,"src":"11507:1:148","typeDescriptions":{"typeIdentifier":"t_int256","typeString":"int256"}},"src":"11502:6:148","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":60649,"nodeType":"IfStatement","src":"11498:100:148","trueBody":{"id":60648,"nodeType":"Block","src":"11510:88:148","statements":[{"eventCall":{"arguments":[{"hexValue":"4572726f72","id":60639,"isConstant":false,"isLValue":false,"isPure":true,"kind":"string","lValueRequested":false,"nodeType":"Literal","src":"11546:7:148","typeDescriptions":{"typeIdentifier":"t_stringliteral_e342daa49723ff3485f4ff5f755a17b8bc9c3c33bbd312ceee37c94eebfe45c1","typeString":"literal_string \"Error\""},"value":"Error"},{"id":60640,"name":"err","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":60632,"src":"11555:3:148","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":60638,"name":"log_named_string","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":59495,"src":"11529:16:148","typeDescriptions":{"typeIdentifier":"t_function_event_nonpayable$_t_string_memory_ptr_$_t_string_memory_ptr_$returns$__$","typeString":"function (string memory,string memory)"}},"id":60641,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"11529:30:148","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":60642,"nodeType":"EmitStatement","src":"11524:35:148"},{"expression":{"arguments":[{"id":60644,"name":"a","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":60628,"src":"11582:1:148","typeDescriptions":{"typeIdentifier":"t_int256","typeString":"int256"}},{"id":60645,"name":"b","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":60630,"src":"11585:1:148","typeDescriptions":{"typeIdentifier":"t_int256","typeString":"int256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_int256","typeString":"int256"},{"typeIdentifier":"t_int256","typeString":"int256"}],"id":60643,"name":"assertLt","nodeType":"Identifier","overloadedDeclarations":[60571,60596,60626,60651],"referencedDeclaration":60626,"src":"11573:8:148","typeDescriptions":{"typeIdentifier":"t_function_internal_nonpayable$_t_int256_$_t_int256_$returns$__$","typeString":"function (int256,int256)"}},"id":60646,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"11573:14:148","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":60647,"nodeType":"ExpressionStatement","src":"11573:14:148"}]}}]},"implemented":true,"kind":"function","modifiers":[],"name":"assertLt","nameLocation":"11437:8:148","parameters":{"id":60633,"nodeType":"ParameterList","parameters":[{"constant":false,"id":60628,"mutability":"mutable","name":"a","nameLocation":"11450:1:148","nodeType":"VariableDeclaration","scope":60651,"src":"11446:5:148","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_int256","typeString":"int256"},"typeName":{"id":60627,"name":"int","nodeType":"ElementaryTypeName","src":"11446:3:148","typeDescriptions":{"typeIdentifier":"t_int256","typeString":"int256"}},"visibility":"internal"},{"constant":false,"id":60630,"mutability":"mutable","name":"b","nameLocation":"11457:1:148","nodeType":"VariableDeclaration","scope":60651,"src":"11453:5:148","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_int256","typeString":"int256"},"typeName":{"id":60629,"name":"int","nodeType":"ElementaryTypeName","src":"11453:3:148","typeDescriptions":{"typeIdentifier":"t_int256","typeString":"int256"}},"visibility":"internal"},{"constant":false,"id":60632,"mutability":"mutable","name":"err","nameLocation":"11474:3:148","nodeType":"VariableDeclaration","scope":60651,"src":"11460:17:148","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_string_memory_ptr","typeString":"string"},"typeName":{"id":60631,"name":"string","nodeType":"ElementaryTypeName","src":"11460:6:148","typeDescriptions":{"typeIdentifier":"t_string_storage_ptr","typeString":"string"}},"visibility":"internal"}],"src":"11445:33:148"},"returnParameters":{"id":60634,"nodeType":"ParameterList","parameters":[],"src":"11488:0:148"},"scope":61196,"stateMutability":"nonpayable","virtual":false,"visibility":"internal"},{"id":60685,"nodeType":"FunctionDefinition","src":"11609:320:148","nodes":[],"body":{"id":60684,"nodeType":"Block","src":"11672:257:148","nodes":[],"statements":[{"condition":{"commonType":{"typeIdentifier":"t_int256","typeString":"int256"},"id":60662,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":60660,"name":"a","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":60653,"src":"11686:1:148","typeDescriptions":{"typeIdentifier":"t_int256","typeString":"int256"}},"nodeType":"BinaryOperation","operator":">=","rightExpression":{"id":60661,"name":"b","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":60655,"src":"11691:1:148","typeDescriptions":{"typeIdentifier":"t_int256","typeString":"int256"}},"src":"11686:6:148","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":60683,"nodeType":"IfStatement","src":"11682:241:148","trueBody":{"id":60682,"nodeType":"Block","src":"11694:229:148","statements":[{"eventCall":{"arguments":[{"hexValue":"4572726f723a2061203c2062206e6f7420736174697366696564205b646563696d616c20696e745d","id":60664,"isConstant":false,"isLValue":false,"isPure":true,"kind":"string","lValueRequested":false,"nodeType":"Literal","src":"11717:42:148","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":60663,"name":"log","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":59415,"src":"11713:3:148","typeDescriptions":{"typeIdentifier":"t_function_event_nonpayable$_t_string_memory_ptr_$returns$__$","typeString":"function (string memory)"}},"id":60665,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"11713:47:148","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":60666,"nodeType":"EmitStatement","src":"11708:52:148"},{"eventCall":{"arguments":[{"hexValue":"202056616c75652061","id":60668,"isConstant":false,"isLValue":false,"isPure":true,"kind":"string","lValueRequested":false,"nodeType":"Literal","src":"11801:11:148","typeDescriptions":{"typeIdentifier":"t_stringliteral_c592b529b874569f165479a5a4380dedf000796f11e04035f76bfa7310b31d26","typeString":"literal_string \"  Value a\""},"value":"  Value a"},{"id":60669,"name":"a","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":60653,"src":"11814:1:148","typeDescriptions":{"typeIdentifier":"t_int256","typeString":"int256"}},{"id":60670,"name":"decimals","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":60657,"src":"11817:8:148","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":60667,"name":"log_named_decimal_int","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":59463,"src":"11779:21:148","typeDescriptions":{"typeIdentifier":"t_function_event_nonpayable$_t_string_memory_ptr_$_t_int256_$_t_uint256_$returns$__$","typeString":"function (string memory,int256,uint256)"}},"id":60671,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"11779:47:148","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":60672,"nodeType":"EmitStatement","src":"11774:52:148"},{"eventCall":{"arguments":[{"hexValue":"202056616c75652062","id":60674,"isConstant":false,"isLValue":false,"isPure":true,"kind":"string","lValueRequested":false,"nodeType":"Literal","src":"11867:11:148","typeDescriptions":{"typeIdentifier":"t_stringliteral_e4b1d025132960c3fb1a582cf2366864dc416744d1b9770aa69fe3749623ebc3","typeString":"literal_string \"  Value b\""},"value":"  Value b"},{"id":60675,"name":"b","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":60655,"src":"11880:1:148","typeDescriptions":{"typeIdentifier":"t_int256","typeString":"int256"}},{"id":60676,"name":"decimals","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":60657,"src":"11883:8:148","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":60673,"name":"log_named_decimal_int","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":59463,"src":"11845:21:148","typeDescriptions":{"typeIdentifier":"t_function_event_nonpayable$_t_string_memory_ptr_$_t_int256_$_t_uint256_$returns$__$","typeString":"function (string memory,int256,uint256)"}},"id":60677,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"11845:47:148","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":60678,"nodeType":"EmitStatement","src":"11840:52:148"},{"expression":{"arguments":[],"expression":{"argumentTypes":[],"id":60679,"name":"fail","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":59626,"src":"11906:4:148","typeDescriptions":{"typeIdentifier":"t_function_internal_nonpayable$__$returns$__$","typeString":"function ()"}},"id":60680,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"11906:6:148","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":60681,"nodeType":"ExpressionStatement","src":"11906:6:148"}]}}]},"implemented":true,"kind":"function","modifiers":[],"name":"assertLtDecimal","nameLocation":"11618:15:148","parameters":{"id":60658,"nodeType":"ParameterList","parameters":[{"constant":false,"id":60653,"mutability":"mutable","name":"a","nameLocation":"11638:1:148","nodeType":"VariableDeclaration","scope":60685,"src":"11634:5:148","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_int256","typeString":"int256"},"typeName":{"id":60652,"name":"int","nodeType":"ElementaryTypeName","src":"11634:3:148","typeDescriptions":{"typeIdentifier":"t_int256","typeString":"int256"}},"visibility":"internal"},{"constant":false,"id":60655,"mutability":"mutable","name":"b","nameLocation":"11645:1:148","nodeType":"VariableDeclaration","scope":60685,"src":"11641:5:148","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_int256","typeString":"int256"},"typeName":{"id":60654,"name":"int","nodeType":"ElementaryTypeName","src":"11641:3:148","typeDescriptions":{"typeIdentifier":"t_int256","typeString":"int256"}},"visibility":"internal"},{"constant":false,"id":60657,"mutability":"mutable","name":"decimals","nameLocation":"11653:8:148","nodeType":"VariableDeclaration","scope":60685,"src":"11648:13:148","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":60656,"name":"uint","nodeType":"ElementaryTypeName","src":"11648:4:148","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"11633:29:148"},"returnParameters":{"id":60659,"nodeType":"ParameterList","parameters":[],"src":"11672:0:148"},"scope":61196,"stateMutability":"nonpayable","virtual":false,"visibility":"internal"},{"id":60713,"nodeType":"FunctionDefinition","src":"11934:215:148","nodes":[],"body":{"id":60712,"nodeType":"Block","src":"12016:133:148","nodes":[],"statements":[{"condition":{"commonType":{"typeIdentifier":"t_int256","typeString":"int256"},"id":60698,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":60696,"name":"a","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":60687,"src":"12030:1:148","typeDescriptions":{"typeIdentifier":"t_int256","typeString":"int256"}},"nodeType":"BinaryOperation","operator":">=","rightExpression":{"id":60697,"name":"b","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":60689,"src":"12035:1:148","typeDescriptions":{"typeIdentifier":"t_int256","typeString":"int256"}},"src":"12030:6:148","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":60711,"nodeType":"IfStatement","src":"12026:117:148","trueBody":{"id":60710,"nodeType":"Block","src":"12038:105:148","statements":[{"eventCall":{"arguments":[{"hexValue":"4572726f72","id":60700,"isConstant":false,"isLValue":false,"isPure":true,"kind":"string","lValueRequested":false,"nodeType":"Literal","src":"12074:7:148","typeDescriptions":{"typeIdentifier":"t_stringliteral_e342daa49723ff3485f4ff5f755a17b8bc9c3c33bbd312ceee37c94eebfe45c1","typeString":"literal_string \"Error\""},"value":"Error"},{"id":60701,"name":"err","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":60693,"src":"12083:3:148","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":60699,"name":"log_named_string","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":59495,"src":"12057:16:148","typeDescriptions":{"typeIdentifier":"t_function_event_nonpayable$_t_string_memory_ptr_$_t_string_memory_ptr_$returns$__$","typeString":"function (string memory,string memory)"}},"id":60702,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"12057:30:148","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":60703,"nodeType":"EmitStatement","src":"12052:35:148"},{"expression":{"arguments":[{"id":60705,"name":"a","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":60687,"src":"12117:1:148","typeDescriptions":{"typeIdentifier":"t_int256","typeString":"int256"}},{"id":60706,"name":"b","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":60689,"src":"12120:1:148","typeDescriptions":{"typeIdentifier":"t_int256","typeString":"int256"}},{"id":60707,"name":"decimals","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":60691,"src":"12123:8:148","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_int256","typeString":"int256"},{"typeIdentifier":"t_int256","typeString":"int256"},{"typeIdentifier":"t_uint256","typeString":"uint256"}],"id":60704,"name":"assertLtDecimal","nodeType":"Identifier","overloadedDeclarations":[60685,60713,60747,60775],"referencedDeclaration":60685,"src":"12101:15:148","typeDescriptions":{"typeIdentifier":"t_function_internal_nonpayable$_t_int256_$_t_int256_$_t_uint256_$returns$__$","typeString":"function (int256,int256,uint256)"}},"id":60708,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"12101:31:148","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":60709,"nodeType":"ExpressionStatement","src":"12101:31:148"}]}}]},"implemented":true,"kind":"function","modifiers":[],"name":"assertLtDecimal","nameLocation":"11943:15:148","parameters":{"id":60694,"nodeType":"ParameterList","parameters":[{"constant":false,"id":60687,"mutability":"mutable","name":"a","nameLocation":"11963:1:148","nodeType":"VariableDeclaration","scope":60713,"src":"11959:5:148","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_int256","typeString":"int256"},"typeName":{"id":60686,"name":"int","nodeType":"ElementaryTypeName","src":"11959:3:148","typeDescriptions":{"typeIdentifier":"t_int256","typeString":"int256"}},"visibility":"internal"},{"constant":false,"id":60689,"mutability":"mutable","name":"b","nameLocation":"11970:1:148","nodeType":"VariableDeclaration","scope":60713,"src":"11966:5:148","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_int256","typeString":"int256"},"typeName":{"id":60688,"name":"int","nodeType":"ElementaryTypeName","src":"11966:3:148","typeDescriptions":{"typeIdentifier":"t_int256","typeString":"int256"}},"visibility":"internal"},{"constant":false,"id":60691,"mutability":"mutable","name":"decimals","nameLocation":"11978:8:148","nodeType":"VariableDeclaration","scope":60713,"src":"11973:13:148","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":60690,"name":"uint","nodeType":"ElementaryTypeName","src":"11973:4:148","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":60693,"mutability":"mutable","name":"err","nameLocation":"12002:3:148","nodeType":"VariableDeclaration","scope":60713,"src":"11988:17:148","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_string_memory_ptr","typeString":"string"},"typeName":{"id":60692,"name":"string","nodeType":"ElementaryTypeName","src":"11988:6:148","typeDescriptions":{"typeIdentifier":"t_string_storage_ptr","typeString":"string"}},"visibility":"internal"}],"src":"11958:48:148"},"returnParameters":{"id":60695,"nodeType":"ParameterList","parameters":[],"src":"12016:0:148"},"scope":61196,"stateMutability":"nonpayable","virtual":false,"visibility":"internal"},{"id":60747,"nodeType":"FunctionDefinition","src":"12154:325:148","nodes":[],"body":{"id":60746,"nodeType":"Block","src":"12219:260:148","nodes":[],"statements":[{"condition":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":60724,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":60722,"name":"a","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":60715,"src":"12233:1:148","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":">=","rightExpression":{"id":60723,"name":"b","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":60717,"src":"12238:1:148","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"12233:6:148","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":60745,"nodeType":"IfStatement","src":"12229:244:148","trueBody":{"id":60744,"nodeType":"Block","src":"12241:232:148","statements":[{"eventCall":{"arguments":[{"hexValue":"4572726f723a2061203c2062206e6f7420736174697366696564205b646563696d616c2075696e745d","id":60726,"isConstant":false,"isLValue":false,"isPure":true,"kind":"string","lValueRequested":false,"nodeType":"Literal","src":"12264:43:148","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":60725,"name":"log","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":59415,"src":"12260:3:148","typeDescriptions":{"typeIdentifier":"t_function_event_nonpayable$_t_string_memory_ptr_$returns$__$","typeString":"function (string memory)"}},"id":60727,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"12260:48:148","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":60728,"nodeType":"EmitStatement","src":"12255:53:148"},{"eventCall":{"arguments":[{"hexValue":"202056616c75652061","id":60730,"isConstant":false,"isLValue":false,"isPure":true,"kind":"string","lValueRequested":false,"nodeType":"Literal","src":"12350:11:148","typeDescriptions":{"typeIdentifier":"t_stringliteral_c592b529b874569f165479a5a4380dedf000796f11e04035f76bfa7310b31d26","typeString":"literal_string \"  Value a\""},"value":"  Value a"},{"id":60731,"name":"a","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":60715,"src":"12363:1:148","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},{"id":60732,"name":"decimals","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":60719,"src":"12366:8:148","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":60729,"name":"log_named_decimal_uint","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":59471,"src":"12327:22:148","typeDescriptions":{"typeIdentifier":"t_function_event_nonpayable$_t_string_memory_ptr_$_t_uint256_$_t_uint256_$returns$__$","typeString":"function (string memory,uint256,uint256)"}},"id":60733,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"12327:48:148","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":60734,"nodeType":"EmitStatement","src":"12322:53:148"},{"eventCall":{"arguments":[{"hexValue":"202056616c75652062","id":60736,"isConstant":false,"isLValue":false,"isPure":true,"kind":"string","lValueRequested":false,"nodeType":"Literal","src":"12417:11:148","typeDescriptions":{"typeIdentifier":"t_stringliteral_e4b1d025132960c3fb1a582cf2366864dc416744d1b9770aa69fe3749623ebc3","typeString":"literal_string \"  Value b\""},"value":"  Value b"},{"id":60737,"name":"b","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":60717,"src":"12430:1:148","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},{"id":60738,"name":"decimals","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":60719,"src":"12433:8:148","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":60735,"name":"log_named_decimal_uint","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":59471,"src":"12394:22:148","typeDescriptions":{"typeIdentifier":"t_function_event_nonpayable$_t_string_memory_ptr_$_t_uint256_$_t_uint256_$returns$__$","typeString":"function (string memory,uint256,uint256)"}},"id":60739,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"12394:48:148","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":60740,"nodeType":"EmitStatement","src":"12389:53:148"},{"expression":{"arguments":[],"expression":{"argumentTypes":[],"id":60741,"name":"fail","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":59626,"src":"12456:4:148","typeDescriptions":{"typeIdentifier":"t_function_internal_nonpayable$__$returns$__$","typeString":"function ()"}},"id":60742,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"12456:6:148","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":60743,"nodeType":"ExpressionStatement","src":"12456:6:148"}]}}]},"implemented":true,"kind":"function","modifiers":[],"name":"assertLtDecimal","nameLocation":"12163:15:148","parameters":{"id":60720,"nodeType":"ParameterList","parameters":[{"constant":false,"id":60715,"mutability":"mutable","name":"a","nameLocation":"12184:1:148","nodeType":"VariableDeclaration","scope":60747,"src":"12179:6:148","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":60714,"name":"uint","nodeType":"ElementaryTypeName","src":"12179:4:148","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":60717,"mutability":"mutable","name":"b","nameLocation":"12192:1:148","nodeType":"VariableDeclaration","scope":60747,"src":"12187:6:148","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":60716,"name":"uint","nodeType":"ElementaryTypeName","src":"12187:4:148","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":60719,"mutability":"mutable","name":"decimals","nameLocation":"12200:8:148","nodeType":"VariableDeclaration","scope":60747,"src":"12195:13:148","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":60718,"name":"uint","nodeType":"ElementaryTypeName","src":"12195:4:148","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"12178:31:148"},"returnParameters":{"id":60721,"nodeType":"ParameterList","parameters":[],"src":"12219:0:148"},"scope":61196,"stateMutability":"nonpayable","virtual":false,"visibility":"internal"},{"id":60775,"nodeType":"FunctionDefinition","src":"12484:217:148","nodes":[],"body":{"id":60774,"nodeType":"Block","src":"12568:133:148","nodes":[],"statements":[{"condition":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":60760,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":60758,"name":"a","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":60749,"src":"12582:1:148","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":">=","rightExpression":{"id":60759,"name":"b","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":60751,"src":"12587:1:148","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"12582:6:148","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":60773,"nodeType":"IfStatement","src":"12578:117:148","trueBody":{"id":60772,"nodeType":"Block","src":"12590:105:148","statements":[{"eventCall":{"arguments":[{"hexValue":"4572726f72","id":60762,"isConstant":false,"isLValue":false,"isPure":true,"kind":"string","lValueRequested":false,"nodeType":"Literal","src":"12626:7:148","typeDescriptions":{"typeIdentifier":"t_stringliteral_e342daa49723ff3485f4ff5f755a17b8bc9c3c33bbd312ceee37c94eebfe45c1","typeString":"literal_string \"Error\""},"value":"Error"},{"id":60763,"name":"err","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":60755,"src":"12635:3:148","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":60761,"name":"log_named_string","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":59495,"src":"12609:16:148","typeDescriptions":{"typeIdentifier":"t_function_event_nonpayable$_t_string_memory_ptr_$_t_string_memory_ptr_$returns$__$","typeString":"function (string memory,string memory)"}},"id":60764,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"12609:30:148","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":60765,"nodeType":"EmitStatement","src":"12604:35:148"},{"expression":{"arguments":[{"id":60767,"name":"a","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":60749,"src":"12669:1:148","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},{"id":60768,"name":"b","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":60751,"src":"12672:1:148","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},{"id":60769,"name":"decimals","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":60753,"src":"12675:8:148","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"},{"typeIdentifier":"t_uint256","typeString":"uint256"},{"typeIdentifier":"t_uint256","typeString":"uint256"}],"id":60766,"name":"assertLtDecimal","nodeType":"Identifier","overloadedDeclarations":[60685,60713,60747,60775],"referencedDeclaration":60747,"src":"12653:15:148","typeDescriptions":{"typeIdentifier":"t_function_internal_nonpayable$_t_uint256_$_t_uint256_$_t_uint256_$returns$__$","typeString":"function (uint256,uint256,uint256)"}},"id":60770,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"12653:31:148","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":60771,"nodeType":"ExpressionStatement","src":"12653:31:148"}]}}]},"implemented":true,"kind":"function","modifiers":[],"name":"assertLtDecimal","nameLocation":"12493:15:148","parameters":{"id":60756,"nodeType":"ParameterList","parameters":[{"constant":false,"id":60749,"mutability":"mutable","name":"a","nameLocation":"12514:1:148","nodeType":"VariableDeclaration","scope":60775,"src":"12509:6:148","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":60748,"name":"uint","nodeType":"ElementaryTypeName","src":"12509:4:148","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":60751,"mutability":"mutable","name":"b","nameLocation":"12522:1:148","nodeType":"VariableDeclaration","scope":60775,"src":"12517:6:148","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":60750,"name":"uint","nodeType":"ElementaryTypeName","src":"12517:4:148","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":60753,"mutability":"mutable","name":"decimals","nameLocation":"12530:8:148","nodeType":"VariableDeclaration","scope":60775,"src":"12525:13:148","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":60752,"name":"uint","nodeType":"ElementaryTypeName","src":"12525:4:148","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":60755,"mutability":"mutable","name":"err","nameLocation":"12554:3:148","nodeType":"VariableDeclaration","scope":60775,"src":"12540:17:148","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_string_memory_ptr","typeString":"string"},"typeName":{"id":60754,"name":"string","nodeType":"ElementaryTypeName","src":"12540:6:148","typeDescriptions":{"typeIdentifier":"t_string_storage_ptr","typeString":"string"}},"visibility":"internal"}],"src":"12508:50:148"},"returnParameters":{"id":60757,"nodeType":"ParameterList","parameters":[],"src":"12568:0:148"},"scope":61196,"stateMutability":"nonpayable","virtual":false,"visibility":"internal"},{"id":60805,"nodeType":"FunctionDefinition","src":"12707:259:148","nodes":[],"body":{"id":60804,"nodeType":"Block","src":"12750:216:148","nodes":[],"statements":[{"condition":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":60784,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":60782,"name":"a","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":60777,"src":"12764:1:148","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":">","rightExpression":{"id":60783,"name":"b","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":60779,"src":"12768:1:148","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"12764:5:148","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":60803,"nodeType":"IfStatement","src":"12760:200:148","trueBody":{"id":60802,"nodeType":"Block","src":"12771:189:148","statements":[{"eventCall":{"arguments":[{"hexValue":"4572726f723a2061203c3d2062206e6f7420736174697366696564205b75696e745d","id":60786,"isConstant":false,"isLValue":false,"isPure":true,"kind":"string","lValueRequested":false,"nodeType":"Literal","src":"12794:36:148","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":60785,"name":"log","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":59415,"src":"12790:3:148","typeDescriptions":{"typeIdentifier":"t_function_event_nonpayable$_t_string_memory_ptr_$returns$__$","typeString":"function (string memory)"}},"id":60787,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"12790:41:148","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":60788,"nodeType":"EmitStatement","src":"12785:46:148"},{"eventCall":{"arguments":[{"hexValue":"202056616c75652061","id":60790,"isConstant":false,"isLValue":false,"isPure":true,"kind":"string","lValueRequested":false,"nodeType":"Literal","src":"12865:11:148","typeDescriptions":{"typeIdentifier":"t_stringliteral_c592b529b874569f165479a5a4380dedf000796f11e04035f76bfa7310b31d26","typeString":"literal_string \"  Value a\""},"value":"  Value a"},{"id":60791,"name":"a","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":60777,"src":"12878:1:148","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_stringliteral_c592b529b874569f165479a5a4380dedf000796f11e04035f76bfa7310b31d26","typeString":"literal_string \"  Value a\""},{"typeIdentifier":"t_uint256","typeString":"uint256"}],"id":60789,"name":"log_named_uint","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":59483,"src":"12850:14:148","typeDescriptions":{"typeIdentifier":"t_function_event_nonpayable$_t_string_memory_ptr_$_t_uint256_$returns$__$","typeString":"function (string memory,uint256)"}},"id":60792,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"12850:30:148","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":60793,"nodeType":"EmitStatement","src":"12845:35:148"},{"eventCall":{"arguments":[{"hexValue":"202056616c75652062","id":60795,"isConstant":false,"isLValue":false,"isPure":true,"kind":"string","lValueRequested":false,"nodeType":"Literal","src":"12914:11:148","typeDescriptions":{"typeIdentifier":"t_stringliteral_e4b1d025132960c3fb1a582cf2366864dc416744d1b9770aa69fe3749623ebc3","typeString":"literal_string \"  Value b\""},"value":"  Value b"},{"id":60796,"name":"b","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":60779,"src":"12927:1:148","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_stringliteral_e4b1d025132960c3fb1a582cf2366864dc416744d1b9770aa69fe3749623ebc3","typeString":"literal_string \"  Value b\""},{"typeIdentifier":"t_uint256","typeString":"uint256"}],"id":60794,"name":"log_named_uint","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":59483,"src":"12899:14:148","typeDescriptions":{"typeIdentifier":"t_function_event_nonpayable$_t_string_memory_ptr_$_t_uint256_$returns$__$","typeString":"function (string memory,uint256)"}},"id":60797,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"12899:30:148","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":60798,"nodeType":"EmitStatement","src":"12894:35:148"},{"expression":{"arguments":[],"expression":{"argumentTypes":[],"id":60799,"name":"fail","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":59626,"src":"12943:4:148","typeDescriptions":{"typeIdentifier":"t_function_internal_nonpayable$__$returns$__$","typeString":"function ()"}},"id":60800,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"12943:6:148","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":60801,"nodeType":"ExpressionStatement","src":"12943:6:148"}]}}]},"implemented":true,"kind":"function","modifiers":[],"name":"assertLe","nameLocation":"12716:8:148","parameters":{"id":60780,"nodeType":"ParameterList","parameters":[{"constant":false,"id":60777,"mutability":"mutable","name":"a","nameLocation":"12730:1:148","nodeType":"VariableDeclaration","scope":60805,"src":"12725:6:148","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":60776,"name":"uint","nodeType":"ElementaryTypeName","src":"12725:4:148","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":60779,"mutability":"mutable","name":"b","nameLocation":"12738:1:148","nodeType":"VariableDeclaration","scope":60805,"src":"12733:6:148","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":60778,"name":"uint","nodeType":"ElementaryTypeName","src":"12733:4:148","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"12724:16:148"},"returnParameters":{"id":60781,"nodeType":"ParameterList","parameters":[],"src":"12750:0:148"},"scope":61196,"stateMutability":"nonpayable","virtual":false,"visibility":"internal"},{"id":60830,"nodeType":"FunctionDefinition","src":"12971:177:148","nodes":[],"body":{"id":60829,"nodeType":"Block","src":"13033:115:148","nodes":[],"statements":[{"condition":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":60816,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":60814,"name":"a","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":60807,"src":"13047:1:148","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":">","rightExpression":{"id":60815,"name":"b","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":60809,"src":"13051:1:148","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"13047:5:148","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":60828,"nodeType":"IfStatement","src":"13043:99:148","trueBody":{"id":60827,"nodeType":"Block","src":"13054:88:148","statements":[{"eventCall":{"arguments":[{"hexValue":"4572726f72","id":60818,"isConstant":false,"isLValue":false,"isPure":true,"kind":"string","lValueRequested":false,"nodeType":"Literal","src":"13090:7:148","typeDescriptions":{"typeIdentifier":"t_stringliteral_e342daa49723ff3485f4ff5f755a17b8bc9c3c33bbd312ceee37c94eebfe45c1","typeString":"literal_string \"Error\""},"value":"Error"},{"id":60819,"name":"err","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":60811,"src":"13099:3:148","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":60817,"name":"log_named_string","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":59495,"src":"13073:16:148","typeDescriptions":{"typeIdentifier":"t_function_event_nonpayable$_t_string_memory_ptr_$_t_string_memory_ptr_$returns$__$","typeString":"function (string memory,string memory)"}},"id":60820,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"13073:30:148","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":60821,"nodeType":"EmitStatement","src":"13068:35:148"},{"expression":{"arguments":[{"id":60823,"name":"a","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":60807,"src":"13126:1:148","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},{"id":60824,"name":"b","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":60809,"src":"13129:1:148","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"},{"typeIdentifier":"t_uint256","typeString":"uint256"}],"id":60822,"name":"assertLe","nodeType":"Identifier","overloadedDeclarations":[60805,60830,60860,60885],"referencedDeclaration":60805,"src":"13117:8:148","typeDescriptions":{"typeIdentifier":"t_function_internal_nonpayable$_t_uint256_$_t_uint256_$returns$__$","typeString":"function (uint256,uint256)"}},"id":60825,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"13117:14:148","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":60826,"nodeType":"ExpressionStatement","src":"13117:14:148"}]}}]},"implemented":true,"kind":"function","modifiers":[],"name":"assertLe","nameLocation":"12980:8:148","parameters":{"id":60812,"nodeType":"ParameterList","parameters":[{"constant":false,"id":60807,"mutability":"mutable","name":"a","nameLocation":"12994:1:148","nodeType":"VariableDeclaration","scope":60830,"src":"12989:6:148","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":60806,"name":"uint","nodeType":"ElementaryTypeName","src":"12989:4:148","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":60809,"mutability":"mutable","name":"b","nameLocation":"13002:1:148","nodeType":"VariableDeclaration","scope":60830,"src":"12997:6:148","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":60808,"name":"uint","nodeType":"ElementaryTypeName","src":"12997:4:148","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":60811,"mutability":"mutable","name":"err","nameLocation":"13019:3:148","nodeType":"VariableDeclaration","scope":60830,"src":"13005:17:148","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_string_memory_ptr","typeString":"string"},"typeName":{"id":60810,"name":"string","nodeType":"ElementaryTypeName","src":"13005:6:148","typeDescriptions":{"typeIdentifier":"t_string_storage_ptr","typeString":"string"}},"visibility":"internal"}],"src":"12988:35:148"},"returnParameters":{"id":60813,"nodeType":"ParameterList","parameters":[],"src":"13033:0:148"},"scope":61196,"stateMutability":"nonpayable","virtual":false,"visibility":"internal"},{"id":60860,"nodeType":"FunctionDefinition","src":"13153:254:148","nodes":[],"body":{"id":60859,"nodeType":"Block","src":"13194:213:148","nodes":[],"statements":[{"condition":{"commonType":{"typeIdentifier":"t_int256","typeString":"int256"},"id":60839,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":60837,"name":"a","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":60832,"src":"13208:1:148","typeDescriptions":{"typeIdentifier":"t_int256","typeString":"int256"}},"nodeType":"BinaryOperation","operator":">","rightExpression":{"id":60838,"name":"b","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":60834,"src":"13212:1:148","typeDescriptions":{"typeIdentifier":"t_int256","typeString":"int256"}},"src":"13208:5:148","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":60858,"nodeType":"IfStatement","src":"13204:197:148","trueBody":{"id":60857,"nodeType":"Block","src":"13215:186:148","statements":[{"eventCall":{"arguments":[{"hexValue":"4572726f723a2061203c3d2062206e6f7420736174697366696564205b696e745d","id":60841,"isConstant":false,"isLValue":false,"isPure":true,"kind":"string","lValueRequested":false,"nodeType":"Literal","src":"13238:35:148","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":60840,"name":"log","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":59415,"src":"13234:3:148","typeDescriptions":{"typeIdentifier":"t_function_event_nonpayable$_t_string_memory_ptr_$returns$__$","typeString":"function (string memory)"}},"id":60842,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"13234:40:148","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":60843,"nodeType":"EmitStatement","src":"13229:45:148"},{"eventCall":{"arguments":[{"hexValue":"202056616c75652061","id":60845,"isConstant":false,"isLValue":false,"isPure":true,"kind":"string","lValueRequested":false,"nodeType":"Literal","src":"13307:11:148","typeDescriptions":{"typeIdentifier":"t_stringliteral_c592b529b874569f165479a5a4380dedf000796f11e04035f76bfa7310b31d26","typeString":"literal_string \"  Value a\""},"value":"  Value a"},{"id":60846,"name":"a","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":60832,"src":"13320:1:148","typeDescriptions":{"typeIdentifier":"t_int256","typeString":"int256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_stringliteral_c592b529b874569f165479a5a4380dedf000796f11e04035f76bfa7310b31d26","typeString":"literal_string \"  Value a\""},{"typeIdentifier":"t_int256","typeString":"int256"}],"id":60844,"name":"log_named_int","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":59477,"src":"13293:13:148","typeDescriptions":{"typeIdentifier":"t_function_event_nonpayable$_t_string_memory_ptr_$_t_int256_$returns$__$","typeString":"function (string memory,int256)"}},"id":60847,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"13293:29:148","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":60848,"nodeType":"EmitStatement","src":"13288:34:148"},{"eventCall":{"arguments":[{"hexValue":"202056616c75652062","id":60850,"isConstant":false,"isLValue":false,"isPure":true,"kind":"string","lValueRequested":false,"nodeType":"Literal","src":"13355:11:148","typeDescriptions":{"typeIdentifier":"t_stringliteral_e4b1d025132960c3fb1a582cf2366864dc416744d1b9770aa69fe3749623ebc3","typeString":"literal_string \"  Value b\""},"value":"  Value b"},{"id":60851,"name":"b","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":60834,"src":"13368:1:148","typeDescriptions":{"typeIdentifier":"t_int256","typeString":"int256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_stringliteral_e4b1d025132960c3fb1a582cf2366864dc416744d1b9770aa69fe3749623ebc3","typeString":"literal_string \"  Value b\""},{"typeIdentifier":"t_int256","typeString":"int256"}],"id":60849,"name":"log_named_int","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":59477,"src":"13341:13:148","typeDescriptions":{"typeIdentifier":"t_function_event_nonpayable$_t_string_memory_ptr_$_t_int256_$returns$__$","typeString":"function (string memory,int256)"}},"id":60852,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"13341:29:148","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":60853,"nodeType":"EmitStatement","src":"13336:34:148"},{"expression":{"arguments":[],"expression":{"argumentTypes":[],"id":60854,"name":"fail","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":59626,"src":"13384:4:148","typeDescriptions":{"typeIdentifier":"t_function_internal_nonpayable$__$returns$__$","typeString":"function ()"}},"id":60855,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"13384:6:148","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":60856,"nodeType":"ExpressionStatement","src":"13384:6:148"}]}}]},"implemented":true,"kind":"function","modifiers":[],"name":"assertLe","nameLocation":"13162:8:148","parameters":{"id":60835,"nodeType":"ParameterList","parameters":[{"constant":false,"id":60832,"mutability":"mutable","name":"a","nameLocation":"13175:1:148","nodeType":"VariableDeclaration","scope":60860,"src":"13171:5:148","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_int256","typeString":"int256"},"typeName":{"id":60831,"name":"int","nodeType":"ElementaryTypeName","src":"13171:3:148","typeDescriptions":{"typeIdentifier":"t_int256","typeString":"int256"}},"visibility":"internal"},{"constant":false,"id":60834,"mutability":"mutable","name":"b","nameLocation":"13182:1:148","nodeType":"VariableDeclaration","scope":60860,"src":"13178:5:148","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_int256","typeString":"int256"},"typeName":{"id":60833,"name":"int","nodeType":"ElementaryTypeName","src":"13178:3:148","typeDescriptions":{"typeIdentifier":"t_int256","typeString":"int256"}},"visibility":"internal"}],"src":"13170:14:148"},"returnParameters":{"id":60836,"nodeType":"ParameterList","parameters":[],"src":"13194:0:148"},"scope":61196,"stateMutability":"nonpayable","virtual":false,"visibility":"internal"},{"id":60885,"nodeType":"FunctionDefinition","src":"13412:175:148","nodes":[],"body":{"id":60884,"nodeType":"Block","src":"13472:115:148","nodes":[],"statements":[{"condition":{"commonType":{"typeIdentifier":"t_int256","typeString":"int256"},"id":60871,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":60869,"name":"a","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":60862,"src":"13486:1:148","typeDescriptions":{"typeIdentifier":"t_int256","typeString":"int256"}},"nodeType":"BinaryOperation","operator":">","rightExpression":{"id":60870,"name":"b","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":60864,"src":"13490:1:148","typeDescriptions":{"typeIdentifier":"t_int256","typeString":"int256"}},"src":"13486:5:148","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":60883,"nodeType":"IfStatement","src":"13482:99:148","trueBody":{"id":60882,"nodeType":"Block","src":"13493:88:148","statements":[{"eventCall":{"arguments":[{"hexValue":"4572726f72","id":60873,"isConstant":false,"isLValue":false,"isPure":true,"kind":"string","lValueRequested":false,"nodeType":"Literal","src":"13529:7:148","typeDescriptions":{"typeIdentifier":"t_stringliteral_e342daa49723ff3485f4ff5f755a17b8bc9c3c33bbd312ceee37c94eebfe45c1","typeString":"literal_string \"Error\""},"value":"Error"},{"id":60874,"name":"err","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":60866,"src":"13538:3:148","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":60872,"name":"log_named_string","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":59495,"src":"13512:16:148","typeDescriptions":{"typeIdentifier":"t_function_event_nonpayable$_t_string_memory_ptr_$_t_string_memory_ptr_$returns$__$","typeString":"function (string memory,string memory)"}},"id":60875,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"13512:30:148","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":60876,"nodeType":"EmitStatement","src":"13507:35:148"},{"expression":{"arguments":[{"id":60878,"name":"a","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":60862,"src":"13565:1:148","typeDescriptions":{"typeIdentifier":"t_int256","typeString":"int256"}},{"id":60879,"name":"b","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":60864,"src":"13568:1:148","typeDescriptions":{"typeIdentifier":"t_int256","typeString":"int256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_int256","typeString":"int256"},{"typeIdentifier":"t_int256","typeString":"int256"}],"id":60877,"name":"assertLe","nodeType":"Identifier","overloadedDeclarations":[60805,60830,60860,60885],"referencedDeclaration":60860,"src":"13556:8:148","typeDescriptions":{"typeIdentifier":"t_function_internal_nonpayable$_t_int256_$_t_int256_$returns$__$","typeString":"function (int256,int256)"}},"id":60880,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"13556:14:148","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":60881,"nodeType":"ExpressionStatement","src":"13556:14:148"}]}}]},"implemented":true,"kind":"function","modifiers":[],"name":"assertLe","nameLocation":"13421:8:148","parameters":{"id":60867,"nodeType":"ParameterList","parameters":[{"constant":false,"id":60862,"mutability":"mutable","name":"a","nameLocation":"13434:1:148","nodeType":"VariableDeclaration","scope":60885,"src":"13430:5:148","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_int256","typeString":"int256"},"typeName":{"id":60861,"name":"int","nodeType":"ElementaryTypeName","src":"13430:3:148","typeDescriptions":{"typeIdentifier":"t_int256","typeString":"int256"}},"visibility":"internal"},{"constant":false,"id":60864,"mutability":"mutable","name":"b","nameLocation":"13441:1:148","nodeType":"VariableDeclaration","scope":60885,"src":"13437:5:148","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_int256","typeString":"int256"},"typeName":{"id":60863,"name":"int","nodeType":"ElementaryTypeName","src":"13437:3:148","typeDescriptions":{"typeIdentifier":"t_int256","typeString":"int256"}},"visibility":"internal"},{"constant":false,"id":60866,"mutability":"mutable","name":"err","nameLocation":"13458:3:148","nodeType":"VariableDeclaration","scope":60885,"src":"13444:17:148","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_string_memory_ptr","typeString":"string"},"typeName":{"id":60865,"name":"string","nodeType":"ElementaryTypeName","src":"13444:6:148","typeDescriptions":{"typeIdentifier":"t_string_storage_ptr","typeString":"string"}},"visibility":"internal"}],"src":"13429:33:148"},"returnParameters":{"id":60868,"nodeType":"ParameterList","parameters":[],"src":"13472:0:148"},"scope":61196,"stateMutability":"nonpayable","virtual":false,"visibility":"internal"},{"id":60919,"nodeType":"FunctionDefinition","src":"13592:320:148","nodes":[],"body":{"id":60918,"nodeType":"Block","src":"13655:257:148","nodes":[],"statements":[{"condition":{"commonType":{"typeIdentifier":"t_int256","typeString":"int256"},"id":60896,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":60894,"name":"a","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":60887,"src":"13669:1:148","typeDescriptions":{"typeIdentifier":"t_int256","typeString":"int256"}},"nodeType":"BinaryOperation","operator":">","rightExpression":{"id":60895,"name":"b","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":60889,"src":"13673:1:148","typeDescriptions":{"typeIdentifier":"t_int256","typeString":"int256"}},"src":"13669:5:148","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":60917,"nodeType":"IfStatement","src":"13665:241:148","trueBody":{"id":60916,"nodeType":"Block","src":"13676:230:148","statements":[{"eventCall":{"arguments":[{"hexValue":"4572726f723a2061203c3d2062206e6f7420736174697366696564205b646563696d616c20696e745d","id":60898,"isConstant":false,"isLValue":false,"isPure":true,"kind":"string","lValueRequested":false,"nodeType":"Literal","src":"13699:43:148","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":60897,"name":"log","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":59415,"src":"13695:3:148","typeDescriptions":{"typeIdentifier":"t_function_event_nonpayable$_t_string_memory_ptr_$returns$__$","typeString":"function (string memory)"}},"id":60899,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"13695:48:148","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":60900,"nodeType":"EmitStatement","src":"13690:53:148"},{"eventCall":{"arguments":[{"hexValue":"202056616c75652061","id":60902,"isConstant":false,"isLValue":false,"isPure":true,"kind":"string","lValueRequested":false,"nodeType":"Literal","src":"13784:11:148","typeDescriptions":{"typeIdentifier":"t_stringliteral_c592b529b874569f165479a5a4380dedf000796f11e04035f76bfa7310b31d26","typeString":"literal_string \"  Value a\""},"value":"  Value a"},{"id":60903,"name":"a","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":60887,"src":"13797:1:148","typeDescriptions":{"typeIdentifier":"t_int256","typeString":"int256"}},{"id":60904,"name":"decimals","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":60891,"src":"13800:8:148","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":60901,"name":"log_named_decimal_int","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":59463,"src":"13762:21:148","typeDescriptions":{"typeIdentifier":"t_function_event_nonpayable$_t_string_memory_ptr_$_t_int256_$_t_uint256_$returns$__$","typeString":"function (string memory,int256,uint256)"}},"id":60905,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"13762:47:148","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":60906,"nodeType":"EmitStatement","src":"13757:52:148"},{"eventCall":{"arguments":[{"hexValue":"202056616c75652062","id":60908,"isConstant":false,"isLValue":false,"isPure":true,"kind":"string","lValueRequested":false,"nodeType":"Literal","src":"13850:11:148","typeDescriptions":{"typeIdentifier":"t_stringliteral_e4b1d025132960c3fb1a582cf2366864dc416744d1b9770aa69fe3749623ebc3","typeString":"literal_string \"  Value b\""},"value":"  Value b"},{"id":60909,"name":"b","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":60889,"src":"13863:1:148","typeDescriptions":{"typeIdentifier":"t_int256","typeString":"int256"}},{"id":60910,"name":"decimals","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":60891,"src":"13866:8:148","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":60907,"name":"log_named_decimal_int","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":59463,"src":"13828:21:148","typeDescriptions":{"typeIdentifier":"t_function_event_nonpayable$_t_string_memory_ptr_$_t_int256_$_t_uint256_$returns$__$","typeString":"function (string memory,int256,uint256)"}},"id":60911,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"13828:47:148","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":60912,"nodeType":"EmitStatement","src":"13823:52:148"},{"expression":{"arguments":[],"expression":{"argumentTypes":[],"id":60913,"name":"fail","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":59626,"src":"13889:4:148","typeDescriptions":{"typeIdentifier":"t_function_internal_nonpayable$__$returns$__$","typeString":"function ()"}},"id":60914,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"13889:6:148","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":60915,"nodeType":"ExpressionStatement","src":"13889:6:148"}]}}]},"implemented":true,"kind":"function","modifiers":[],"name":"assertLeDecimal","nameLocation":"13601:15:148","parameters":{"id":60892,"nodeType":"ParameterList","parameters":[{"constant":false,"id":60887,"mutability":"mutable","name":"a","nameLocation":"13621:1:148","nodeType":"VariableDeclaration","scope":60919,"src":"13617:5:148","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_int256","typeString":"int256"},"typeName":{"id":60886,"name":"int","nodeType":"ElementaryTypeName","src":"13617:3:148","typeDescriptions":{"typeIdentifier":"t_int256","typeString":"int256"}},"visibility":"internal"},{"constant":false,"id":60889,"mutability":"mutable","name":"b","nameLocation":"13628:1:148","nodeType":"VariableDeclaration","scope":60919,"src":"13624:5:148","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_int256","typeString":"int256"},"typeName":{"id":60888,"name":"int","nodeType":"ElementaryTypeName","src":"13624:3:148","typeDescriptions":{"typeIdentifier":"t_int256","typeString":"int256"}},"visibility":"internal"},{"constant":false,"id":60891,"mutability":"mutable","name":"decimals","nameLocation":"13636:8:148","nodeType":"VariableDeclaration","scope":60919,"src":"13631:13:148","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":60890,"name":"uint","nodeType":"ElementaryTypeName","src":"13631:4:148","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"13616:29:148"},"returnParameters":{"id":60893,"nodeType":"ParameterList","parameters":[],"src":"13655:0:148"},"scope":61196,"stateMutability":"nonpayable","virtual":false,"visibility":"internal"},{"id":60947,"nodeType":"FunctionDefinition","src":"13917:214:148","nodes":[],"body":{"id":60946,"nodeType":"Block","src":"13999:132:148","nodes":[],"statements":[{"condition":{"commonType":{"typeIdentifier":"t_int256","typeString":"int256"},"id":60932,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":60930,"name":"a","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":60921,"src":"14013:1:148","typeDescriptions":{"typeIdentifier":"t_int256","typeString":"int256"}},"nodeType":"BinaryOperation","operator":">","rightExpression":{"id":60931,"name":"b","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":60923,"src":"14017:1:148","typeDescriptions":{"typeIdentifier":"t_int256","typeString":"int256"}},"src":"14013:5:148","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":60945,"nodeType":"IfStatement","src":"14009:116:148","trueBody":{"id":60944,"nodeType":"Block","src":"14020:105:148","statements":[{"eventCall":{"arguments":[{"hexValue":"4572726f72","id":60934,"isConstant":false,"isLValue":false,"isPure":true,"kind":"string","lValueRequested":false,"nodeType":"Literal","src":"14056:7:148","typeDescriptions":{"typeIdentifier":"t_stringliteral_e342daa49723ff3485f4ff5f755a17b8bc9c3c33bbd312ceee37c94eebfe45c1","typeString":"literal_string \"Error\""},"value":"Error"},{"id":60935,"name":"err","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":60927,"src":"14065:3:148","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":60933,"name":"log_named_string","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":59495,"src":"14039:16:148","typeDescriptions":{"typeIdentifier":"t_function_event_nonpayable$_t_string_memory_ptr_$_t_string_memory_ptr_$returns$__$","typeString":"function (string memory,string memory)"}},"id":60936,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"14039:30:148","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":60937,"nodeType":"EmitStatement","src":"14034:35:148"},{"expression":{"arguments":[{"id":60939,"name":"a","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":60921,"src":"14099:1:148","typeDescriptions":{"typeIdentifier":"t_int256","typeString":"int256"}},{"id":60940,"name":"b","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":60923,"src":"14102:1:148","typeDescriptions":{"typeIdentifier":"t_int256","typeString":"int256"}},{"id":60941,"name":"decimals","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":60925,"src":"14105:8:148","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_int256","typeString":"int256"},{"typeIdentifier":"t_int256","typeString":"int256"},{"typeIdentifier":"t_uint256","typeString":"uint256"}],"id":60938,"name":"assertLeDecimal","nodeType":"Identifier","overloadedDeclarations":[60919,60947,60981,61009],"referencedDeclaration":60919,"src":"14083:15:148","typeDescriptions":{"typeIdentifier":"t_function_internal_nonpayable$_t_int256_$_t_int256_$_t_uint256_$returns$__$","typeString":"function (int256,int256,uint256)"}},"id":60942,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"14083:31:148","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":60943,"nodeType":"ExpressionStatement","src":"14083:31:148"}]}}]},"implemented":true,"kind":"function","modifiers":[],"name":"assertLeDecimal","nameLocation":"13926:15:148","parameters":{"id":60928,"nodeType":"ParameterList","parameters":[{"constant":false,"id":60921,"mutability":"mutable","name":"a","nameLocation":"13946:1:148","nodeType":"VariableDeclaration","scope":60947,"src":"13942:5:148","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_int256","typeString":"int256"},"typeName":{"id":60920,"name":"int","nodeType":"ElementaryTypeName","src":"13942:3:148","typeDescriptions":{"typeIdentifier":"t_int256","typeString":"int256"}},"visibility":"internal"},{"constant":false,"id":60923,"mutability":"mutable","name":"b","nameLocation":"13953:1:148","nodeType":"VariableDeclaration","scope":60947,"src":"13949:5:148","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_int256","typeString":"int256"},"typeName":{"id":60922,"name":"int","nodeType":"ElementaryTypeName","src":"13949:3:148","typeDescriptions":{"typeIdentifier":"t_int256","typeString":"int256"}},"visibility":"internal"},{"constant":false,"id":60925,"mutability":"mutable","name":"decimals","nameLocation":"13961:8:148","nodeType":"VariableDeclaration","scope":60947,"src":"13956:13:148","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":60924,"name":"uint","nodeType":"ElementaryTypeName","src":"13956:4:148","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":60927,"mutability":"mutable","name":"err","nameLocation":"13985:3:148","nodeType":"VariableDeclaration","scope":60947,"src":"13971:17:148","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_string_memory_ptr","typeString":"string"},"typeName":{"id":60926,"name":"string","nodeType":"ElementaryTypeName","src":"13971:6:148","typeDescriptions":{"typeIdentifier":"t_string_storage_ptr","typeString":"string"}},"visibility":"internal"}],"src":"13941:48:148"},"returnParameters":{"id":60929,"nodeType":"ParameterList","parameters":[],"src":"13999:0:148"},"scope":61196,"stateMutability":"nonpayable","virtual":false,"visibility":"internal"},{"id":60981,"nodeType":"FunctionDefinition","src":"14136:325:148","nodes":[],"body":{"id":60980,"nodeType":"Block","src":"14201:260:148","nodes":[],"statements":[{"condition":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":60958,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":60956,"name":"a","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":60949,"src":"14215:1:148","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":">","rightExpression":{"id":60957,"name":"b","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":60951,"src":"14219:1:148","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"14215:5:148","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":60979,"nodeType":"IfStatement","src":"14211:244:148","trueBody":{"id":60978,"nodeType":"Block","src":"14222:233:148","statements":[{"eventCall":{"arguments":[{"hexValue":"4572726f723a2061203c3d2062206e6f7420736174697366696564205b646563696d616c2075696e745d","id":60960,"isConstant":false,"isLValue":false,"isPure":true,"kind":"string","lValueRequested":false,"nodeType":"Literal","src":"14245:44:148","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":60959,"name":"log","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":59415,"src":"14241:3:148","typeDescriptions":{"typeIdentifier":"t_function_event_nonpayable$_t_string_memory_ptr_$returns$__$","typeString":"function (string memory)"}},"id":60961,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"14241:49:148","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":60962,"nodeType":"EmitStatement","src":"14236:54:148"},{"eventCall":{"arguments":[{"hexValue":"202056616c75652061","id":60964,"isConstant":false,"isLValue":false,"isPure":true,"kind":"string","lValueRequested":false,"nodeType":"Literal","src":"14332:11:148","typeDescriptions":{"typeIdentifier":"t_stringliteral_c592b529b874569f165479a5a4380dedf000796f11e04035f76bfa7310b31d26","typeString":"literal_string \"  Value a\""},"value":"  Value a"},{"id":60965,"name":"a","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":60949,"src":"14345:1:148","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},{"id":60966,"name":"decimals","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":60953,"src":"14348:8:148","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":60963,"name":"log_named_decimal_uint","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":59471,"src":"14309:22:148","typeDescriptions":{"typeIdentifier":"t_function_event_nonpayable$_t_string_memory_ptr_$_t_uint256_$_t_uint256_$returns$__$","typeString":"function (string memory,uint256,uint256)"}},"id":60967,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"14309:48:148","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":60968,"nodeType":"EmitStatement","src":"14304:53:148"},{"eventCall":{"arguments":[{"hexValue":"202056616c75652062","id":60970,"isConstant":false,"isLValue":false,"isPure":true,"kind":"string","lValueRequested":false,"nodeType":"Literal","src":"14399:11:148","typeDescriptions":{"typeIdentifier":"t_stringliteral_e4b1d025132960c3fb1a582cf2366864dc416744d1b9770aa69fe3749623ebc3","typeString":"literal_string \"  Value b\""},"value":"  Value b"},{"id":60971,"name":"b","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":60951,"src":"14412:1:148","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},{"id":60972,"name":"decimals","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":60953,"src":"14415:8:148","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":60969,"name":"log_named_decimal_uint","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":59471,"src":"14376:22:148","typeDescriptions":{"typeIdentifier":"t_function_event_nonpayable$_t_string_memory_ptr_$_t_uint256_$_t_uint256_$returns$__$","typeString":"function (string memory,uint256,uint256)"}},"id":60973,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"14376:48:148","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":60974,"nodeType":"EmitStatement","src":"14371:53:148"},{"expression":{"arguments":[],"expression":{"argumentTypes":[],"id":60975,"name":"fail","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":59626,"src":"14438:4:148","typeDescriptions":{"typeIdentifier":"t_function_internal_nonpayable$__$returns$__$","typeString":"function ()"}},"id":60976,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"14438:6:148","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":60977,"nodeType":"ExpressionStatement","src":"14438:6:148"}]}}]},"implemented":true,"kind":"function","modifiers":[],"name":"assertLeDecimal","nameLocation":"14145:15:148","parameters":{"id":60954,"nodeType":"ParameterList","parameters":[{"constant":false,"id":60949,"mutability":"mutable","name":"a","nameLocation":"14166:1:148","nodeType":"VariableDeclaration","scope":60981,"src":"14161:6:148","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":60948,"name":"uint","nodeType":"ElementaryTypeName","src":"14161:4:148","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":60951,"mutability":"mutable","name":"b","nameLocation":"14174:1:148","nodeType":"VariableDeclaration","scope":60981,"src":"14169:6:148","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":60950,"name":"uint","nodeType":"ElementaryTypeName","src":"14169:4:148","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":60953,"mutability":"mutable","name":"decimals","nameLocation":"14182:8:148","nodeType":"VariableDeclaration","scope":60981,"src":"14177:13:148","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":60952,"name":"uint","nodeType":"ElementaryTypeName","src":"14177:4:148","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"14160:31:148"},"returnParameters":{"id":60955,"nodeType":"ParameterList","parameters":[],"src":"14201:0:148"},"scope":61196,"stateMutability":"nonpayable","virtual":false,"visibility":"internal"},{"id":61009,"nodeType":"FunctionDefinition","src":"14466:216:148","nodes":[],"body":{"id":61008,"nodeType":"Block","src":"14550:132:148","nodes":[],"statements":[{"condition":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":60994,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":60992,"name":"a","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":60983,"src":"14564:1:148","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":">","rightExpression":{"id":60993,"name":"b","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":60985,"src":"14568:1:148","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"14564:5:148","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":61007,"nodeType":"IfStatement","src":"14560:116:148","trueBody":{"id":61006,"nodeType":"Block","src":"14571:105:148","statements":[{"eventCall":{"arguments":[{"hexValue":"4572726f72","id":60996,"isConstant":false,"isLValue":false,"isPure":true,"kind":"string","lValueRequested":false,"nodeType":"Literal","src":"14607:7:148","typeDescriptions":{"typeIdentifier":"t_stringliteral_e342daa49723ff3485f4ff5f755a17b8bc9c3c33bbd312ceee37c94eebfe45c1","typeString":"literal_string \"Error\""},"value":"Error"},{"id":60997,"name":"err","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":60989,"src":"14616:3:148","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":60995,"name":"log_named_string","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":59495,"src":"14590:16:148","typeDescriptions":{"typeIdentifier":"t_function_event_nonpayable$_t_string_memory_ptr_$_t_string_memory_ptr_$returns$__$","typeString":"function (string memory,string memory)"}},"id":60998,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"14590:30:148","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":60999,"nodeType":"EmitStatement","src":"14585:35:148"},{"expression":{"arguments":[{"id":61001,"name":"a","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":60983,"src":"14650:1:148","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},{"id":61002,"name":"b","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":60985,"src":"14653:1:148","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},{"id":61003,"name":"decimals","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":60987,"src":"14656:8:148","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"},{"typeIdentifier":"t_uint256","typeString":"uint256"},{"typeIdentifier":"t_uint256","typeString":"uint256"}],"id":61000,"name":"assertGeDecimal","nodeType":"Identifier","overloadedDeclarations":[60451,60479,60513,60541],"referencedDeclaration":60513,"src":"14634:15:148","typeDescriptions":{"typeIdentifier":"t_function_internal_nonpayable$_t_uint256_$_t_uint256_$_t_uint256_$returns$__$","typeString":"function (uint256,uint256,uint256)"}},"id":61004,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"14634:31:148","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":61005,"nodeType":"ExpressionStatement","src":"14634:31:148"}]}}]},"implemented":true,"kind":"function","modifiers":[],"name":"assertLeDecimal","nameLocation":"14475:15:148","parameters":{"id":60990,"nodeType":"ParameterList","parameters":[{"constant":false,"id":60983,"mutability":"mutable","name":"a","nameLocation":"14496:1:148","nodeType":"VariableDeclaration","scope":61009,"src":"14491:6:148","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":60982,"name":"uint","nodeType":"ElementaryTypeName","src":"14491:4:148","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":60985,"mutability":"mutable","name":"b","nameLocation":"14504:1:148","nodeType":"VariableDeclaration","scope":61009,"src":"14499:6:148","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":60984,"name":"uint","nodeType":"ElementaryTypeName","src":"14499:4:148","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":60987,"mutability":"mutable","name":"decimals","nameLocation":"14512:8:148","nodeType":"VariableDeclaration","scope":61009,"src":"14507:13:148","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":60986,"name":"uint","nodeType":"ElementaryTypeName","src":"14507:4:148","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":60989,"mutability":"mutable","name":"err","nameLocation":"14536:3:148","nodeType":"VariableDeclaration","scope":61009,"src":"14522:17:148","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_string_memory_ptr","typeString":"string"},"typeName":{"id":60988,"name":"string","nodeType":"ElementaryTypeName","src":"14522:6:148","typeDescriptions":{"typeIdentifier":"t_string_storage_ptr","typeString":"string"}},"visibility":"internal"}],"src":"14490:50:148"},"returnParameters":{"id":60991,"nodeType":"ParameterList","parameters":[],"src":"14550:0:148"},"scope":61196,"stateMutability":"nonpayable","virtual":false,"visibility":"internal"},{"id":61049,"nodeType":"FunctionDefinition","src":"14688:344:148","nodes":[],"body":{"id":61048,"nodeType":"Block","src":"14749:283:148","nodes":[],"statements":[{"condition":{"commonType":{"typeIdentifier":"t_bytes32","typeString":"bytes32"},"id":61028,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"arguments":[{"arguments":[{"id":61019,"name":"a","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":61011,"src":"14790:1:148","typeDescriptions":{"typeIdentifier":"t_string_memory_ptr","typeString":"string memory"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_string_memory_ptr","typeString":"string memory"}],"expression":{"id":61017,"name":"abi","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-1,"src":"14773:3:148","typeDescriptions":{"typeIdentifier":"t_magic_abi","typeString":"abi"}},"id":61018,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"memberLocation":"14777:12:148","memberName":"encodePacked","nodeType":"MemberAccess","src":"14773:16:148","typeDescriptions":{"typeIdentifier":"t_function_abiencodepacked_pure$__$returns$_t_bytes_memory_ptr_$","typeString":"function () pure returns (bytes memory)"}},"id":61020,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"14773:19:148","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes memory"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes memory"}],"id":61016,"name":"keccak256","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-8,"src":"14763:9:148","typeDescriptions":{"typeIdentifier":"t_function_keccak256_pure$_t_bytes_memory_ptr_$returns$_t_bytes32_$","typeString":"function (bytes memory) pure returns (bytes32)"}},"id":61021,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"14763:30:148","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"nodeType":"BinaryOperation","operator":"!=","rightExpression":{"arguments":[{"arguments":[{"id":61025,"name":"b","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":61013,"src":"14824:1:148","typeDescriptions":{"typeIdentifier":"t_string_memory_ptr","typeString":"string memory"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_string_memory_ptr","typeString":"string memory"}],"expression":{"id":61023,"name":"abi","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-1,"src":"14807:3:148","typeDescriptions":{"typeIdentifier":"t_magic_abi","typeString":"abi"}},"id":61024,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"memberLocation":"14811:12:148","memberName":"encodePacked","nodeType":"MemberAccess","src":"14807:16:148","typeDescriptions":{"typeIdentifier":"t_function_abiencodepacked_pure$__$returns$_t_bytes_memory_ptr_$","typeString":"function () pure returns (bytes memory)"}},"id":61026,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"14807:19:148","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes memory"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes memory"}],"id":61022,"name":"keccak256","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-8,"src":"14797:9:148","typeDescriptions":{"typeIdentifier":"t_function_keccak256_pure$_t_bytes_memory_ptr_$returns$_t_bytes32_$","typeString":"function (bytes memory) pure returns (bytes32)"}},"id":61027,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"14797:30:148","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"src":"14763:64:148","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":61047,"nodeType":"IfStatement","src":"14759:267:148","trueBody":{"id":61046,"nodeType":"Block","src":"14829:197:148","statements":[{"eventCall":{"arguments":[{"hexValue":"4572726f723a2061203d3d2062206e6f7420736174697366696564205b737472696e675d","id":61030,"isConstant":false,"isLValue":false,"isPure":true,"kind":"string","lValueRequested":false,"nodeType":"Literal","src":"14852:38:148","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":61029,"name":"log","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":59415,"src":"14848:3:148","typeDescriptions":{"typeIdentifier":"t_function_event_nonpayable$_t_string_memory_ptr_$returns$__$","typeString":"function (string memory)"}},"id":61031,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"14848:43:148","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":61032,"nodeType":"EmitStatement","src":"14843:48:148"},{"eventCall":{"arguments":[{"hexValue":"20204578706563746564","id":61034,"isConstant":false,"isLValue":false,"isPure":true,"kind":"string","lValueRequested":false,"nodeType":"Literal","src":"14927:12:148","typeDescriptions":{"typeIdentifier":"t_stringliteral_42fa07d7c51ce5de92a0fc65dbf7e7800814fd01c258dc50e84d5be59184bf0b","typeString":"literal_string \"  Expected\""},"value":"  Expected"},{"id":61035,"name":"b","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":61013,"src":"14941:1:148","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":61033,"name":"log_named_string","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":59495,"src":"14910:16:148","typeDescriptions":{"typeIdentifier":"t_function_event_nonpayable$_t_string_memory_ptr_$_t_string_memory_ptr_$returns$__$","typeString":"function (string memory,string memory)"}},"id":61036,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"14910:33:148","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":61037,"nodeType":"EmitStatement","src":"14905:38:148"},{"eventCall":{"arguments":[{"hexValue":"2020202041637475616c","id":61039,"isConstant":false,"isLValue":false,"isPure":true,"kind":"string","lValueRequested":false,"nodeType":"Literal","src":"14979:12:148","typeDescriptions":{"typeIdentifier":"t_stringliteral_d7896f3f645b3ba89da46bf231a5df16e525e587a84bc9b284dfb39958fb219b","typeString":"literal_string \"    Actual\""},"value":"    Actual"},{"id":61040,"name":"a","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":61011,"src":"14993:1:148","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":61038,"name":"log_named_string","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":59495,"src":"14962:16:148","typeDescriptions":{"typeIdentifier":"t_function_event_nonpayable$_t_string_memory_ptr_$_t_string_memory_ptr_$returns$__$","typeString":"function (string memory,string memory)"}},"id":61041,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"14962:33:148","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":61042,"nodeType":"EmitStatement","src":"14957:38:148"},{"expression":{"arguments":[],"expression":{"argumentTypes":[],"id":61043,"name":"fail","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":59626,"src":"15009:4:148","typeDescriptions":{"typeIdentifier":"t_function_internal_nonpayable$__$returns$__$","typeString":"function ()"}},"id":61044,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"15009:6:148","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":61045,"nodeType":"ExpressionStatement","src":"15009:6:148"}]}}]},"implemented":true,"kind":"function","modifiers":[],"name":"assertEq","nameLocation":"14697:8:148","parameters":{"id":61014,"nodeType":"ParameterList","parameters":[{"constant":false,"id":61011,"mutability":"mutable","name":"a","nameLocation":"14720:1:148","nodeType":"VariableDeclaration","scope":61049,"src":"14706:15:148","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_string_memory_ptr","typeString":"string"},"typeName":{"id":61010,"name":"string","nodeType":"ElementaryTypeName","src":"14706:6:148","typeDescriptions":{"typeIdentifier":"t_string_storage_ptr","typeString":"string"}},"visibility":"internal"},{"constant":false,"id":61013,"mutability":"mutable","name":"b","nameLocation":"14737:1:148","nodeType":"VariableDeclaration","scope":61049,"src":"14723:15:148","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_string_memory_ptr","typeString":"string"},"typeName":{"id":61012,"name":"string","nodeType":"ElementaryTypeName","src":"14723:6:148","typeDescriptions":{"typeIdentifier":"t_string_storage_ptr","typeString":"string"}},"visibility":"internal"}],"src":"14705:34:148"},"returnParameters":{"id":61015,"nodeType":"ParameterList","parameters":[],"src":"14749:0:148"},"scope":61196,"stateMutability":"nonpayable","virtual":false,"visibility":"internal"},{"id":61084,"nodeType":"FunctionDefinition","src":"15037:254:148","nodes":[],"body":{"id":61083,"nodeType":"Block","src":"15117:174:148","nodes":[],"statements":[{"condition":{"commonType":{"typeIdentifier":"t_bytes32","typeString":"bytes32"},"id":61070,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"arguments":[{"arguments":[{"id":61061,"name":"a","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":61051,"src":"15158:1:148","typeDescriptions":{"typeIdentifier":"t_string_memory_ptr","typeString":"string memory"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_string_memory_ptr","typeString":"string memory"}],"expression":{"id":61059,"name":"abi","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-1,"src":"15141:3:148","typeDescriptions":{"typeIdentifier":"t_magic_abi","typeString":"abi"}},"id":61060,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"memberLocation":"15145:12:148","memberName":"encodePacked","nodeType":"MemberAccess","src":"15141:16:148","typeDescriptions":{"typeIdentifier":"t_function_abiencodepacked_pure$__$returns$_t_bytes_memory_ptr_$","typeString":"function () pure returns (bytes memory)"}},"id":61062,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"15141:19:148","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes memory"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes memory"}],"id":61058,"name":"keccak256","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-8,"src":"15131:9:148","typeDescriptions":{"typeIdentifier":"t_function_keccak256_pure$_t_bytes_memory_ptr_$returns$_t_bytes32_$","typeString":"function (bytes memory) pure returns (bytes32)"}},"id":61063,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"15131:30:148","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"nodeType":"BinaryOperation","operator":"!=","rightExpression":{"arguments":[{"arguments":[{"id":61067,"name":"b","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":61053,"src":"15192:1:148","typeDescriptions":{"typeIdentifier":"t_string_memory_ptr","typeString":"string memory"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_string_memory_ptr","typeString":"string memory"}],"expression":{"id":61065,"name":"abi","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-1,"src":"15175:3:148","typeDescriptions":{"typeIdentifier":"t_magic_abi","typeString":"abi"}},"id":61066,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"memberLocation":"15179:12:148","memberName":"encodePacked","nodeType":"MemberAccess","src":"15175:16:148","typeDescriptions":{"typeIdentifier":"t_function_abiencodepacked_pure$__$returns$_t_bytes_memory_ptr_$","typeString":"function () pure returns (bytes memory)"}},"id":61068,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"15175:19:148","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes memory"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes memory"}],"id":61064,"name":"keccak256","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-8,"src":"15165:9:148","typeDescriptions":{"typeIdentifier":"t_function_keccak256_pure$_t_bytes_memory_ptr_$returns$_t_bytes32_$","typeString":"function (bytes memory) pure returns (bytes32)"}},"id":61069,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"15165:30:148","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"src":"15131:64:148","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":61082,"nodeType":"IfStatement","src":"15127:158:148","trueBody":{"id":61081,"nodeType":"Block","src":"15197:88:148","statements":[{"eventCall":{"arguments":[{"hexValue":"4572726f72","id":61072,"isConstant":false,"isLValue":false,"isPure":true,"kind":"string","lValueRequested":false,"nodeType":"Literal","src":"15233:7:148","typeDescriptions":{"typeIdentifier":"t_stringliteral_e342daa49723ff3485f4ff5f755a17b8bc9c3c33bbd312ceee37c94eebfe45c1","typeString":"literal_string \"Error\""},"value":"Error"},{"id":61073,"name":"err","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":61055,"src":"15242:3:148","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":61071,"name":"log_named_string","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":59495,"src":"15216:16:148","typeDescriptions":{"typeIdentifier":"t_function_event_nonpayable$_t_string_memory_ptr_$_t_string_memory_ptr_$returns$__$","typeString":"function (string memory,string memory)"}},"id":61074,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"15216:30:148","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":61075,"nodeType":"EmitStatement","src":"15211:35:148"},{"expression":{"arguments":[{"id":61077,"name":"a","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":61051,"src":"15269:1:148","typeDescriptions":{"typeIdentifier":"t_string_memory_ptr","typeString":"string memory"}},{"id":61078,"name":"b","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":61053,"src":"15272:1:148","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":61076,"name":"assertEq","nodeType":"Identifier","overloadedDeclarations":[59730,59755,59785,59810,59869,59894,59924,59949,61049,61084],"referencedDeclaration":61049,"src":"15260:8:148","typeDescriptions":{"typeIdentifier":"t_function_internal_nonpayable$_t_string_memory_ptr_$_t_string_memory_ptr_$returns$__$","typeString":"function (string memory,string memory)"}},"id":61079,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"15260:14:148","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":61080,"nodeType":"ExpressionStatement","src":"15260:14:148"}]}}]},"implemented":true,"kind":"function","modifiers":[],"name":"assertEq","nameLocation":"15046:8:148","parameters":{"id":61056,"nodeType":"ParameterList","parameters":[{"constant":false,"id":61051,"mutability":"mutable","name":"a","nameLocation":"15069:1:148","nodeType":"VariableDeclaration","scope":61084,"src":"15055:15:148","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_string_memory_ptr","typeString":"string"},"typeName":{"id":61050,"name":"string","nodeType":"ElementaryTypeName","src":"15055:6:148","typeDescriptions":{"typeIdentifier":"t_string_storage_ptr","typeString":"string"}},"visibility":"internal"},{"constant":false,"id":61053,"mutability":"mutable","name":"b","nameLocation":"15086:1:148","nodeType":"VariableDeclaration","scope":61084,"src":"15072:15:148","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_string_memory_ptr","typeString":"string"},"typeName":{"id":61052,"name":"string","nodeType":"ElementaryTypeName","src":"15072:6:148","typeDescriptions":{"typeIdentifier":"t_string_storage_ptr","typeString":"string"}},"visibility":"internal"},{"constant":false,"id":61055,"mutability":"mutable","name":"err","nameLocation":"15103:3:148","nodeType":"VariableDeclaration","scope":61084,"src":"15089:17:148","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_string_memory_ptr","typeString":"string"},"typeName":{"id":61054,"name":"string","nodeType":"ElementaryTypeName","src":"15089:6:148","typeDescriptions":{"typeIdentifier":"t_string_storage_ptr","typeString":"string"}},"visibility":"internal"}],"src":"15054:53:148"},"returnParameters":{"id":61057,"nodeType":"ParameterList","parameters":[],"src":"15117:0:148"},"scope":61196,"stateMutability":"nonpayable","virtual":false,"visibility":"internal"},{"id":61136,"nodeType":"FunctionDefinition","src":"15297:345:148","nodes":[],"body":{"id":61135,"nodeType":"Block","src":"15379:263:148","nodes":[],"statements":[{"expression":{"id":61095,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":61093,"name":"ok","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":61091,"src":"15389:2:148","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"hexValue":"74727565","id":61094,"isConstant":false,"isLValue":false,"isPure":true,"kind":"bool","lValueRequested":false,"nodeType":"Literal","src":"15394:4:148","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"},"value":"true"},"src":"15389:9:148","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":61096,"nodeType":"ExpressionStatement","src":"15389:9:148"},{"condition":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":61101,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"expression":{"id":61097,"name":"a","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":61086,"src":"15412:1:148","typeDescriptions":{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes memory"}},"id":61098,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"15414:6:148","memberName":"length","nodeType":"MemberAccess","src":"15412:8:148","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"==","rightExpression":{"expression":{"id":61099,"name":"b","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":61088,"src":"15424:1:148","typeDescriptions":{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes memory"}},"id":61100,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"15426:6:148","memberName":"length","nodeType":"MemberAccess","src":"15424:8:148","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"15412:20:148","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"falseBody":{"id":61133,"nodeType":"Block","src":"15601:35:148","statements":[{"expression":{"id":61131,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":61129,"name":"ok","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":61091,"src":"15615:2:148","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"hexValue":"66616c7365","id":61130,"isConstant":false,"isLValue":false,"isPure":true,"kind":"bool","lValueRequested":false,"nodeType":"Literal","src":"15620:5:148","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"},"value":"false"},"src":"15615:10:148","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":61132,"nodeType":"ExpressionStatement","src":"15615:10:148"}]},"id":61134,"nodeType":"IfStatement","src":"15408:228:148","trueBody":{"id":61128,"nodeType":"Block","src":"15434:161:148","statements":[{"body":{"id":61126,"nodeType":"Block","src":"15484:101:148","statements":[{"condition":{"commonType":{"typeIdentifier":"t_bytes1","typeString":"bytes1"},"id":61119,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"baseExpression":{"id":61113,"name":"a","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":61086,"src":"15506:1:148","typeDescriptions":{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes memory"}},"id":61115,"indexExpression":{"id":61114,"name":"i","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":61103,"src":"15508:1:148","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"15506:4:148","typeDescriptions":{"typeIdentifier":"t_bytes1","typeString":"bytes1"}},"nodeType":"BinaryOperation","operator":"!=","rightExpression":{"baseExpression":{"id":61116,"name":"b","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":61088,"src":"15514:1:148","typeDescriptions":{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes memory"}},"id":61118,"indexExpression":{"id":61117,"name":"i","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":61103,"src":"15516:1:148","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"15514:4:148","typeDescriptions":{"typeIdentifier":"t_bytes1","typeString":"bytes1"}},"src":"15506:12:148","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":61125,"nodeType":"IfStatement","src":"15502:69:148","trueBody":{"id":61124,"nodeType":"Block","src":"15520:51:148","statements":[{"expression":{"id":61122,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":61120,"name":"ok","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":61091,"src":"15542:2:148","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"hexValue":"66616c7365","id":61121,"isConstant":false,"isLValue":false,"isPure":true,"kind":"bool","lValueRequested":false,"nodeType":"Literal","src":"15547:5:148","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"},"value":"false"},"src":"15542:10:148","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":61123,"nodeType":"ExpressionStatement","src":"15542:10:148"}]}}]},"condition":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":61109,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":61106,"name":"i","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":61103,"src":"15465:1:148","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"<","rightExpression":{"expression":{"id":61107,"name":"a","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":61086,"src":"15469:1:148","typeDescriptions":{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes memory"}},"id":61108,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"15471:6:148","memberName":"length","nodeType":"MemberAccess","src":"15469:8:148","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"15465:12:148","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":61127,"initializationExpression":{"assignments":[61103],"declarations":[{"constant":false,"id":61103,"mutability":"mutable","name":"i","nameLocation":"15458:1:148","nodeType":"VariableDeclaration","scope":61127,"src":"15453:6:148","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":61102,"name":"uint","nodeType":"ElementaryTypeName","src":"15453:4:148","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"id":61105,"initialValue":{"hexValue":"30","id":61104,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"15462:1:148","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"},"nodeType":"VariableDeclarationStatement","src":"15453:10:148"},"isSimpleCounterLoop":true,"loopExpression":{"expression":{"id":61111,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"UnaryOperation","operator":"++","prefix":false,"src":"15479:3:148","subExpression":{"id":61110,"name":"i","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":61103,"src":"15479:1:148","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":61112,"nodeType":"ExpressionStatement","src":"15479:3:148"},"nodeType":"ForStatement","src":"15448:137:148"}]}}]},"implemented":true,"kind":"function","modifiers":[],"name":"checkEq0","nameLocation":"15306:8:148","parameters":{"id":61089,"nodeType":"ParameterList","parameters":[{"constant":false,"id":61086,"mutability":"mutable","name":"a","nameLocation":"15328:1:148","nodeType":"VariableDeclaration","scope":61136,"src":"15315:14:148","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes"},"typeName":{"id":61085,"name":"bytes","nodeType":"ElementaryTypeName","src":"15315:5:148","typeDescriptions":{"typeIdentifier":"t_bytes_storage_ptr","typeString":"bytes"}},"visibility":"internal"},{"constant":false,"id":61088,"mutability":"mutable","name":"b","nameLocation":"15344:1:148","nodeType":"VariableDeclaration","scope":61136,"src":"15331:14:148","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes"},"typeName":{"id":61087,"name":"bytes","nodeType":"ElementaryTypeName","src":"15331:5:148","typeDescriptions":{"typeIdentifier":"t_bytes_storage_ptr","typeString":"bytes"}},"visibility":"internal"}],"src":"15314:32:148"},"returnParameters":{"id":61092,"nodeType":"ParameterList","parameters":[{"constant":false,"id":61091,"mutability":"mutable","name":"ok","nameLocation":"15375:2:148","nodeType":"VariableDeclaration","scope":61136,"src":"15370:7:148","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"},"typeName":{"id":61090,"name":"bool","nodeType":"ElementaryTypeName","src":"15370:4:148","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"visibility":"internal"}],"src":"15369:9:148"},"scope":61196,"stateMutability":"pure","virtual":false,"visibility":"internal"},{"id":61168,"nodeType":"FunctionDefinition","src":"15647:291:148","nodes":[],"body":{"id":61167,"nodeType":"Block","src":"15707:231:148","nodes":[],"statements":[{"condition":{"id":61147,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"UnaryOperation","operator":"!","prefix":true,"src":"15721:15:148","subExpression":{"arguments":[{"id":61144,"name":"a","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":61138,"src":"15731:1:148","typeDescriptions":{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes memory"}},{"id":61145,"name":"b","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":61140,"src":"15734:1:148","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":61143,"name":"checkEq0","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":61136,"src":"15722:8:148","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":61146,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"15722:14:148","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":61166,"nodeType":"IfStatement","src":"15717:215:148","trueBody":{"id":61165,"nodeType":"Block","src":"15738:194:148","statements":[{"eventCall":{"arguments":[{"hexValue":"4572726f723a2061203d3d2062206e6f7420736174697366696564205b62797465735d","id":61149,"isConstant":false,"isLValue":false,"isPure":true,"kind":"string","lValueRequested":false,"nodeType":"Literal","src":"15761:37:148","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":61148,"name":"log","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":59415,"src":"15757:3:148","typeDescriptions":{"typeIdentifier":"t_function_event_nonpayable$_t_string_memory_ptr_$returns$__$","typeString":"function (string memory)"}},"id":61150,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"15757:42:148","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":61151,"nodeType":"EmitStatement","src":"15752:47:148"},{"eventCall":{"arguments":[{"hexValue":"20204578706563746564","id":61153,"isConstant":false,"isLValue":false,"isPure":true,"kind":"string","lValueRequested":false,"nodeType":"Literal","src":"15834:12:148","typeDescriptions":{"typeIdentifier":"t_stringliteral_42fa07d7c51ce5de92a0fc65dbf7e7800814fd01c258dc50e84d5be59184bf0b","typeString":"literal_string \"  Expected\""},"value":"  Expected"},{"id":61154,"name":"b","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":61140,"src":"15848:1:148","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":61152,"name":"log_named_bytes","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":59489,"src":"15818:15:148","typeDescriptions":{"typeIdentifier":"t_function_event_nonpayable$_t_string_memory_ptr_$_t_bytes_memory_ptr_$returns$__$","typeString":"function (string memory,bytes memory)"}},"id":61155,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"15818:32:148","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":61156,"nodeType":"EmitStatement","src":"15813:37:148"},{"eventCall":{"arguments":[{"hexValue":"2020202041637475616c","id":61158,"isConstant":false,"isLValue":false,"isPure":true,"kind":"string","lValueRequested":false,"nodeType":"Literal","src":"15885:12:148","typeDescriptions":{"typeIdentifier":"t_stringliteral_d7896f3f645b3ba89da46bf231a5df16e525e587a84bc9b284dfb39958fb219b","typeString":"literal_string \"    Actual\""},"value":"    Actual"},{"id":61159,"name":"a","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":61138,"src":"15899:1:148","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":61157,"name":"log_named_bytes","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":59489,"src":"15869:15:148","typeDescriptions":{"typeIdentifier":"t_function_event_nonpayable$_t_string_memory_ptr_$_t_bytes_memory_ptr_$returns$__$","typeString":"function (string memory,bytes memory)"}},"id":61160,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"15869:32:148","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":61161,"nodeType":"EmitStatement","src":"15864:37:148"},{"expression":{"arguments":[],"expression":{"argumentTypes":[],"id":61162,"name":"fail","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":59626,"src":"15915:4:148","typeDescriptions":{"typeIdentifier":"t_function_internal_nonpayable$__$returns$__$","typeString":"function ()"}},"id":61163,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"15915:6:148","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":61164,"nodeType":"ExpressionStatement","src":"15915:6:148"}]}}]},"implemented":true,"kind":"function","modifiers":[],"name":"assertEq0","nameLocation":"15656:9:148","parameters":{"id":61141,"nodeType":"ParameterList","parameters":[{"constant":false,"id":61138,"mutability":"mutable","name":"a","nameLocation":"15679:1:148","nodeType":"VariableDeclaration","scope":61168,"src":"15666:14:148","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes"},"typeName":{"id":61137,"name":"bytes","nodeType":"ElementaryTypeName","src":"15666:5:148","typeDescriptions":{"typeIdentifier":"t_bytes_storage_ptr","typeString":"bytes"}},"visibility":"internal"},{"constant":false,"id":61140,"mutability":"mutable","name":"b","nameLocation":"15695:1:148","nodeType":"VariableDeclaration","scope":61168,"src":"15682:14:148","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes"},"typeName":{"id":61139,"name":"bytes","nodeType":"ElementaryTypeName","src":"15682:5:148","typeDescriptions":{"typeIdentifier":"t_bytes_storage_ptr","typeString":"bytes"}},"visibility":"internal"}],"src":"15665:32:148"},"returnParameters":{"id":61142,"nodeType":"ParameterList","parameters":[],"src":"15707:0:148"},"scope":61196,"stateMutability":"nonpayable","virtual":false,"visibility":"internal"},{"id":61195,"nodeType":"FunctionDefinition","src":"15943:205:148","nodes":[],"body":{"id":61194,"nodeType":"Block","src":"16022:126:148","nodes":[],"statements":[{"condition":{"id":61181,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"UnaryOperation","operator":"!","prefix":true,"src":"16036:15:148","subExpression":{"arguments":[{"id":61178,"name":"a","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":61170,"src":"16046:1:148","typeDescriptions":{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes memory"}},{"id":61179,"name":"b","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":61172,"src":"16049:1:148","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":61177,"name":"checkEq0","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":61136,"src":"16037:8:148","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":61180,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"16037:14:148","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":61193,"nodeType":"IfStatement","src":"16032:110:148","trueBody":{"id":61192,"nodeType":"Block","src":"16053:89:148","statements":[{"eventCall":{"arguments":[{"hexValue":"4572726f72","id":61183,"isConstant":false,"isLValue":false,"isPure":true,"kind":"string","lValueRequested":false,"nodeType":"Literal","src":"16089:7:148","typeDescriptions":{"typeIdentifier":"t_stringliteral_e342daa49723ff3485f4ff5f755a17b8bc9c3c33bbd312ceee37c94eebfe45c1","typeString":"literal_string \"Error\""},"value":"Error"},{"id":61184,"name":"err","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":61174,"src":"16098:3:148","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":61182,"name":"log_named_string","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":59495,"src":"16072:16:148","typeDescriptions":{"typeIdentifier":"t_function_event_nonpayable$_t_string_memory_ptr_$_t_string_memory_ptr_$returns$__$","typeString":"function (string memory,string memory)"}},"id":61185,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"16072:30:148","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":61186,"nodeType":"EmitStatement","src":"16067:35:148"},{"expression":{"arguments":[{"id":61188,"name":"a","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":61170,"src":"16126:1:148","typeDescriptions":{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes memory"}},{"id":61189,"name":"b","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":61172,"src":"16129:1:148","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":61187,"name":"assertEq0","nodeType":"Identifier","overloadedDeclarations":[61168,61195],"referencedDeclaration":61168,"src":"16116:9:148","typeDescriptions":{"typeIdentifier":"t_function_internal_nonpayable$_t_bytes_memory_ptr_$_t_bytes_memory_ptr_$returns$__$","typeString":"function (bytes memory,bytes memory)"}},"id":61190,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"16116:15:148","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":61191,"nodeType":"ExpressionStatement","src":"16116:15:148"}]}}]},"implemented":true,"kind":"function","modifiers":[],"name":"assertEq0","nameLocation":"15952:9:148","parameters":{"id":61175,"nodeType":"ParameterList","parameters":[{"constant":false,"id":61170,"mutability":"mutable","name":"a","nameLocation":"15975:1:148","nodeType":"VariableDeclaration","scope":61195,"src":"15962:14:148","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes"},"typeName":{"id":61169,"name":"bytes","nodeType":"ElementaryTypeName","src":"15962:5:148","typeDescriptions":{"typeIdentifier":"t_bytes_storage_ptr","typeString":"bytes"}},"visibility":"internal"},{"constant":false,"id":61172,"mutability":"mutable","name":"b","nameLocation":"15991:1:148","nodeType":"VariableDeclaration","scope":61195,"src":"15978:14:148","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes"},"typeName":{"id":61171,"name":"bytes","nodeType":"ElementaryTypeName","src":"15978:5:148","typeDescriptions":{"typeIdentifier":"t_bytes_storage_ptr","typeString":"bytes"}},"visibility":"internal"},{"constant":false,"id":61174,"mutability":"mutable","name":"err","nameLocation":"16008:3:148","nodeType":"VariableDeclaration","scope":61195,"src":"15994:17:148","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_string_memory_ptr","typeString":"string"},"typeName":{"id":61173,"name":"string","nodeType":"ElementaryTypeName","src":"15994:6:148","typeDescriptions":{"typeIdentifier":"t_string_storage_ptr","typeString":"string"}},"visibility":"internal"}],"src":"15961:51:148"},"returnParameters":{"id":61176,"nodeType":"ParameterList","parameters":[],"src":"16022:0:148"},"scope":61196,"stateMutability":"nonpayable","virtual":false,"visibility":"internal"}],"abstract":false,"baseContracts":[],"canonicalName":"DSTest","contractDependencies":[],"contractKind":"contract","fullyImplemented":true,"linearizedBaseContracts":[61196],"name":"DSTest","nameLocation":"724:6:148","scope":61197,"usedErrors":[],"usedEvents":[59415,59419,59423,59427,59431,59435,59439,59443,59449,59455,59463,59471,59477,59483,59489,59495]}],"license":"GPL-3.0-or-later"},"id":148}