polytone-evm 0.3.0

Core interfaces for Polytone Interchain accounts and queries.
Documentation
1
{"abi":[{"type":"error","name":"StringsInsufficientHexLength","inputs":[{"name":"value","type":"uint256","internalType":"uint256"},{"name":"length","type":"uint256","internalType":"uint256"}]}],"bytecode":{"object":"0x60808060405234601757603a9081601d823930815050f35b600080fdfe600080fdfea2646970667358221220b56ddacdf97a0d7e84ffe180d84d364576368d0644348ae5266f36b3fad460cc64736f6c63430008180033","sourceMap":"251:2847:42:-:0;;;;;;;;;;;;;;;;;;;;;","linkReferences":{}},"deployedBytecode":{"object":"0x600080fdfea2646970667358221220b56ddacdf97a0d7e84ffe180d84d364576368d0644348ae5266f36b3fad460cc64736f6c63430008180033","sourceMap":"251:2847:42:-:0;;","linkReferences":{}},"methodIdentifiers":{},"rawMetadata":"{\"compiler\":{\"version\":\"0.8.24+commit.e11b9ed9\"},\"language\":\"Solidity\",\"output\":{\"abi\":[{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"value\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"length\",\"type\":\"uint256\"}],\"name\":\"StringsInsufficientHexLength\",\"type\":\"error\"}],\"devdoc\":{\"details\":\"String operations.\",\"errors\":{\"StringsInsufficientHexLength(uint256,uint256)\":[{\"details\":\"The `value` string doesn't fit in the specified `length`.\"}]},\"kind\":\"dev\",\"methods\":{},\"version\":1},\"userdoc\":{\"kind\":\"user\",\"methods\":{},\"version\":1}},\"settings\":{\"compilationTarget\":{\"lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/utils/Strings.sol\":\"Strings\"},\"evmVersion\":\"paris\",\"libraries\":{},\"metadata\":{\"bytecodeHash\":\"ipfs\"},\"optimizer\":{\"enabled\":true,\"runs\":200},\"remappings\":[\":@openzeppelin/contracts-upgradeable/=lib/openzeppelin-contracts-upgradeable/contracts/\",\":@openzeppelin/contracts/=lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/\",\":ds-test/=lib/openzeppelin-foundry-upgrades/lib/solidity-stringutils/lib/ds-test/src/\",\":erc4626-tests/=lib/openzeppelin-contracts-upgradeable/lib/erc4626-tests/\",\":forge-std/=lib/forge-std/src/\",\":openzeppelin-contracts-upgradeable/=lib/openzeppelin-contracts-upgradeable/\",\":openzeppelin-contracts/=lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/\",\":openzeppelin-foundry-upgrades/=lib/openzeppelin-foundry-upgrades/src/\",\":solidity-stringutils/=lib/openzeppelin-foundry-upgrades/lib/solidity-stringutils/\"],\"viaIR\":true},\"sources\":{\"lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/utils/Strings.sol\":{\"keccak256\":\"0x55f102ea785d8399c0e58d1108e2d289506dde18abc6db1b7f68c1f9f9bc5792\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://6e52e0a7765c943ef14e5bcf11e46e6139fa044be564881378349236bf2e3453\",\"dweb:/ipfs/QmZEeeXoFPW47amyP35gfzomF9DixqqTEPwzBakv6cZw6i\"]},\"lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/utils/math/Math.sol\":{\"keccak256\":\"0x005ec64c6313f0555d59e278f9a7a5ab2db5bdc72a027f255a37c327af1ec02d\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://4ece9f0b9c8daca08c76b6b5405a6446b6f73b3a15fab7ff56e296cbd4a2c875\",\"dweb:/ipfs/QmQyRpyPRL5SQuAgj6SHmbir3foX65FJjbVTTQrA2EFg6L\"]},\"lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/utils/math/SignedMath.sol\":{\"keccak256\":\"0x5f7e4076e175393767754387c962926577f1660dd9b810187b9002407656be72\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://7d533a1c97cd43a57cd9c465f7ee8dd0e39ae93a8fb8ff8e5303a356b081cdcc\",\"dweb:/ipfs/QmVBEei6aTnvYNZp2CHYVNKyZS4q1KkjANfY39WVXZXVoT\"]}},\"version\":1}","metadata":{"compiler":{"version":"0.8.24+commit.e11b9ed9"},"language":"Solidity","output":{"abi":[{"inputs":[{"internalType":"uint256","name":"value","type":"uint256"},{"internalType":"uint256","name":"length","type":"uint256"}],"type":"error","name":"StringsInsufficientHexLength"}],"devdoc":{"kind":"dev","methods":{},"version":1},"userdoc":{"kind":"user","methods":{},"version":1}},"settings":{"remappings":["@openzeppelin/contracts-upgradeable/=lib/openzeppelin-contracts-upgradeable/contracts/","@openzeppelin/contracts/=lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/","ds-test/=lib/openzeppelin-foundry-upgrades/lib/solidity-stringutils/lib/ds-test/src/","erc4626-tests/=lib/openzeppelin-contracts-upgradeable/lib/erc4626-tests/","forge-std/=lib/forge-std/src/","openzeppelin-contracts-upgradeable/=lib/openzeppelin-contracts-upgradeable/","openzeppelin-contracts/=lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/","openzeppelin-foundry-upgrades/=lib/openzeppelin-foundry-upgrades/src/","solidity-stringutils/=lib/openzeppelin-foundry-upgrades/lib/solidity-stringutils/"],"optimizer":{"enabled":true,"runs":200},"metadata":{"bytecodeHash":"ipfs"},"compilationTarget":{"lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/utils/Strings.sol":"Strings"},"evmVersion":"paris","libraries":{},"viaIR":true},"sources":{"lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/utils/Strings.sol":{"keccak256":"0x55f102ea785d8399c0e58d1108e2d289506dde18abc6db1b7f68c1f9f9bc5792","urls":["bzz-raw://6e52e0a7765c943ef14e5bcf11e46e6139fa044be564881378349236bf2e3453","dweb:/ipfs/QmZEeeXoFPW47amyP35gfzomF9DixqqTEPwzBakv6cZw6i"],"license":"MIT"},"lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/utils/math/Math.sol":{"keccak256":"0x005ec64c6313f0555d59e278f9a7a5ab2db5bdc72a027f255a37c327af1ec02d","urls":["bzz-raw://4ece9f0b9c8daca08c76b6b5405a6446b6f73b3a15fab7ff56e296cbd4a2c875","dweb:/ipfs/QmQyRpyPRL5SQuAgj6SHmbir3foX65FJjbVTTQrA2EFg6L"],"license":"MIT"},"lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/utils/math/SignedMath.sol":{"keccak256":"0x5f7e4076e175393767754387c962926577f1660dd9b810187b9002407656be72","urls":["bzz-raw://7d533a1c97cd43a57cd9c465f7ee8dd0e39ae93a8fb8ff8e5303a356b081cdcc","dweb:/ipfs/QmVBEei6aTnvYNZp2CHYVNKyZS4q1KkjANfY39WVXZXVoT"],"license":"MIT"}},"version":1},"storageLayout":{"storage":[],"types":{}},"ast":{"absolutePath":"lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/utils/Strings.sol","id":37982,"exportedSymbols":{"Math":[39035],"SignedMath":[39140],"Strings":[37981]},"nodeType":"SourceUnit","src":"101:2998:42","nodes":[{"id":37728,"nodeType":"PragmaDirective","src":"101:24:42","nodes":[],"literals":["solidity","^","0.8",".20"]},{"id":37730,"nodeType":"ImportDirective","src":"127:37:42","nodes":[],"absolutePath":"lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/utils/math/Math.sol","file":"./math/Math.sol","nameLocation":"-1:-1:-1","scope":37982,"sourceUnit":39036,"symbolAliases":[{"foreign":{"id":37729,"name":"Math","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":39035,"src":"135:4:42","typeDescriptions":{}},"nameLocation":"-1:-1:-1"}],"unitAlias":""},{"id":37732,"nodeType":"ImportDirective","src":"165:49:42","nodes":[],"absolutePath":"lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/utils/math/SignedMath.sol","file":"./math/SignedMath.sol","nameLocation":"-1:-1:-1","scope":37982,"sourceUnit":39141,"symbolAliases":[{"foreign":{"id":37731,"name":"SignedMath","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":39140,"src":"173:10:42","typeDescriptions":{}},"nameLocation":"-1:-1:-1"}],"unitAlias":""},{"id":37981,"nodeType":"ContractDefinition","src":"251:2847:42","nodes":[{"id":37736,"nodeType":"VariableDeclaration","src":"273:56:42","nodes":[],"constant":true,"mutability":"constant","name":"HEX_DIGITS","nameLocation":"298:10:42","scope":37981,"stateVariable":true,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_bytes16","typeString":"bytes16"},"typeName":{"id":37734,"name":"bytes16","nodeType":"ElementaryTypeName","src":"273:7:42","typeDescriptions":{"typeIdentifier":"t_bytes16","typeString":"bytes16"}},"value":{"hexValue":"30313233343536373839616263646566","id":37735,"isConstant":false,"isLValue":false,"isPure":true,"kind":"string","lValueRequested":false,"nodeType":"Literal","src":"311:18:42","typeDescriptions":{"typeIdentifier":"t_stringliteral_cb29997ed99ead0db59ce4d12b7d3723198c827273e5796737c926d78019c39f","typeString":"literal_string \"0123456789abcdef\""},"value":"0123456789abcdef"},"visibility":"private"},{"id":37739,"nodeType":"VariableDeclaration","src":"335:42:42","nodes":[],"constant":true,"mutability":"constant","name":"ADDRESS_LENGTH","nameLocation":"358:14:42","scope":37981,"stateVariable":true,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint8","typeString":"uint8"},"typeName":{"id":37737,"name":"uint8","nodeType":"ElementaryTypeName","src":"335:5:42","typeDescriptions":{"typeIdentifier":"t_uint8","typeString":"uint8"}},"value":{"hexValue":"3230","id":37738,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"375:2:42","typeDescriptions":{"typeIdentifier":"t_rational_20_by_1","typeString":"int_const 20"},"value":"20"},"visibility":"private"},{"id":37746,"nodeType":"ErrorDefinition","src":"470:66:42","nodes":[],"documentation":{"id":37740,"nodeType":"StructuredDocumentation","src":"384:81:42","text":" @dev The `value` string doesn't fit in the specified `length`."},"errorSelector":"e22e27eb","name":"StringsInsufficientHexLength","nameLocation":"476:28:42","parameters":{"id":37745,"nodeType":"ParameterList","parameters":[{"constant":false,"id":37742,"mutability":"mutable","name":"value","nameLocation":"513:5:42","nodeType":"VariableDeclaration","scope":37746,"src":"505:13:42","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":37741,"name":"uint256","nodeType":"ElementaryTypeName","src":"505:7:42","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":37744,"mutability":"mutable","name":"length","nameLocation":"528:6:42","nodeType":"VariableDeclaration","scope":37746,"src":"520:14:42","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":37743,"name":"uint256","nodeType":"ElementaryTypeName","src":"520:7:42","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"504:31:42"}},{"id":37794,"nodeType":"FunctionDefinition","src":"637:698:42","nodes":[],"body":{"id":37793,"nodeType":"Block","src":"708:627:42","nodes":[],"statements":[{"id":37792,"nodeType":"UncheckedBlock","src":"718:611:42","statements":[{"assignments":[37755],"declarations":[{"constant":false,"id":37755,"mutability":"mutable","name":"length","nameLocation":"750:6:42","nodeType":"VariableDeclaration","scope":37792,"src":"742:14:42","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":37754,"name":"uint256","nodeType":"ElementaryTypeName","src":"742:7:42","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"id":37762,"initialValue":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":37761,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"arguments":[{"id":37758,"name":"value","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":37749,"src":"770:5:42","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"}],"expression":{"id":37756,"name":"Math","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":39035,"src":"759:4:42","typeDescriptions":{"typeIdentifier":"t_type$_t_contract$_Math_$39035_$","typeString":"type(library Math)"}},"id":37757,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"764:5:42","memberName":"log10","nodeType":"MemberAccess","referencedDeclaration":38855,"src":"759:10:42","typeDescriptions":{"typeIdentifier":"t_function_internal_pure$_t_uint256_$returns$_t_uint256_$","typeString":"function (uint256) pure returns (uint256)"}},"id":37759,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"759:17:42","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"+","rightExpression":{"hexValue":"31","id":37760,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"779:1:42","typeDescriptions":{"typeIdentifier":"t_rational_1_by_1","typeString":"int_const 1"},"value":"1"},"src":"759:21:42","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"VariableDeclarationStatement","src":"742:38:42"},{"assignments":[37764],"declarations":[{"constant":false,"id":37764,"mutability":"mutable","name":"buffer","nameLocation":"808:6:42","nodeType":"VariableDeclaration","scope":37792,"src":"794:20:42","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_string_memory_ptr","typeString":"string"},"typeName":{"id":37763,"name":"string","nodeType":"ElementaryTypeName","src":"794:6:42","typeDescriptions":{"typeIdentifier":"t_string_storage_ptr","typeString":"string"}},"visibility":"internal"}],"id":37769,"initialValue":{"arguments":[{"id":37767,"name":"length","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":37755,"src":"828:6:42","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"}],"id":37766,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"NewExpression","src":"817:10:42","typeDescriptions":{"typeIdentifier":"t_function_objectcreation_pure$_t_uint256_$returns$_t_string_memory_ptr_$","typeString":"function (uint256) pure returns (string memory)"},"typeName":{"id":37765,"name":"string","nodeType":"ElementaryTypeName","src":"821:6:42","typeDescriptions":{"typeIdentifier":"t_string_storage_ptr","typeString":"string"}}},"id":37768,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"817:18:42","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_string_memory_ptr","typeString":"string memory"}},"nodeType":"VariableDeclarationStatement","src":"794:41:42"},{"assignments":[37771],"declarations":[{"constant":false,"id":37771,"mutability":"mutable","name":"ptr","nameLocation":"857:3:42","nodeType":"VariableDeclaration","scope":37792,"src":"849:11:42","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":37770,"name":"uint256","nodeType":"ElementaryTypeName","src":"849:7:42","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"id":37772,"nodeType":"VariableDeclarationStatement","src":"849:11:42"},{"AST":{"nativeSrc":"930:67:42","nodeType":"YulBlock","src":"930:67:42","statements":[{"nativeSrc":"948:35:42","nodeType":"YulAssignment","src":"948:35:42","value":{"arguments":[{"name":"buffer","nativeSrc":"959:6:42","nodeType":"YulIdentifier","src":"959:6:42"},{"arguments":[{"kind":"number","nativeSrc":"971:2:42","nodeType":"YulLiteral","src":"971:2:42","type":"","value":"32"},{"name":"length","nativeSrc":"975:6:42","nodeType":"YulIdentifier","src":"975:6:42"}],"functionName":{"name":"add","nativeSrc":"967:3:42","nodeType":"YulIdentifier","src":"967:3:42"},"nativeSrc":"967:15:42","nodeType":"YulFunctionCall","src":"967:15:42"}],"functionName":{"name":"add","nativeSrc":"955:3:42","nodeType":"YulIdentifier","src":"955:3:42"},"nativeSrc":"955:28:42","nodeType":"YulFunctionCall","src":"955:28:42"},"variableNames":[{"name":"ptr","nativeSrc":"948:3:42","nodeType":"YulIdentifier","src":"948:3:42"}]}]},"documentation":"@solidity memory-safe-assembly","evmVersion":"paris","externalReferences":[{"declaration":37764,"isOffset":false,"isSlot":false,"src":"959:6:42","valueSize":1},{"declaration":37755,"isOffset":false,"isSlot":false,"src":"975:6:42","valueSize":1},{"declaration":37771,"isOffset":false,"isSlot":false,"src":"948:3:42","valueSize":1}],"id":37773,"nodeType":"InlineAssembly","src":"921:76:42"},{"body":{"id":37788,"nodeType":"Block","src":"1023:269:42","statements":[{"expression":{"id":37776,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"UnaryOperation","operator":"--","prefix":false,"src":"1041:5:42","subExpression":{"id":37775,"name":"ptr","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":37771,"src":"1041:3:42","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":37777,"nodeType":"ExpressionStatement","src":"1041:5:42"},{"AST":{"nativeSrc":"1124:86:42","nodeType":"YulBlock","src":"1124:86:42","statements":[{"expression":{"arguments":[{"name":"ptr","nativeSrc":"1154:3:42","nodeType":"YulIdentifier","src":"1154:3:42"},{"arguments":[{"arguments":[{"name":"value","nativeSrc":"1168:5:42","nodeType":"YulIdentifier","src":"1168:5:42"},{"kind":"number","nativeSrc":"1175:2:42","nodeType":"YulLiteral","src":"1175:2:42","type":"","value":"10"}],"functionName":{"name":"mod","nativeSrc":"1164:3:42","nodeType":"YulIdentifier","src":"1164:3:42"},"nativeSrc":"1164:14:42","nodeType":"YulFunctionCall","src":"1164:14:42"},{"name":"HEX_DIGITS","nativeSrc":"1180:10:42","nodeType":"YulIdentifier","src":"1180:10:42"}],"functionName":{"name":"byte","nativeSrc":"1159:4:42","nodeType":"YulIdentifier","src":"1159:4:42"},"nativeSrc":"1159:32:42","nodeType":"YulFunctionCall","src":"1159:32:42"}],"functionName":{"name":"mstore8","nativeSrc":"1146:7:42","nodeType":"YulIdentifier","src":"1146:7:42"},"nativeSrc":"1146:46:42","nodeType":"YulFunctionCall","src":"1146:46:42"},"nativeSrc":"1146:46:42","nodeType":"YulExpressionStatement","src":"1146:46:42"}]},"documentation":"@solidity memory-safe-assembly","evmVersion":"paris","externalReferences":[{"declaration":37736,"isOffset":false,"isSlot":false,"src":"1180:10:42","valueSize":1},{"declaration":37771,"isOffset":false,"isSlot":false,"src":"1154:3:42","valueSize":1},{"declaration":37749,"isOffset":false,"isSlot":false,"src":"1168:5:42","valueSize":1}],"id":37778,"nodeType":"InlineAssembly","src":"1115:95:42"},{"expression":{"id":37781,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":37779,"name":"value","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":37749,"src":"1227:5:42","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"Assignment","operator":"/=","rightHandSide":{"hexValue":"3130","id":37780,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"1236:2:42","typeDescriptions":{"typeIdentifier":"t_rational_10_by_1","typeString":"int_const 10"},"value":"10"},"src":"1227:11:42","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":37782,"nodeType":"ExpressionStatement","src":"1227:11:42"},{"condition":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":37785,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":37783,"name":"value","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":37749,"src":"1260:5:42","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"==","rightExpression":{"hexValue":"30","id":37784,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"1269:1:42","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"},"src":"1260:10:42","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":37787,"nodeType":"IfStatement","src":"1256:21:42","trueBody":{"id":37786,"nodeType":"Break","src":"1272:5:42"}}]},"condition":{"hexValue":"74727565","id":37774,"isConstant":false,"isLValue":false,"isPure":true,"kind":"bool","lValueRequested":false,"nodeType":"Literal","src":"1017:4:42","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"},"value":"true"},"id":37789,"nodeType":"WhileStatement","src":"1010:282:42"},{"expression":{"id":37790,"name":"buffer","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":37764,"src":"1312:6:42","typeDescriptions":{"typeIdentifier":"t_string_memory_ptr","typeString":"string memory"}},"functionReturnParameters":37753,"id":37791,"nodeType":"Return","src":"1305:13:42"}]}]},"documentation":{"id":37747,"nodeType":"StructuredDocumentation","src":"542:90:42","text":" @dev Converts a `uint256` to its ASCII `string` decimal representation."},"implemented":true,"kind":"function","modifiers":[],"name":"toString","nameLocation":"646:8:42","parameters":{"id":37750,"nodeType":"ParameterList","parameters":[{"constant":false,"id":37749,"mutability":"mutable","name":"value","nameLocation":"663:5:42","nodeType":"VariableDeclaration","scope":37794,"src":"655:13:42","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":37748,"name":"uint256","nodeType":"ElementaryTypeName","src":"655:7:42","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"654:15:42"},"returnParameters":{"id":37753,"nodeType":"ParameterList","parameters":[{"constant":false,"id":37752,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":37794,"src":"693:13:42","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_string_memory_ptr","typeString":"string"},"typeName":{"id":37751,"name":"string","nodeType":"ElementaryTypeName","src":"693:6:42","typeDescriptions":{"typeIdentifier":"t_string_storage_ptr","typeString":"string"}},"visibility":"internal"}],"src":"692:15:42"},"scope":37981,"stateMutability":"pure","virtual":false,"visibility":"internal"},{"id":37820,"nodeType":"FunctionDefinition","src":"1435:168:42","nodes":[],"body":{"id":37819,"nodeType":"Block","src":"1511:92:42","nodes":[],"statements":[{"expression":{"arguments":[{"condition":{"commonType":{"typeIdentifier":"t_int256","typeString":"int256"},"id":37807,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":37805,"name":"value","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":37797,"src":"1542:5:42","typeDescriptions":{"typeIdentifier":"t_int256","typeString":"int256"}},"nodeType":"BinaryOperation","operator":"<","rightExpression":{"hexValue":"30","id":37806,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"1550:1:42","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"},"src":"1542:9:42","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"falseExpression":{"hexValue":"","id":37809,"isConstant":false,"isLValue":false,"isPure":true,"kind":"string","lValueRequested":false,"nodeType":"Literal","src":"1560:2:42","typeDescriptions":{"typeIdentifier":"t_stringliteral_c5d2460186f7233c927e7db2dcc703c0e500b653ca82273b7bfad8045d85a470","typeString":"literal_string \"\""},"value":""},"id":37810,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"Conditional","src":"1542:20:42","trueExpression":{"hexValue":"2d","id":37808,"isConstant":false,"isLValue":false,"isPure":true,"kind":"string","lValueRequested":false,"nodeType":"Literal","src":"1554:3:42","typeDescriptions":{"typeIdentifier":"t_stringliteral_d3b8281179950f98149eefdb158d0e1acb56f56e8e343aa9fefafa7e36959561","typeString":"literal_string \"-\""},"value":"-"},"typeDescriptions":{"typeIdentifier":"t_string_memory_ptr","typeString":"string memory"}},{"arguments":[{"arguments":[{"id":37814,"name":"value","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":37797,"src":"1588:5:42","typeDescriptions":{"typeIdentifier":"t_int256","typeString":"int256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_int256","typeString":"int256"}],"expression":{"id":37812,"name":"SignedMath","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":39140,"src":"1573:10:42","typeDescriptions":{"typeIdentifier":"t_type$_t_contract$_SignedMath_$39140_$","typeString":"type(library SignedMath)"}},"id":37813,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"1584:3:42","memberName":"abs","nodeType":"MemberAccess","referencedDeclaration":39139,"src":"1573:14:42","typeDescriptions":{"typeIdentifier":"t_function_internal_pure$_t_int256_$returns$_t_uint256_$","typeString":"function (int256) pure returns (uint256)"}},"id":37815,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"1573:21:42","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"}],"id":37811,"name":"toString","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":37794,"src":"1564:8:42","typeDescriptions":{"typeIdentifier":"t_function_internal_pure$_t_uint256_$returns$_t_string_memory_ptr_$","typeString":"function (uint256) pure returns (string memory)"}},"id":37816,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"1564:31:42","tryCall":false,"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"}],"expression":{"id":37803,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"1528:6:42","typeDescriptions":{"typeIdentifier":"t_type$_t_string_storage_ptr_$","typeString":"type(string storage pointer)"},"typeName":{"id":37802,"name":"string","nodeType":"ElementaryTypeName","src":"1528:6:42","typeDescriptions":{}}},"id":37804,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"1535:6:42","memberName":"concat","nodeType":"MemberAccess","src":"1528:13:42","typeDescriptions":{"typeIdentifier":"t_function_stringconcat_pure$__$returns$_t_string_memory_ptr_$","typeString":"function () pure returns (string memory)"}},"id":37817,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"1528:68:42","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_string_memory_ptr","typeString":"string memory"}},"functionReturnParameters":37801,"id":37818,"nodeType":"Return","src":"1521:75:42"}]},"documentation":{"id":37795,"nodeType":"StructuredDocumentation","src":"1341:89:42","text":" @dev Converts a `int256` to its ASCII `string` decimal representation."},"implemented":true,"kind":"function","modifiers":[],"name":"toStringSigned","nameLocation":"1444:14:42","parameters":{"id":37798,"nodeType":"ParameterList","parameters":[{"constant":false,"id":37797,"mutability":"mutable","name":"value","nameLocation":"1466:5:42","nodeType":"VariableDeclaration","scope":37820,"src":"1459:12:42","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_int256","typeString":"int256"},"typeName":{"id":37796,"name":"int256","nodeType":"ElementaryTypeName","src":"1459:6:42","typeDescriptions":{"typeIdentifier":"t_int256","typeString":"int256"}},"visibility":"internal"}],"src":"1458:14:42"},"returnParameters":{"id":37801,"nodeType":"ParameterList","parameters":[{"constant":false,"id":37800,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":37820,"src":"1496:13:42","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_string_memory_ptr","typeString":"string"},"typeName":{"id":37799,"name":"string","nodeType":"ElementaryTypeName","src":"1496:6:42","typeDescriptions":{"typeIdentifier":"t_string_storage_ptr","typeString":"string"}},"visibility":"internal"}],"src":"1495:15:42"},"scope":37981,"stateMutability":"pure","virtual":false,"visibility":"internal"},{"id":37840,"nodeType":"FunctionDefinition","src":"1708:174:42","nodes":[],"body":{"id":37839,"nodeType":"Block","src":"1782:100:42","nodes":[],"statements":[{"id":37838,"nodeType":"UncheckedBlock","src":"1792:84:42","statements":[{"expression":{"arguments":[{"id":37829,"name":"value","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":37823,"src":"1835:5:42","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":37835,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"arguments":[{"id":37832,"name":"value","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":37823,"src":"1854:5:42","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"}],"expression":{"id":37830,"name":"Math","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":39035,"src":"1842:4:42","typeDescriptions":{"typeIdentifier":"t_type$_t_contract$_Math_$39035_$","typeString":"type(library Math)"}},"id":37831,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"1847:6:42","memberName":"log256","nodeType":"MemberAccess","referencedDeclaration":38977,"src":"1842:11:42","typeDescriptions":{"typeIdentifier":"t_function_internal_pure$_t_uint256_$returns$_t_uint256_$","typeString":"function (uint256) pure returns (uint256)"}},"id":37833,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"1842:18:42","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"+","rightExpression":{"hexValue":"31","id":37834,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"1863:1:42","typeDescriptions":{"typeIdentifier":"t_rational_1_by_1","typeString":"int_const 1"},"value":"1"},"src":"1842:22:42","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"},{"typeIdentifier":"t_uint256","typeString":"uint256"}],"id":37828,"name":"toHexString","nodeType":"Identifier","overloadedDeclarations":[37840,37923,37943],"referencedDeclaration":37923,"src":"1823:11:42","typeDescriptions":{"typeIdentifier":"t_function_internal_pure$_t_uint256_$_t_uint256_$returns$_t_string_memory_ptr_$","typeString":"function (uint256,uint256) pure returns (string memory)"}},"id":37836,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"1823:42:42","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_string_memory_ptr","typeString":"string memory"}},"functionReturnParameters":37827,"id":37837,"nodeType":"Return","src":"1816:49:42"}]}]},"documentation":{"id":37821,"nodeType":"StructuredDocumentation","src":"1609:94:42","text":" @dev Converts a `uint256` to its ASCII `string` hexadecimal representation."},"implemented":true,"kind":"function","modifiers":[],"name":"toHexString","nameLocation":"1717:11:42","parameters":{"id":37824,"nodeType":"ParameterList","parameters":[{"constant":false,"id":37823,"mutability":"mutable","name":"value","nameLocation":"1737:5:42","nodeType":"VariableDeclaration","scope":37840,"src":"1729:13:42","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":37822,"name":"uint256","nodeType":"ElementaryTypeName","src":"1729:7:42","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"1728:15:42"},"returnParameters":{"id":37827,"nodeType":"ParameterList","parameters":[{"constant":false,"id":37826,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":37840,"src":"1767:13:42","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_string_memory_ptr","typeString":"string"},"typeName":{"id":37825,"name":"string","nodeType":"ElementaryTypeName","src":"1767:6:42","typeDescriptions":{"typeIdentifier":"t_string_storage_ptr","typeString":"string"}},"visibility":"internal"}],"src":"1766:15:42"},"scope":37981,"stateMutability":"pure","virtual":false,"visibility":"internal"},{"id":37923,"nodeType":"FunctionDefinition","src":"2005:525:42","nodes":[],"body":{"id":37922,"nodeType":"Block","src":"2095:435:42","nodes":[],"statements":[{"assignments":[37851],"declarations":[{"constant":false,"id":37851,"mutability":"mutable","name":"localValue","nameLocation":"2113:10:42","nodeType":"VariableDeclaration","scope":37922,"src":"2105:18:42","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":37850,"name":"uint256","nodeType":"ElementaryTypeName","src":"2105:7:42","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"id":37853,"initialValue":{"id":37852,"name":"value","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":37843,"src":"2126:5:42","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"VariableDeclarationStatement","src":"2105:26:42"},{"assignments":[37855],"declarations":[{"constant":false,"id":37855,"mutability":"mutable","name":"buffer","nameLocation":"2154:6:42","nodeType":"VariableDeclaration","scope":37922,"src":"2141:19:42","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes"},"typeName":{"id":37854,"name":"bytes","nodeType":"ElementaryTypeName","src":"2141:5:42","typeDescriptions":{"typeIdentifier":"t_bytes_storage_ptr","typeString":"bytes"}},"visibility":"internal"}],"id":37864,"initialValue":{"arguments":[{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":37862,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":37860,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"hexValue":"32","id":37858,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"2173:1:42","typeDescriptions":{"typeIdentifier":"t_rational_2_by_1","typeString":"int_const 2"},"value":"2"},"nodeType":"BinaryOperation","operator":"*","rightExpression":{"id":37859,"name":"length","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":37845,"src":"2177:6:42","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"2173:10:42","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"+","rightExpression":{"hexValue":"32","id":37861,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"2186:1:42","typeDescriptions":{"typeIdentifier":"t_rational_2_by_1","typeString":"int_const 2"},"value":"2"},"src":"2173:14:42","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"}],"id":37857,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"NewExpression","src":"2163:9:42","typeDescriptions":{"typeIdentifier":"t_function_objectcreation_pure$_t_uint256_$returns$_t_bytes_memory_ptr_$","typeString":"function (uint256) pure returns (bytes memory)"},"typeName":{"id":37856,"name":"bytes","nodeType":"ElementaryTypeName","src":"2167:5:42","typeDescriptions":{"typeIdentifier":"t_bytes_storage_ptr","typeString":"bytes"}}},"id":37863,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"2163:25:42","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes memory"}},"nodeType":"VariableDeclarationStatement","src":"2141:47:42"},{"expression":{"id":37869,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"baseExpression":{"id":37865,"name":"buffer","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":37855,"src":"2198:6:42","typeDescriptions":{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes memory"}},"id":37867,"indexExpression":{"hexValue":"30","id":37866,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"2205:1:42","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":true,"nodeType":"IndexAccess","src":"2198:9:42","typeDescriptions":{"typeIdentifier":"t_bytes1","typeString":"bytes1"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"hexValue":"30","id":37868,"isConstant":false,"isLValue":false,"isPure":true,"kind":"string","lValueRequested":false,"nodeType":"Literal","src":"2210:3:42","typeDescriptions":{"typeIdentifier":"t_stringliteral_044852b2a670ade5407e78fb2863c51de9fcb96542a07186fe3aeda6bb8a116d","typeString":"literal_string \"0\""},"value":"0"},"src":"2198:15:42","typeDescriptions":{"typeIdentifier":"t_bytes1","typeString":"bytes1"}},"id":37870,"nodeType":"ExpressionStatement","src":"2198:15:42"},{"expression":{"id":37875,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"baseExpression":{"id":37871,"name":"buffer","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":37855,"src":"2223:6:42","typeDescriptions":{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes memory"}},"id":37873,"indexExpression":{"hexValue":"31","id":37872,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"2230:1:42","typeDescriptions":{"typeIdentifier":"t_rational_1_by_1","typeString":"int_const 1"},"value":"1"},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":true,"nodeType":"IndexAccess","src":"2223:9:42","typeDescriptions":{"typeIdentifier":"t_bytes1","typeString":"bytes1"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"hexValue":"78","id":37874,"isConstant":false,"isLValue":false,"isPure":true,"kind":"string","lValueRequested":false,"nodeType":"Literal","src":"2235:3:42","typeDescriptions":{"typeIdentifier":"t_stringliteral_7521d1cadbcfa91eec65aa16715b94ffc1c9654ba57ea2ef1a2127bca1127a83","typeString":"literal_string \"x\""},"value":"x"},"src":"2223:15:42","typeDescriptions":{"typeIdentifier":"t_bytes1","typeString":"bytes1"}},"id":37876,"nodeType":"ExpressionStatement","src":"2223:15:42"},{"body":{"id":37905,"nodeType":"Block","src":"2293:95:42","statements":[{"expression":{"id":37899,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"baseExpression":{"id":37891,"name":"buffer","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":37855,"src":"2307:6:42","typeDescriptions":{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes memory"}},"id":37893,"indexExpression":{"id":37892,"name":"i","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":37878,"src":"2314:1:42","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":true,"nodeType":"IndexAccess","src":"2307:9:42","typeDescriptions":{"typeIdentifier":"t_bytes1","typeString":"bytes1"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"baseExpression":{"id":37894,"name":"HEX_DIGITS","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":37736,"src":"2319:10:42","typeDescriptions":{"typeIdentifier":"t_bytes16","typeString":"bytes16"}},"id":37898,"indexExpression":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":37897,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":37895,"name":"localValue","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":37851,"src":"2330:10:42","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"&","rightExpression":{"hexValue":"307866","id":37896,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"2343:3:42","typeDescriptions":{"typeIdentifier":"t_rational_15_by_1","typeString":"int_const 15"},"value":"0xf"},"src":"2330:16:42","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"2319:28:42","typeDescriptions":{"typeIdentifier":"t_bytes1","typeString":"bytes1"}},"src":"2307:40:42","typeDescriptions":{"typeIdentifier":"t_bytes1","typeString":"bytes1"}},"id":37900,"nodeType":"ExpressionStatement","src":"2307:40:42"},{"expression":{"id":37903,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":37901,"name":"localValue","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":37851,"src":"2361:10:42","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"Assignment","operator":">>=","rightHandSide":{"hexValue":"34","id":37902,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"2376:1:42","typeDescriptions":{"typeIdentifier":"t_rational_4_by_1","typeString":"int_const 4"},"value":"4"},"src":"2361:16:42","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":37904,"nodeType":"ExpressionStatement","src":"2361:16:42"}]},"condition":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":37887,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":37885,"name":"i","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":37878,"src":"2281:1:42","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":">","rightExpression":{"hexValue":"31","id":37886,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"2285:1:42","typeDescriptions":{"typeIdentifier":"t_rational_1_by_1","typeString":"int_const 1"},"value":"1"},"src":"2281:5:42","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":37906,"initializationExpression":{"assignments":[37878],"declarations":[{"constant":false,"id":37878,"mutability":"mutable","name":"i","nameLocation":"2261:1:42","nodeType":"VariableDeclaration","scope":37906,"src":"2253:9:42","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":37877,"name":"uint256","nodeType":"ElementaryTypeName","src":"2253:7:42","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"id":37884,"initialValue":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":37883,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":37881,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"hexValue":"32","id":37879,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"2265:1:42","typeDescriptions":{"typeIdentifier":"t_rational_2_by_1","typeString":"int_const 2"},"value":"2"},"nodeType":"BinaryOperation","operator":"*","rightExpression":{"id":37880,"name":"length","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":37845,"src":"2269:6:42","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"2265:10:42","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"+","rightExpression":{"hexValue":"31","id":37882,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"2278:1:42","typeDescriptions":{"typeIdentifier":"t_rational_1_by_1","typeString":"int_const 1"},"value":"1"},"src":"2265:14:42","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"VariableDeclarationStatement","src":"2253:26:42"},"isSimpleCounterLoop":false,"loopExpression":{"expression":{"id":37889,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"UnaryOperation","operator":"--","prefix":true,"src":"2288:3:42","subExpression":{"id":37888,"name":"i","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":37878,"src":"2290:1:42","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":37890,"nodeType":"ExpressionStatement","src":"2288:3:42"},"nodeType":"ForStatement","src":"2248:140:42"},{"condition":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":37909,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":37907,"name":"localValue","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":37851,"src":"2401:10:42","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"!=","rightExpression":{"hexValue":"30","id":37908,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"2415:1:42","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"},"src":"2401:15:42","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":37916,"nodeType":"IfStatement","src":"2397:96:42","trueBody":{"id":37915,"nodeType":"Block","src":"2418:75:42","statements":[{"errorCall":{"arguments":[{"id":37911,"name":"value","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":37843,"src":"2468:5:42","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},{"id":37912,"name":"length","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":37845,"src":"2475:6:42","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"},{"typeIdentifier":"t_uint256","typeString":"uint256"}],"id":37910,"name":"StringsInsufficientHexLength","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":37746,"src":"2439:28:42","typeDescriptions":{"typeIdentifier":"t_function_error_pure$_t_uint256_$_t_uint256_$returns$__$","typeString":"function (uint256,uint256) pure"}},"id":37913,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"2439:43:42","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":37914,"nodeType":"RevertStatement","src":"2432:50:42"}]}},{"expression":{"arguments":[{"id":37919,"name":"buffer","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":37855,"src":"2516:6:42","typeDescriptions":{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes memory"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes memory"}],"id":37918,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"2509:6:42","typeDescriptions":{"typeIdentifier":"t_type$_t_string_storage_ptr_$","typeString":"type(string storage pointer)"},"typeName":{"id":37917,"name":"string","nodeType":"ElementaryTypeName","src":"2509:6:42","typeDescriptions":{}}},"id":37920,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"2509:14:42","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_string_memory_ptr","typeString":"string memory"}},"functionReturnParameters":37849,"id":37921,"nodeType":"Return","src":"2502:21:42"}]},"documentation":{"id":37841,"nodeType":"StructuredDocumentation","src":"1888:112:42","text":" @dev Converts a `uint256` to its ASCII `string` hexadecimal representation with fixed length."},"implemented":true,"kind":"function","modifiers":[],"name":"toHexString","nameLocation":"2014:11:42","parameters":{"id":37846,"nodeType":"ParameterList","parameters":[{"constant":false,"id":37843,"mutability":"mutable","name":"value","nameLocation":"2034:5:42","nodeType":"VariableDeclaration","scope":37923,"src":"2026:13:42","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":37842,"name":"uint256","nodeType":"ElementaryTypeName","src":"2026:7:42","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":37845,"mutability":"mutable","name":"length","nameLocation":"2049:6:42","nodeType":"VariableDeclaration","scope":37923,"src":"2041:14:42","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":37844,"name":"uint256","nodeType":"ElementaryTypeName","src":"2041:7:42","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"2025:31:42"},"returnParameters":{"id":37849,"nodeType":"ParameterList","parameters":[{"constant":false,"id":37848,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":37923,"src":"2080:13:42","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_string_memory_ptr","typeString":"string"},"typeName":{"id":37847,"name":"string","nodeType":"ElementaryTypeName","src":"2080:6:42","typeDescriptions":{"typeIdentifier":"t_string_storage_ptr","typeString":"string"}},"visibility":"internal"}],"src":"2079:15:42"},"scope":37981,"stateMutability":"pure","virtual":false,"visibility":"internal"},{"id":37943,"nodeType":"FunctionDefinition","src":"2689:148:42","nodes":[],"body":{"id":37942,"nodeType":"Block","src":"2762:75:42","nodes":[],"statements":[{"expression":{"arguments":[{"arguments":[{"arguments":[{"id":37936,"name":"addr","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":37926,"src":"2807:4:42","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"}],"id":37935,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"2799:7:42","typeDescriptions":{"typeIdentifier":"t_type$_t_uint160_$","typeString":"type(uint160)"},"typeName":{"id":37934,"name":"uint160","nodeType":"ElementaryTypeName","src":"2799:7:42","typeDescriptions":{}}},"id":37937,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"2799:13:42","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_uint160","typeString":"uint160"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint160","typeString":"uint160"}],"id":37933,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"2791:7:42","typeDescriptions":{"typeIdentifier":"t_type$_t_uint256_$","typeString":"type(uint256)"},"typeName":{"id":37932,"name":"uint256","nodeType":"ElementaryTypeName","src":"2791:7:42","typeDescriptions":{}}},"id":37938,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"2791:22:42","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},{"id":37939,"name":"ADDRESS_LENGTH","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":37739,"src":"2815:14:42","typeDescriptions":{"typeIdentifier":"t_uint8","typeString":"uint8"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"},{"typeIdentifier":"t_uint8","typeString":"uint8"}],"id":37931,"name":"toHexString","nodeType":"Identifier","overloadedDeclarations":[37840,37923,37943],"referencedDeclaration":37923,"src":"2779:11:42","typeDescriptions":{"typeIdentifier":"t_function_internal_pure$_t_uint256_$_t_uint256_$returns$_t_string_memory_ptr_$","typeString":"function (uint256,uint256) pure returns (string memory)"}},"id":37940,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"2779:51:42","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_string_memory_ptr","typeString":"string memory"}},"functionReturnParameters":37930,"id":37941,"nodeType":"Return","src":"2772:58:42"}]},"documentation":{"id":37924,"nodeType":"StructuredDocumentation","src":"2536:148:42","text":" @dev Converts an `address` with fixed length of 20 bytes to its not checksummed ASCII `string` hexadecimal\n representation."},"implemented":true,"kind":"function","modifiers":[],"name":"toHexString","nameLocation":"2698:11:42","parameters":{"id":37927,"nodeType":"ParameterList","parameters":[{"constant":false,"id":37926,"mutability":"mutable","name":"addr","nameLocation":"2718:4:42","nodeType":"VariableDeclaration","scope":37943,"src":"2710:12:42","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":37925,"name":"address","nodeType":"ElementaryTypeName","src":"2710:7:42","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"src":"2709:14:42"},"returnParameters":{"id":37930,"nodeType":"ParameterList","parameters":[{"constant":false,"id":37929,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":37943,"src":"2747:13:42","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_string_memory_ptr","typeString":"string"},"typeName":{"id":37928,"name":"string","nodeType":"ElementaryTypeName","src":"2747:6:42","typeDescriptions":{"typeIdentifier":"t_string_storage_ptr","typeString":"string"}},"visibility":"internal"}],"src":"2746:15:42"},"scope":37981,"stateMutability":"pure","virtual":false,"visibility":"internal"},{"id":37980,"nodeType":"FunctionDefinition","src":"2914:182:42","nodes":[],"body":{"id":37979,"nodeType":"Block","src":"2992:104:42","nodes":[],"statements":[{"expression":{"commonType":{"typeIdentifier":"t_bool","typeString":"bool"},"id":37977,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":37963,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"expression":{"arguments":[{"id":37955,"name":"a","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":37946,"src":"3015:1:42","typeDescriptions":{"typeIdentifier":"t_string_memory_ptr","typeString":"string memory"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_string_memory_ptr","typeString":"string memory"}],"id":37954,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"3009:5:42","typeDescriptions":{"typeIdentifier":"t_type$_t_bytes_storage_ptr_$","typeString":"type(bytes storage pointer)"},"typeName":{"id":37953,"name":"bytes","nodeType":"ElementaryTypeName","src":"3009:5:42","typeDescriptions":{}}},"id":37956,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"3009:8:42","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes memory"}},"id":37957,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"3018:6:42","memberName":"length","nodeType":"MemberAccess","src":"3009:15:42","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"==","rightExpression":{"expression":{"arguments":[{"id":37960,"name":"b","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":37948,"src":"3034:1:42","typeDescriptions":{"typeIdentifier":"t_string_memory_ptr","typeString":"string memory"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_string_memory_ptr","typeString":"string memory"}],"id":37959,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"3028:5:42","typeDescriptions":{"typeIdentifier":"t_type$_t_bytes_storage_ptr_$","typeString":"type(bytes storage pointer)"},"typeName":{"id":37958,"name":"bytes","nodeType":"ElementaryTypeName","src":"3028:5:42","typeDescriptions":{}}},"id":37961,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"3028:8:42","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes memory"}},"id":37962,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"3037:6:42","memberName":"length","nodeType":"MemberAccess","src":"3028:15:42","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"3009:34:42","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"nodeType":"BinaryOperation","operator":"&&","rightExpression":{"commonType":{"typeIdentifier":"t_bytes32","typeString":"bytes32"},"id":37976,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"arguments":[{"arguments":[{"id":37967,"name":"a","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":37946,"src":"3063:1:42","typeDescriptions":{"typeIdentifier":"t_string_memory_ptr","typeString":"string memory"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_string_memory_ptr","typeString":"string memory"}],"id":37966,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"3057:5:42","typeDescriptions":{"typeIdentifier":"t_type$_t_bytes_storage_ptr_$","typeString":"type(bytes storage pointer)"},"typeName":{"id":37965,"name":"bytes","nodeType":"ElementaryTypeName","src":"3057:5:42","typeDescriptions":{}}},"id":37968,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"3057:8:42","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes memory"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes memory"}],"id":37964,"name":"keccak256","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-8,"src":"3047:9:42","typeDescriptions":{"typeIdentifier":"t_function_keccak256_pure$_t_bytes_memory_ptr_$returns$_t_bytes32_$","typeString":"function (bytes memory) pure returns (bytes32)"}},"id":37969,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"3047:19:42","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"nodeType":"BinaryOperation","operator":"==","rightExpression":{"arguments":[{"arguments":[{"id":37973,"name":"b","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":37948,"src":"3086:1:42","typeDescriptions":{"typeIdentifier":"t_string_memory_ptr","typeString":"string memory"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_string_memory_ptr","typeString":"string memory"}],"id":37972,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"3080:5:42","typeDescriptions":{"typeIdentifier":"t_type$_t_bytes_storage_ptr_$","typeString":"type(bytes storage pointer)"},"typeName":{"id":37971,"name":"bytes","nodeType":"ElementaryTypeName","src":"3080:5:42","typeDescriptions":{}}},"id":37974,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"3080:8:42","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes memory"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes memory"}],"id":37970,"name":"keccak256","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-8,"src":"3070:9:42","typeDescriptions":{"typeIdentifier":"t_function_keccak256_pure$_t_bytes_memory_ptr_$returns$_t_bytes32_$","typeString":"function (bytes memory) pure returns (bytes32)"}},"id":37975,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"3070:19:42","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"src":"3047:42:42","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"src":"3009:80:42","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"functionReturnParameters":37952,"id":37978,"nodeType":"Return","src":"3002:87:42"}]},"documentation":{"id":37944,"nodeType":"StructuredDocumentation","src":"2843:66:42","text":" @dev Returns true if the two strings are equal."},"implemented":true,"kind":"function","modifiers":[],"name":"equal","nameLocation":"2923:5:42","parameters":{"id":37949,"nodeType":"ParameterList","parameters":[{"constant":false,"id":37946,"mutability":"mutable","name":"a","nameLocation":"2943:1:42","nodeType":"VariableDeclaration","scope":37980,"src":"2929:15:42","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_string_memory_ptr","typeString":"string"},"typeName":{"id":37945,"name":"string","nodeType":"ElementaryTypeName","src":"2929:6:42","typeDescriptions":{"typeIdentifier":"t_string_storage_ptr","typeString":"string"}},"visibility":"internal"},{"constant":false,"id":37948,"mutability":"mutable","name":"b","nameLocation":"2960:1:42","nodeType":"VariableDeclaration","scope":37980,"src":"2946:15:42","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_string_memory_ptr","typeString":"string"},"typeName":{"id":37947,"name":"string","nodeType":"ElementaryTypeName","src":"2946:6:42","typeDescriptions":{"typeIdentifier":"t_string_storage_ptr","typeString":"string"}},"visibility":"internal"}],"src":"2928:34:42"},"returnParameters":{"id":37952,"nodeType":"ParameterList","parameters":[{"constant":false,"id":37951,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":37980,"src":"2986:4:42","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"},"typeName":{"id":37950,"name":"bool","nodeType":"ElementaryTypeName","src":"2986:4:42","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"visibility":"internal"}],"src":"2985:6:42"},"scope":37981,"stateMutability":"pure","virtual":false,"visibility":"internal"}],"abstract":false,"baseContracts":[],"canonicalName":"Strings","contractDependencies":[],"contractKind":"library","documentation":{"id":37733,"nodeType":"StructuredDocumentation","src":"216:34:42","text":" @dev String operations."},"fullyImplemented":true,"linearizedBaseContracts":[37981],"name":"Strings","nameLocation":"259:7:42","scope":37982,"usedErrors":[37746],"usedEvents":[]}],"license":"MIT"},"id":42}