@tokamak-network/thanos-contracts
Version:
1 lines • 148 kB
JSON
{"abi":[],"bytecode":{"object":"0x602c6032600b8282823980515f1a607314602657634e487b7160e01b5f525f60045260245ffd5b305f52607381538281f3fe730000000000000000000000000000000000000000301460806040525f80fdfea164736f6c634300081a000a","sourceMap":"418:8747:76:-:0;;;;;;;;;;;;;;;-1:-1:-1;;;418:8747:76;;;;;;;;;;;;;;;;;","linkReferences":{}},"deployedBytecode":{"object":"0x730000000000000000000000000000000000000000301460806040525f80fdfea164736f6c634300081a000a","sourceMap":"418:8747:76:-:0;;;;;;;;","linkReferences":{}},"methodIdentifiers":{},"rawMetadata":"{\"compiler\":{\"version\":\"0.8.26+commit.8a97fa7a\"},\"language\":\"Solidity\",\"output\":{\"abi\":[],\"devdoc\":{\"custom:attribution\":\"https://github.com/hamdiallam/Solidity-RLP\",\"kind\":\"dev\",\"methods\":{},\"title\":\"RLPReader\",\"version\":1},\"userdoc\":{\"kind\":\"user\",\"methods\":{},\"notice\":\"RLPReader is a library for parsing RLP-encoded byte arrays into Solidity types. Adapted from Solidity-RLP (https://github.com/hamdiallam/Solidity-RLP) by Hamdi Allam with various tweaks to improve readability.\",\"version\":1}},\"settings\":{\"compilationTarget\":{\"src/libraries/rlp/RLPReader.sol\":\"RLPReader\"},\"evmVersion\":\"cancun\",\"libraries\":{\"src/tokamak-contracts/USDC/L2/tokamak-USDC/v2/FiatTokenV2_2.sol:SignatureChecker\":\"0x4200000000000000000000000000000000000776\"},\"metadata\":{\"bytecodeHash\":\"none\"},\"optimizer\":{\"enabled\":true,\"runs\":999999},\"remappings\":[\":@lib-keccak/=lib/lib-keccak/contracts/lib/\",\":@openzeppelin/contracts-upgradeable/=lib/openzeppelin-contracts-upgradeable/contracts/\",\":@openzeppelin/contracts/=lib/openzeppelin-contracts/contracts/\",\":@openzeppelin/contracts_v3.1.0/=lib/openzeppelin-contracts_v3.1.0/contracts/\",\":@openzeppelin/contracts_v5.0.1/=lib/openzeppelin-contracts_v5.0.1/contracts/\",\":@rari-capital/solmate/=lib/solmate/\",\":@solady-test/=lib/lib-keccak/lib/solady/test/\",\":@solady/=lib/solady/src/\",\":automate/=lib/automate/contracts/\",\":ds-test/=lib/forge-std/lib/ds-test/src/\",\":erc4626-tests/=lib/openzeppelin-contracts_v5.0.1/lib/erc4626-tests/\",\":forge-std/=lib/forge-std/src/\",\":gelato/=lib/automate/contracts/\",\":hardhat/=lib/automate/node_modules/hardhat/\",\":kontrol-cheatcodes/=lib/kontrol-cheatcodes/src/\",\":lib-keccak/=lib/lib-keccak/contracts/\",\":openzeppelin-contracts-upgradeable/=lib/openzeppelin-contracts-upgradeable/\",\":openzeppelin-contracts/=lib/openzeppelin-contracts/\",\":openzeppelin-contracts_v3.1.0/=lib/openzeppelin-contracts_v3.1.0/contracts/\",\":openzeppelin-contracts_v5.0.1/=lib/openzeppelin-contracts_v5.0.1/\",\":prb-test/=lib/automate/lib/prb-test/src/\",\":prb/-est/=lib/automate/lib/prb-test/src/\",\":safe-contracts/=lib/safe-contracts/contracts/\",\":solady/=lib/solady/\",\":solmate/=lib/solmate/src/\"]},\"sources\":{\"src/libraries/rlp/RLPErrors.sol\":{\"keccak256\":\"0x2b7fa174e6c62962f7c3ce1960298d325ed0e5ff4ee3fd426848e88b4500eb26\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://f5528dd355691e6e2dffa3ecf11388f51e3bd29f27693c5dcd11be182559ba47\",\"dweb:/ipfs/QmTqZ5ZzBPwLYg3JNZttHZYaXv5zyzQfakSz4B8sYkAz42\"]},\"src/libraries/rlp/RLPReader.sol\":{\"keccak256\":\"0x27cbbc74d603b301e0e4bc4d33bbbeb88e369f1a91191a33d89ea52360e003db\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://ba58dfd78089a51f06638fa6c0d2287c6254907ad89c4ad58b6fbb331d5d5a96\",\"dweb:/ipfs/QmUjC5Pm2MxPgYm9DfW1MasHj5jz7xXvej88778QuUoNgp\"]}},\"version\":1}","metadata":{"compiler":{"version":"0.8.26+commit.8a97fa7a"},"language":"Solidity","output":{"abi":[],"devdoc":{"kind":"dev","methods":{},"version":1},"userdoc":{"kind":"user","methods":{},"version":1}},"settings":{"remappings":["@lib-keccak/=lib/lib-keccak/contracts/lib/","@openzeppelin/contracts-upgradeable/=lib/openzeppelin-contracts-upgradeable/contracts/","@openzeppelin/contracts/=lib/openzeppelin-contracts/contracts/","@openzeppelin/contracts_v3.1.0/=lib/openzeppelin-contracts_v3.1.0/contracts/","@openzeppelin/contracts_v5.0.1/=lib/openzeppelin-contracts_v5.0.1/contracts/","@rari-capital/solmate/=lib/solmate/","@solady-test/=lib/lib-keccak/lib/solady/test/","@solady/=lib/solady/src/","automate/=lib/automate/contracts/","ds-test/=lib/forge-std/lib/ds-test/src/","erc4626-tests/=lib/openzeppelin-contracts_v5.0.1/lib/erc4626-tests/","forge-std/=lib/forge-std/src/","gelato/=lib/automate/contracts/","hardhat/=lib/automate/node_modules/hardhat/","kontrol-cheatcodes/=lib/kontrol-cheatcodes/src/","lib-keccak/=lib/lib-keccak/contracts/","openzeppelin-contracts-upgradeable/=lib/openzeppelin-contracts-upgradeable/","openzeppelin-contracts/=lib/openzeppelin-contracts/","openzeppelin-contracts_v3.1.0/=lib/openzeppelin-contracts_v3.1.0/contracts/","openzeppelin-contracts_v5.0.1/=lib/openzeppelin-contracts_v5.0.1/","prb-test/=lib/automate/lib/prb-test/src/","prb/-est/=lib/automate/lib/prb-test/src/","safe-contracts/=lib/safe-contracts/contracts/","solady/=lib/solady/","solmate/=lib/solmate/src/"],"optimizer":{"enabled":true,"runs":999999},"metadata":{"bytecodeHash":"none"},"compilationTarget":{"src/libraries/rlp/RLPReader.sol":"RLPReader"},"evmVersion":"cancun","libraries":{"src/tokamak-contracts/USDC/L2/tokamak-USDC/v2/FiatTokenV2_2.sol:SignatureChecker":"0x4200000000000000000000000000000000000776"}},"sources":{"src/libraries/rlp/RLPErrors.sol":{"keccak256":"0x2b7fa174e6c62962f7c3ce1960298d325ed0e5ff4ee3fd426848e88b4500eb26","urls":["bzz-raw://f5528dd355691e6e2dffa3ecf11388f51e3bd29f27693c5dcd11be182559ba47","dweb:/ipfs/QmTqZ5ZzBPwLYg3JNZttHZYaXv5zyzQfakSz4B8sYkAz42"],"license":"MIT"},"src/libraries/rlp/RLPReader.sol":{"keccak256":"0x27cbbc74d603b301e0e4bc4d33bbbeb88e369f1a91191a33d89ea52360e003db","urls":["bzz-raw://ba58dfd78089a51f06638fa6c0d2287c6254907ad89c4ad58b6fbb331d5d5a96","dweb:/ipfs/QmUjC5Pm2MxPgYm9DfW1MasHj5jz7xXvej88778QuUoNgp"],"license":"MIT"}},"version":1},"storageLayout":{"storage":[],"types":{}},"userdoc":{"version":1,"kind":"user","notice":"RLPReader is a library for parsing RLP-encoded byte arrays into Solidity types. Adapted from Solidity-RLP (https://github.com/hamdiallam/Solidity-RLP) by Hamdi Allam with various tweaks to improve readability."},"devdoc":{"version":1,"kind":"dev","title":"RLPReader"},"ast":{"absolutePath":"src/libraries/rlp/RLPReader.sol","id":57579,"exportedSymbols":{"ContentLengthMismatch":[57039],"EmptyItem":[57027],"InvalidDataRemainder":[57033],"InvalidHeader":[57042],"RLPReader":[57578],"UnexpectedList":[57036],"UnexpectedString":[57030]},"nodeType":"SourceUnit","src":"32:9134:76","nodes":[{"id":57044,"nodeType":"PragmaDirective","src":"32:23:76","nodes":[],"literals":["solidity","^","0.8",".8"]},{"id":57045,"nodeType":"ImportDirective","src":"57:25:76","nodes":[],"absolutePath":"src/libraries/rlp/RLPErrors.sol","file":"./RLPErrors.sol","nameLocation":"-1:-1:-1","scope":57579,"sourceUnit":57043,"symbolAliases":[],"unitAlias":""},{"id":57578,"nodeType":"ContractDefinition","src":"418:8747:76","nodes":[{"id":57048,"nodeType":"UserDefinedValueTypeDefinition","src":"528:30:76","nodes":[],"canonicalName":"RLPReader.MemoryPointer","name":"MemoryPointer","nameLocation":"533:13:76","underlyingType":{"id":57047,"name":"uint256","nodeType":"ElementaryTypeName","src":"550:7:76","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}},{"id":57052,"nodeType":"EnumDefinition","src":"731:61:76","nodes":[],"canonicalName":"RLPReader.RLPItemType","documentation":{"id":57049,"nodeType":"StructuredDocumentation","src":"564:162:76","text":"@notice RLP item types.\n @custom:value DATA_ITEM Represents an RLP data item (NOT a list).\n @custom:value LIST_ITEM Represents an RLP list item."},"members":[{"id":57050,"name":"DATA_ITEM","nameLocation":"758:9:76","nodeType":"EnumValue","src":"758:9:76"},{"id":57051,"name":"LIST_ITEM","nameLocation":"777:9:76","nodeType":"EnumValue","src":"777:9:76"}],"name":"RLPItemType","nameLocation":"736:11:76"},{"id":57059,"nodeType":"StructDefinition","src":"964:73:76","nodes":[],"canonicalName":"RLPReader.RLPItem","documentation":{"id":57053,"nodeType":"StructuredDocumentation","src":"798:161:76","text":"@notice Struct representing an RLP item.\n @custom:field length Length of the RLP item.\n @custom:field ptr Pointer to the RLP item in memory."},"members":[{"constant":false,"id":57055,"mutability":"mutable","name":"length","nameLocation":"997:6:76","nodeType":"VariableDeclaration","scope":57059,"src":"989:14:76","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":57054,"name":"uint256","nodeType":"ElementaryTypeName","src":"989:7:76","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":57058,"mutability":"mutable","name":"ptr","nameLocation":"1027:3:76","nodeType":"VariableDeclaration","scope":57059,"src":"1013:17:76","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_userDefinedValueType$_MemoryPointer_$57048","typeString":"RLPReader.MemoryPointer"},"typeName":{"id":57057,"nodeType":"UserDefinedTypeName","pathNode":{"id":57056,"name":"MemoryPointer","nameLocations":["1013:13:76"],"nodeType":"IdentifierPath","referencedDeclaration":57048,"src":"1013:13:76"},"referencedDeclaration":57048,"src":"1013:13:76","typeDescriptions":{"typeIdentifier":"t_userDefinedValueType$_MemoryPointer_$57048","typeString":"RLPReader.MemoryPointer"}},"visibility":"internal"}],"name":"RLPItem","nameLocation":"971:7:76","scope":57578,"visibility":"public"},{"id":57063,"nodeType":"VariableDeclaration","src":"1106:46:76","nodes":[],"constant":true,"documentation":{"id":57060,"nodeType":"StructuredDocumentation","src":"1043:58:76","text":"@notice Max list length that this library will accept."},"mutability":"constant","name":"MAX_LIST_LENGTH","nameLocation":"1132:15:76","scope":57578,"stateVariable":true,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":57061,"name":"uint256","nodeType":"ElementaryTypeName","src":"1106:7:76","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"value":{"hexValue":"3332","id":57062,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"1150:2:76","typeDescriptions":{"typeIdentifier":"t_rational_32_by_1","typeString":"int_const 32"},"value":"32"},"visibility":"internal"},{"id":57094,"nodeType":"FunctionDefinition","src":"1325:328:76","nodes":[],"body":{"id":57093,"nodeType":"Block","src":"1406:247:76","nodes":[],"statements":[{"condition":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":57075,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"expression":{"id":57072,"name":"_in","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":57066,"src":"1463:3:76","typeDescriptions":{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes memory"}},"id":57073,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"1467:6:76","memberName":"length","nodeType":"MemberAccess","src":"1463:10:76","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"==","rightExpression":{"hexValue":"30","id":57074,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"1477:1:76","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"},"src":"1463:15:76","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":57079,"nodeType":"IfStatement","src":"1459:39:76","trueBody":{"errorCall":{"arguments":[],"expression":{"argumentTypes":[],"id":57076,"name":"EmptyItem","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":57027,"src":"1487:9:76","typeDescriptions":{"typeIdentifier":"t_function_error_pure$__$returns$_t_error_$","typeString":"function () pure returns (error)"}},"id":57077,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"1487:11:76","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_error","typeString":"error"}},"id":57078,"nodeType":"RevertStatement","src":"1480:18:76"}},{"assignments":[57082],"declarations":[{"constant":false,"id":57082,"mutability":"mutable","name":"ptr","nameLocation":"1523:3:76","nodeType":"VariableDeclaration","scope":57093,"src":"1509:17:76","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_userDefinedValueType$_MemoryPointer_$57048","typeString":"RLPReader.MemoryPointer"},"typeName":{"id":57081,"nodeType":"UserDefinedTypeName","pathNode":{"id":57080,"name":"MemoryPointer","nameLocations":["1509:13:76"],"nodeType":"IdentifierPath","referencedDeclaration":57048,"src":"1509:13:76"},"referencedDeclaration":57048,"src":"1509:13:76","typeDescriptions":{"typeIdentifier":"t_userDefinedValueType$_MemoryPointer_$57048","typeString":"RLPReader.MemoryPointer"}},"visibility":"internal"}],"id":57083,"nodeType":"VariableDeclarationStatement","src":"1509:17:76"},{"AST":{"nativeSrc":"1545:43:76","nodeType":"YulBlock","src":"1545:43:76","statements":[{"nativeSrc":"1559:19:76","nodeType":"YulAssignment","src":"1559:19:76","value":{"arguments":[{"name":"_in","nativeSrc":"1570:3:76","nodeType":"YulIdentifier","src":"1570:3:76"},{"kind":"number","nativeSrc":"1575:2:76","nodeType":"YulLiteral","src":"1575:2:76","type":"","value":"32"}],"functionName":{"name":"add","nativeSrc":"1566:3:76","nodeType":"YulIdentifier","src":"1566:3:76"},"nativeSrc":"1566:12:76","nodeType":"YulFunctionCall","src":"1566:12:76"},"variableNames":[{"name":"ptr","nativeSrc":"1559:3:76","nodeType":"YulIdentifier","src":"1559:3:76"}]}]},"evmVersion":"cancun","externalReferences":[{"declaration":57066,"isOffset":false,"isSlot":false,"src":"1570:3:76","valueSize":1},{"declaration":57082,"isOffset":false,"isSlot":false,"src":"1559:3:76","valueSize":1}],"id":57084,"nodeType":"InlineAssembly","src":"1536:52:76"},{"expression":{"id":57091,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":57085,"name":"out_","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":57070,"src":"1598:4:76","typeDescriptions":{"typeIdentifier":"t_struct$_RLPItem_$57059_memory_ptr","typeString":"struct RLPReader.RLPItem memory"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"arguments":[{"expression":{"id":57087,"name":"_in","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":57066,"src":"1623:3:76","typeDescriptions":{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes memory"}},"id":57088,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"1627:6:76","memberName":"length","nodeType":"MemberAccess","src":"1623:10:76","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},{"id":57089,"name":"ptr","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":57082,"src":"1640:3:76","typeDescriptions":{"typeIdentifier":"t_userDefinedValueType$_MemoryPointer_$57048","typeString":"RLPReader.MemoryPointer"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"},{"typeIdentifier":"t_userDefinedValueType$_MemoryPointer_$57048","typeString":"RLPReader.MemoryPointer"}],"id":57086,"name":"RLPItem","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":57059,"src":"1605:7:76","typeDescriptions":{"typeIdentifier":"t_type$_t_struct$_RLPItem_$57059_storage_ptr_$","typeString":"type(struct RLPReader.RLPItem storage pointer)"}},"id":57090,"isConstant":false,"isLValue":false,"isPure":false,"kind":"structConstructorCall","lValueRequested":false,"nameLocations":["1615:6:76","1635:3:76"],"names":["length","ptr"],"nodeType":"FunctionCall","src":"1605:41:76","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_struct$_RLPItem_$57059_memory_ptr","typeString":"struct RLPReader.RLPItem memory"}},"src":"1598:48:76","typeDescriptions":{"typeIdentifier":"t_struct$_RLPItem_$57059_memory_ptr","typeString":"struct RLPReader.RLPItem memory"}},"id":57092,"nodeType":"ExpressionStatement","src":"1598:48:76"}]},"documentation":{"id":57064,"nodeType":"StructuredDocumentation","src":"1159:161:76","text":"@notice Converts bytes to a reference to memory position and length.\n @param _in Input bytes to convert.\n @return out_ Output memory reference."},"implemented":true,"kind":"function","modifiers":[],"name":"toRLPItem","nameLocation":"1334:9:76","parameters":{"id":57067,"nodeType":"ParameterList","parameters":[{"constant":false,"id":57066,"mutability":"mutable","name":"_in","nameLocation":"1357:3:76","nodeType":"VariableDeclaration","scope":57094,"src":"1344:16:76","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes"},"typeName":{"id":57065,"name":"bytes","nodeType":"ElementaryTypeName","src":"1344:5:76","typeDescriptions":{"typeIdentifier":"t_bytes_storage_ptr","typeString":"bytes"}},"visibility":"internal"}],"src":"1343:18:76"},"returnParameters":{"id":57071,"nodeType":"ParameterList","parameters":[{"constant":false,"id":57070,"mutability":"mutable","name":"out_","nameLocation":"1400:4:76","nodeType":"VariableDeclaration","scope":57094,"src":"1385:19:76","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_struct$_RLPItem_$57059_memory_ptr","typeString":"struct RLPReader.RLPItem"},"typeName":{"id":57069,"nodeType":"UserDefinedTypeName","pathNode":{"id":57068,"name":"RLPItem","nameLocations":["1385:7:76"],"nodeType":"IdentifierPath","referencedDeclaration":57059,"src":"1385:7:76"},"referencedDeclaration":57059,"src":"1385:7:76","typeDescriptions":{"typeIdentifier":"t_struct$_RLPItem_$57059_storage_ptr","typeString":"struct RLPReader.RLPItem"}},"visibility":"internal"}],"src":"1384:21:76"},"scope":57578,"stateMutability":"pure","virtual":false,"visibility":"internal"},{"id":57212,"nodeType":"FunctionDefinition","src":"1805:1674:76","nodes":[],"body":{"id":57211,"nodeType":"Block","src":"1889:1590:76","nodes":[],"statements":[{"assignments":[57106,57108,57111],"declarations":[{"constant":false,"id":57106,"mutability":"mutable","name":"listOffset","nameLocation":"1908:10:76","nodeType":"VariableDeclaration","scope":57211,"src":"1900:18:76","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":57105,"name":"uint256","nodeType":"ElementaryTypeName","src":"1900:7:76","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":57108,"mutability":"mutable","name":"listLength","nameLocation":"1928:10:76","nodeType":"VariableDeclaration","scope":57211,"src":"1920:18:76","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":57107,"name":"uint256","nodeType":"ElementaryTypeName","src":"1920:7:76","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":57111,"mutability":"mutable","name":"itemType","nameLocation":"1952:8:76","nodeType":"VariableDeclaration","scope":57211,"src":"1940:20:76","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_enum$_RLPItemType_$57052","typeString":"enum RLPReader.RLPItemType"},"typeName":{"id":57110,"nodeType":"UserDefinedTypeName","pathNode":{"id":57109,"name":"RLPItemType","nameLocations":["1940:11:76"],"nodeType":"IdentifierPath","referencedDeclaration":57052,"src":"1940:11:76"},"referencedDeclaration":57052,"src":"1940:11:76","typeDescriptions":{"typeIdentifier":"t_enum$_RLPItemType_$57052","typeString":"enum RLPReader.RLPItemType"}},"visibility":"internal"}],"id":57115,"initialValue":{"arguments":[{"id":57113,"name":"_in","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":57098,"src":"1978:3:76","typeDescriptions":{"typeIdentifier":"t_struct$_RLPItem_$57059_memory_ptr","typeString":"struct RLPReader.RLPItem memory"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_struct$_RLPItem_$57059_memory_ptr","typeString":"struct RLPReader.RLPItem memory"}],"id":57112,"name":"_decodeLength","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":57539,"src":"1964:13:76","typeDescriptions":{"typeIdentifier":"t_function_internal_pure$_t_struct$_RLPItem_$57059_memory_ptr_$returns$_t_uint256_$_t_uint256_$_t_enum$_RLPItemType_$57052_$","typeString":"function (struct RLPReader.RLPItem memory) pure returns (uint256,uint256,enum RLPReader.RLPItemType)"}},"id":57114,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"1964:18:76","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$_t_uint256_$_t_uint256_$_t_enum$_RLPItemType_$57052_$","typeString":"tuple(uint256,uint256,enum RLPReader.RLPItemType)"}},"nodeType":"VariableDeclarationStatement","src":"1899:83:76"},{"condition":{"commonType":{"typeIdentifier":"t_enum$_RLPItemType_$57052","typeString":"enum RLPReader.RLPItemType"},"id":57119,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":57116,"name":"itemType","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":57111,"src":"1997:8:76","typeDescriptions":{"typeIdentifier":"t_enum$_RLPItemType_$57052","typeString":"enum RLPReader.RLPItemType"}},"nodeType":"BinaryOperation","operator":"!=","rightExpression":{"expression":{"id":57117,"name":"RLPItemType","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":57052,"src":"2009:11:76","typeDescriptions":{"typeIdentifier":"t_type$_t_enum$_RLPItemType_$57052_$","typeString":"type(enum RLPReader.RLPItemType)"}},"id":57118,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"memberLocation":"2021:9:76","memberName":"LIST_ITEM","nodeType":"MemberAccess","referencedDeclaration":57051,"src":"2009:21:76","typeDescriptions":{"typeIdentifier":"t_enum$_RLPItemType_$57052","typeString":"enum RLPReader.RLPItemType"}},"src":"1997:33:76","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":57123,"nodeType":"IfStatement","src":"1993:64:76","trueBody":{"errorCall":{"arguments":[],"expression":{"argumentTypes":[],"id":57120,"name":"UnexpectedString","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":57030,"src":"2039:16:76","typeDescriptions":{"typeIdentifier":"t_function_error_pure$__$returns$_t_error_$","typeString":"function () pure returns (error)"}},"id":57121,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"2039:18:76","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_error","typeString":"error"}},"id":57122,"nodeType":"RevertStatement","src":"2032:25:76"}},{"condition":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":57129,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":57126,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":57124,"name":"listOffset","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":57106,"src":"2072:10:76","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"+","rightExpression":{"id":57125,"name":"listLength","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":57108,"src":"2085:10:76","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"2072:23:76","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"!=","rightExpression":{"expression":{"id":57127,"name":"_in","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":57098,"src":"2099:3:76","typeDescriptions":{"typeIdentifier":"t_struct$_RLPItem_$57059_memory_ptr","typeString":"struct RLPReader.RLPItem memory"}},"id":57128,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"2103:6:76","memberName":"length","nodeType":"MemberAccess","referencedDeclaration":57055,"src":"2099:10:76","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"2072:37:76","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":57133,"nodeType":"IfStatement","src":"2068:72:76","trueBody":{"errorCall":{"arguments":[],"expression":{"argumentTypes":[],"id":57130,"name":"InvalidDataRemainder","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":57033,"src":"2118:20:76","typeDescriptions":{"typeIdentifier":"t_function_error_pure$__$returns$_t_error_$","typeString":"function () pure returns (error)"}},"id":57131,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"2118:22:76","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_error","typeString":"error"}},"id":57132,"nodeType":"RevertStatement","src":"2111:29:76"}},{"expression":{"id":57141,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":57134,"name":"out_","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":57103,"src":"2543:4:76","typeDescriptions":{"typeIdentifier":"t_array$_t_struct$_RLPItem_$57059_memory_ptr_$dyn_memory_ptr","typeString":"struct RLPReader.RLPItem memory[] memory"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"arguments":[{"id":57139,"name":"MAX_LIST_LENGTH","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":57063,"src":"2564:15:76","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"}],"id":57138,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"NewExpression","src":"2550:13:76","typeDescriptions":{"typeIdentifier":"t_function_objectcreation_pure$_t_uint256_$returns$_t_array$_t_struct$_RLPItem_$57059_memory_ptr_$dyn_memory_ptr_$","typeString":"function (uint256) pure returns (struct RLPReader.RLPItem memory[] memory)"},"typeName":{"baseType":{"id":57136,"nodeType":"UserDefinedTypeName","pathNode":{"id":57135,"name":"RLPItem","nameLocations":["2554:7:76"],"nodeType":"IdentifierPath","referencedDeclaration":57059,"src":"2554:7:76"},"referencedDeclaration":57059,"src":"2554:7:76","typeDescriptions":{"typeIdentifier":"t_struct$_RLPItem_$57059_storage_ptr","typeString":"struct RLPReader.RLPItem"}},"id":57137,"nodeType":"ArrayTypeName","src":"2554:9:76","typeDescriptions":{"typeIdentifier":"t_array$_t_struct$_RLPItem_$57059_storage_$dyn_storage_ptr","typeString":"struct RLPReader.RLPItem[]"}}},"id":57140,"isConstant":false,"isLValue":false,"isPure":true,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"2550:30:76","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_array$_t_struct$_RLPItem_$57059_memory_ptr_$dyn_memory_ptr","typeString":"struct RLPReader.RLPItem memory[] memory"}},"src":"2543:37:76","typeDescriptions":{"typeIdentifier":"t_array$_t_struct$_RLPItem_$57059_memory_ptr_$dyn_memory_ptr","typeString":"struct RLPReader.RLPItem memory[] memory"}},"id":57142,"nodeType":"ExpressionStatement","src":"2543:37:76"},{"assignments":[57144],"declarations":[{"constant":false,"id":57144,"mutability":"mutable","name":"itemCount","nameLocation":"2599:9:76","nodeType":"VariableDeclaration","scope":57211,"src":"2591:17:76","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":57143,"name":"uint256","nodeType":"ElementaryTypeName","src":"2591:7:76","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"id":57146,"initialValue":{"hexValue":"30","id":57145,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"2611:1:76","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"},"nodeType":"VariableDeclarationStatement","src":"2591:21:76"},{"assignments":[57148],"declarations":[{"constant":false,"id":57148,"mutability":"mutable","name":"offset","nameLocation":"2630:6:76","nodeType":"VariableDeclaration","scope":57211,"src":"2622:14:76","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":57147,"name":"uint256","nodeType":"ElementaryTypeName","src":"2622:7:76","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"id":57150,"initialValue":{"id":57149,"name":"listOffset","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":57106,"src":"2639:10:76","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"VariableDeclarationStatement","src":"2622:27:76"},{"body":{"id":57208,"nodeType":"Block","src":"2687:653:76","statements":[{"assignments":[57156,57158,null],"declarations":[{"constant":false,"id":57156,"mutability":"mutable","name":"itemOffset","nameLocation":"2710:10:76","nodeType":"VariableDeclaration","scope":57208,"src":"2702:18:76","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":57155,"name":"uint256","nodeType":"ElementaryTypeName","src":"2702:7:76","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":57158,"mutability":"mutable","name":"itemLength","nameLocation":"2730:10:76","nodeType":"VariableDeclaration","scope":57208,"src":"2722:18:76","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":57157,"name":"uint256","nodeType":"ElementaryTypeName","src":"2722:7:76","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},null],"id":57177,"initialValue":{"arguments":[{"arguments":[{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":57164,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"expression":{"id":57161,"name":"_in","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":57098,"src":"2794:3:76","typeDescriptions":{"typeIdentifier":"t_struct$_RLPItem_$57059_memory_ptr","typeString":"struct RLPReader.RLPItem memory"}},"id":57162,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"2798:6:76","memberName":"length","nodeType":"MemberAccess","referencedDeclaration":57055,"src":"2794:10:76","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"-","rightExpression":{"id":57163,"name":"offset","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":57148,"src":"2807:6:76","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"2794:19:76","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},{"arguments":[{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":57173,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"arguments":[{"expression":{"id":57169,"name":"_in","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":57098,"src":"2860:3:76","typeDescriptions":{"typeIdentifier":"t_struct$_RLPItem_$57059_memory_ptr","typeString":"struct RLPReader.RLPItem memory"}},"id":57170,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"2864:3:76","memberName":"ptr","nodeType":"MemberAccess","referencedDeclaration":57058,"src":"2860:7:76","typeDescriptions":{"typeIdentifier":"t_userDefinedValueType$_MemoryPointer_$57048","typeString":"RLPReader.MemoryPointer"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_userDefinedValueType$_MemoryPointer_$57048","typeString":"RLPReader.MemoryPointer"}],"expression":{"id":57167,"name":"MemoryPointer","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":57048,"src":"2839:13:76","typeDescriptions":{"typeIdentifier":"t_type$_t_userDefinedValueType$_MemoryPointer_$57048_$","typeString":"type(RLPReader.MemoryPointer)"}},"id":57168,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"memberLocation":"2853:6:76","memberName":"unwrap","nodeType":"MemberAccess","src":"2839:20:76","typeDescriptions":{"typeIdentifier":"t_function_unwrap_pure$_t_userDefinedValueType$_MemoryPointer_$57048_$returns$_t_uint256_$","typeString":"function (RLPReader.MemoryPointer) pure returns (uint256)"}},"id":57171,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"2839:29:76","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"+","rightExpression":{"id":57172,"name":"offset","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":57148,"src":"2871:6:76","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"2839:38:76","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"}],"expression":{"id":57165,"name":"MemoryPointer","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":57048,"src":"2820:13:76","typeDescriptions":{"typeIdentifier":"t_type$_t_userDefinedValueType$_MemoryPointer_$57048_$","typeString":"type(RLPReader.MemoryPointer)"}},"id":57166,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"memberLocation":"2834:4:76","memberName":"wrap","nodeType":"MemberAccess","src":"2820:18:76","typeDescriptions":{"typeIdentifier":"t_function_wrap_pure$_t_uint256_$returns$_t_userDefinedValueType$_MemoryPointer_$57048_$","typeString":"function (uint256) pure returns (RLPReader.MemoryPointer)"}},"id":57174,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"2820:58:76","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_userDefinedValueType$_MemoryPointer_$57048","typeString":"RLPReader.MemoryPointer"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"},{"typeIdentifier":"t_userDefinedValueType$_MemoryPointer_$57048","typeString":"RLPReader.MemoryPointer"}],"id":57160,"name":"RLPItem","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":57059,"src":"2776:7:76","typeDescriptions":{"typeIdentifier":"t_type$_t_struct$_RLPItem_$57059_storage_ptr_$","typeString":"type(struct RLPReader.RLPItem storage pointer)"}},"id":57175,"isConstant":false,"isLValue":false,"isPure":false,"kind":"structConstructorCall","lValueRequested":false,"nameLocations":["2786:6:76","2815:3:76"],"names":["length","ptr"],"nodeType":"FunctionCall","src":"2776:105:76","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_struct$_RLPItem_$57059_memory_ptr","typeString":"struct RLPReader.RLPItem memory"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_struct$_RLPItem_$57059_memory_ptr","typeString":"struct RLPReader.RLPItem memory"}],"id":57159,"name":"_decodeLength","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":57539,"src":"2745:13:76","typeDescriptions":{"typeIdentifier":"t_function_internal_pure$_t_struct$_RLPItem_$57059_memory_ptr_$returns$_t_uint256_$_t_uint256_$_t_enum$_RLPItemType_$57052_$","typeString":"function (struct RLPReader.RLPItem memory) pure returns (uint256,uint256,enum RLPReader.RLPItemType)"}},"id":57176,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"2745:150:76","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$_t_uint256_$_t_uint256_$_t_enum$_RLPItemType_$57052_$","typeString":"tuple(uint256,uint256,enum RLPReader.RLPItemType)"}},"nodeType":"VariableDeclarationStatement","src":"2701:194:76"},{"expression":{"id":57196,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"baseExpression":{"id":57178,"name":"out_","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":57103,"src":"3082:4:76","typeDescriptions":{"typeIdentifier":"t_array$_t_struct$_RLPItem_$57059_memory_ptr_$dyn_memory_ptr","typeString":"struct RLPReader.RLPItem memory[] memory"}},"id":57180,"indexExpression":{"id":57179,"name":"itemCount","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":57144,"src":"3087:9:76","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":true,"nodeType":"IndexAccess","src":"3082:15:76","typeDescriptions":{"typeIdentifier":"t_struct$_RLPItem_$57059_memory_ptr","typeString":"struct RLPReader.RLPItem memory"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"arguments":[{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":57184,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":57182,"name":"itemLength","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":57158,"src":"3134:10:76","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"+","rightExpression":{"id":57183,"name":"itemOffset","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":57156,"src":"3147:10:76","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"3134:23:76","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},{"arguments":[{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":57193,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"arguments":[{"expression":{"id":57189,"name":"_in","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":57098,"src":"3220:3:76","typeDescriptions":{"typeIdentifier":"t_struct$_RLPItem_$57059_memory_ptr","typeString":"struct RLPReader.RLPItem memory"}},"id":57190,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"3224:3:76","memberName":"ptr","nodeType":"MemberAccess","referencedDeclaration":57058,"src":"3220:7:76","typeDescriptions":{"typeIdentifier":"t_userDefinedValueType$_MemoryPointer_$57048","typeString":"RLPReader.MemoryPointer"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_userDefinedValueType$_MemoryPointer_$57048","typeString":"RLPReader.MemoryPointer"}],"expression":{"id":57187,"name":"MemoryPointer","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":57048,"src":"3199:13:76","typeDescriptions":{"typeIdentifier":"t_type$_t_userDefinedValueType$_MemoryPointer_$57048_$","typeString":"type(RLPReader.MemoryPointer)"}},"id":57188,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"memberLocation":"3213:6:76","memberName":"unwrap","nodeType":"MemberAccess","src":"3199:20:76","typeDescriptions":{"typeIdentifier":"t_function_unwrap_pure$_t_userDefinedValueType$_MemoryPointer_$57048_$returns$_t_uint256_$","typeString":"function (RLPReader.MemoryPointer) pure returns (uint256)"}},"id":57191,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"3199:29:76","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"+","rightExpression":{"id":57192,"name":"offset","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":57148,"src":"3231:6:76","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"3199:38:76","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"}],"expression":{"id":57185,"name":"MemoryPointer","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":57048,"src":"3180:13:76","typeDescriptions":{"typeIdentifier":"t_type$_t_userDefinedValueType$_MemoryPointer_$57048_$","typeString":"type(RLPReader.MemoryPointer)"}},"id":57186,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"memberLocation":"3194:4:76","memberName":"wrap","nodeType":"MemberAccess","src":"3180:18:76","typeDescriptions":{"typeIdentifier":"t_function_wrap_pure$_t_uint256_$returns$_t_userDefinedValueType$_MemoryPointer_$57048_$","typeString":"function (uint256) pure returns (RLPReader.MemoryPointer)"}},"id":57194,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"3180:58:76","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_userDefinedValueType$_MemoryPointer_$57048","typeString":"RLPReader.MemoryPointer"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"},{"typeIdentifier":"t_userDefinedValueType$_MemoryPointer_$57048","typeString":"RLPReader.MemoryPointer"}],"id":57181,"name":"RLPItem","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":57059,"src":"3100:7:76","typeDescriptions":{"typeIdentifier":"t_type$_t_struct$_RLPItem_$57059_storage_ptr_$","typeString":"type(struct RLPReader.RLPItem storage pointer)"}},"id":57195,"isConstant":false,"isLValue":false,"isPure":false,"kind":"structConstructorCall","lValueRequested":false,"nameLocations":["3126:6:76","3175:3:76"],"names":["length","ptr"],"nodeType":"FunctionCall","src":"3100:153:76","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_struct$_RLPItem_$57059_memory_ptr","typeString":"struct RLPReader.RLPItem memory"}},"src":"3082:171:76","typeDescriptions":{"typeIdentifier":"t_struct$_RLPItem_$57059_memory_ptr","typeString":"struct RLPReader.RLPItem memory"}},"id":57197,"nodeType":"ExpressionStatement","src":"3082:171:76"},{"expression":{"id":57200,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":57198,"name":"itemCount","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":57144,"src":"3268:9:76","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"Assignment","operator":"+=","rightHandSide":{"hexValue":"31","id":57199,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"3281:1:76","typeDescriptions":{"typeIdentifier":"t_rational_1_by_1","typeString":"int_const 1"},"value":"1"},"src":"3268:14:76","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":57201,"nodeType":"ExpressionStatement","src":"3268:14:76"},{"expression":{"id":57206,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":57202,"name":"offset","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":57148,"src":"3296:6:76","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"Assignment","operator":"+=","rightHandSide":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":57205,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":57203,"name":"itemOffset","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":57156,"src":"3306:10:76","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"+","rightExpression":{"id":57204,"name":"itemLength","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":57158,"src":"3319:10:76","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"3306:23:76","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"3296:33:76","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":57207,"nodeType":"ExpressionStatement","src":"3296:33:76"}]},"condition":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":57154,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":57151,"name":"offset","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":57148,"src":"2666:6:76","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"<","rightExpression":{"expression":{"id":57152,"name":"_in","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":57098,"src":"2675:3:76","typeDescriptions":{"typeIdentifier":"t_struct$_RLPItem_$57059_memory_ptr","typeString":"struct RLPReader.RLPItem memory"}},"id":57153,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"2679:6:76","memberName":"length","nodeType":"MemberAccess","referencedDeclaration":57055,"src":"2675:10:76","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"2666:19:76","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":57209,"nodeType":"WhileStatement","src":"2659:681:76"},{"AST":{"nativeSrc":"3426:47:76","nodeType":"YulBlock","src":"3426:47:76","statements":[{"expression":{"arguments":[{"name":"out_","nativeSrc":"3447:4:76","nodeType":"YulIdentifier","src":"3447:4:76"},{"name":"itemCount","nativeSrc":"3453:9:76","nodeType":"YulIdentifier","src":"3453:9:76"}],"functionName":{"name":"mstore","nativeSrc":"3440:6:76","nodeType":"YulIdentifier","src":"3440:6:76"},"nativeSrc":"3440:23:76","nodeType":"YulFunctionCall","src":"3440:23:76"},"nativeSrc":"3440:23:76","nodeType":"YulExpressionStatement","src":"3440:23:76"}]},"evmVersion":"cancun","externalReferences":[{"declaration":57144,"isOffset":false,"isSlot":false,"src":"3453:9:76","valueSize":1},{"declaration":57103,"isOffset":false,"isSlot":false,"src":"3447:4:76","valueSize":1}],"id":57210,"nodeType":"InlineAssembly","src":"3417:56:76"}]},"documentation":{"id":57095,"nodeType":"StructuredDocumentation","src":"1659:141:76","text":"@notice Reads an RLP list value into a list of RLP items.\n @param _in RLP list value.\n @return out_ Decoded RLP list items."},"implemented":true,"kind":"function","modifiers":[],"name":"readList","nameLocation":"1814:8:76","parameters":{"id":57099,"nodeType":"ParameterList","parameters":[{"constant":false,"id":57098,"mutability":"mutable","name":"_in","nameLocation":"1838:3:76","nodeType":"VariableDeclaration","scope":57212,"src":"1823:18:76","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_struct$_RLPItem_$57059_memory_ptr","typeString":"struct RLPReader.RLPItem"},"typeName":{"id":57097,"nodeType":"UserDefinedTypeName","pathNode":{"id":57096,"name":"RLPItem","nameLocations":["1823:7:76"],"nodeType":"IdentifierPath","referencedDeclaration":57059,"src":"1823:7:76"},"referencedDeclaration":57059,"src":"1823:7:76","typeDescriptions":{"typeIdentifier":"t_struct$_RLPItem_$57059_storage_ptr","typeString":"struct RLPReader.RLPItem"}},"visibility":"internal"}],"src":"1822:20:76"},"returnParameters":{"id":57104,"nodeType":"ParameterList","parameters":[{"constant":false,"id":57103,"mutability":"mutable","name":"out_","nameLocation":"1883:4:76","nodeType":"VariableDeclaration","scope":57212,"src":"1866:21:76","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_array$_t_struct$_RLPItem_$57059_memory_ptr_$dyn_memory_ptr","typeString":"struct RLPReader.RLPItem[]"},"typeName":{"baseType":{"id":57101,"nodeType":"UserDefinedTypeName","pathNode":{"id":57100,"name":"RLPItem","nameLocations":["1866:7:76"],"nodeType":"IdentifierPath","referencedDeclaration":57059,"src":"1866:7:76"},"referencedDeclaration":57059,"src":"1866:7:76","typeDescriptions":{"typeIdentifier":"t_struct$_RLPItem_$57059_storage_ptr","typeString":"struct RLPReader.RLPItem"}},"id":57102,"nodeType":"ArrayTypeName","src":"1866:9:76","typeDescriptions":{"typeIdentifier":"t_array$_t_struct$_RLPItem_$57059_storage_$dyn_storage_ptr","typeString":"struct RLPReader.RLPItem[]"}},"visibility":"internal"}],"src":"1865:23:76"},"scope":57578,"stateMutability":"pure","virtual":false,"visibility":"internal"},{"id":57231,"nodeType":"FunctionDefinition","src":"3631:130:76","nodes":[],"body":{"id":57230,"nodeType":"Block","src":"3713:48:76","nodes":[],"statements":[{"expression":{"id":57228,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":57222,"name":"out_","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":57220,"src":"3723:4:76","typeDescriptions":{"typeIdentifier":"t_array$_t_struct$_RLPItem_$57059_memory_ptr_$dyn_memory_ptr","typeString":"struct RLPReader.RLPItem memory[] memory"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"a