{"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":{"arguments":[{"arguments":[{"id":57225,"name":"_in","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":57215,"src":"3749:3:76","typeDescriptions":{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes memory"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes memory"}],"id":57224,"name":"toRLPItem","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":57094,"src":"3739:9:76","typeDescriptions":{"typeIdentifier":"t_function_internal_pure$_t_bytes_memory_ptr_$returns$_t_struct$_RLPItem_$57059_memory_ptr_$","typeString":"function (bytes memory) pure returns (struct RLPReader.RLPItem memory)"}},"id":57226,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"3739:14: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":57223,"name":"readList","nodeType":"Identifier","overloadedDeclarations":[57212,57231],"referencedDeclaration":57212,"src":"3730:8:76","typeDescriptions":{"typeIdentifier":"t_function_internal_pure$_t_struct$_RLPItem_$57059_memory_ptr_$returns$_t_array$_t_struct$_RLPItem_$57059_memory_ptr_$dyn_memory_ptr_$","typeString":"function (struct RLPReader.RLPItem memory) pure returns (struct RLPReader.RLPItem memory[] memory)"}},"id":57227,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"3730:24:76","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_array$_t_struct$_RLPItem_$57059_memory_ptr_$dyn_memory_ptr","typeString":"struct RLPReader.RLPItem memory[] memory"}},"src":"3723:31:76","typeDescriptions":{"typeIdentifier":"t_array$_t_struct$_RLPItem_$57059_memory_ptr_$dyn_memory_ptr","typeString":"struct RLPReader.RLPItem memory[] memory"}},"id":57229,"nodeType":"ExpressionStatement","src":"3723:31:76"}]},"documentation":{"id":57213,"nodeType":"StructuredDocumentation","src":"3485: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":"3640:8:76","parameters":{"id":57216,"nodeType":"ParameterList","parameters":[{"constant":false,"id":57215,"mutability":"mutable","name":"_in","nameLocation":"3662:3:76","nodeType":"VariableDeclaration","scope":57231,"src":"3649:16:76","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes"},"typeName":{"id":57214,"name":"bytes","nodeType":"ElementaryTypeName","src":"3649:5:76","typeDescriptions":{"typeIdentifier":"t_bytes_storage_ptr","typeString":"bytes"}},"visibility":"internal"}],"src":"3648:18:76"},"returnParameters":{"id":57221,"nodeType":"ParameterList","parameters":[{"constant":false,"id":57220,"mutability":"mutable","name":"out_","nameLocation":"3707:4:76","nodeType":"VariableDeclaration","scope":57231,"src":"3690: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":57218,"nodeType":"UserDefinedTypeName","pathNode":{"id":57217,"name":"RLPItem","nameLocations":["3690:7:76"],"nodeType":"IdentifierPath","referencedDeclaration":57059,"src":"3690:7:76"},"referencedDeclaration":57059,"src":"3690:7:76","typeDescriptions":{"typeIdentifier":"t_struct$_RLPItem_$57059_storage_ptr","typeString":"struct RLPReader.RLPItem"}},"id":57219,"nodeType":"ArrayTypeName","src":"3690:9:76","typeDescriptions":{"typeIdentifier":"t_array$_t_struct$_RLPItem_$57059_storage_$dyn_storage_ptr","typeString":"struct RLPReader.RLPItem[]"}},"visibility":"internal"}],"src":"3689:23:76"},"scope":57578,"stateMutability":"pure","virtual":false,"visibility":"internal"},{"id":57279,"nodeType":"FunctionDefinition","src":"3892:393:76","nodes":[],"body":{"id":57278,"nodeType":"Block","src":"3973:312:76","nodes":[],"statements":[{"assignments":[57241,57243,57246],"declarations":[{"constant":false,"id":57241,"mutability":"mutable","name":"itemOffset","nameLocation":"3992:10:76","nodeType":"VariableDeclaration","scope":57278,"src":"3984:18:76","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":57240,"name":"uint256","nodeType":"ElementaryTypeName","src":"3984:7:76","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":57243,"mutability":"mutable","name":"itemLength","nameLocation":"4012:10:76","nodeType":"VariableDeclaration","scope":57278,"src":"4004:18:76","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":57242,"name":"uint256","nodeType":"ElementaryTypeName","src":"4004:7:76","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":57246,"mutability":"mutable","name":"itemType","nameLocation":"4036:8:76","nodeType":"VariableDeclaration","scope":57278,"src":"4024:20:76","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_enum$_RLPItemType_$57052","typeString":"enum RLPReader.RLPItemType"},"typeName":{"id":57245,"nodeType":"UserDefinedTypeName","pathNode":{"id":57244,"name":"RLPItemType","nameLocations":["4024:11:76"],"nodeType":"IdentifierPath","referencedDeclaration":57052,"src":"4024:11:76"},"referencedDeclaration":57052,"src":"4024:11:76","typeDescriptions":{"typeIdentifier":"t_enum$_RLPItemType_$57052","typeString":"enum RLPReader.RLPItemType"}},"visibility":"internal"}],"id":57250,"initialValue":{"arguments":[{"id":57248,"name":"_in","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":57235,"src":"4062: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":57247,"name":"_decodeLength","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":57539,"src":"4048: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":57249,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"4048: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":"3983:83:76"},{"condition":{"commonType":{"typeIdentifier":"t_enum$_RLPItemType_$57052","typeString":"enum RLPReader.RLPItemType"},"id":57254,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":57251,"name":"itemType","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":57246,"src":"4081:8:76","typeDescriptions":{"typeIdentifier":"t_enum$_RLPItemType_$57052","typeString":"enum RLPReader.RLPItemType"}},"nodeType":"BinaryOperation","operator":"!=","rightExpression":{"expression":{"id":57252,"name":"RLPItemType","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":57052,"src":"4093:11:76","typeDescriptions":{"typeIdentifier":"t_type$_t_enum$_RLPItemType_$57052_$","typeString":"type(enum RLPReader.RLPItemType)"}},"id":57253,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"memberLocation":"4105:9:76","memberName":"DATA_ITEM","nodeType":"MemberAccess","referencedDeclaration":57050,"src":"4093:21:76","typeDescriptions":{"typeIdentifier":"t_enum$_RLPItemType_$57052","typeString":"enum RLPReader.RLPItemType"}},"src":"4081:33:76","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":57258,"nodeType":"IfStatement","src":"4077:62:76","trueBody":{"errorCall":{"arguments":[],"expression":{"argumentTypes":[],"id":57255,"name":"UnexpectedList","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":57036,"src":"4123:14:76","typeDescriptions":{"typeIdentifier":"t_function_error_pure$__$returns$_t_error_$","typeString":"function () pure returns (error)"}},"id":57256,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"4123:16:76","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_error","typeString":"error"}},"id":57257,"nodeType":"RevertStatement","src":"4116:23:76"}},{"condition":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":57264,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"expression":{"id":57259,"name":"_in","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":57235,"src":"4154:3:76","typeDescriptions":{"typeIdentifier":"t_struct$_RLPItem_$57059_memory_ptr","typeString":"struct RLPReader.RLPItem memory"}},"id":57260,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"4158:6:76","memberName":"length","nodeType":"MemberAccess","referencedDeclaration":57055,"src":"4154:10:76","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"!=","rightExpression":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":57263,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":57261,"name":"itemOffset","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":57241,"src":"4168:10:76","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"+","rightExpression":{"id":57262,"name":"itemLength","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":57243,"src":"4181:10:76","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"4168:23:76","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"4154:37:76","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":57268,"nodeType":"IfStatement","src":"4150:72:76","trueBody":{"errorCall":{"arguments":[],"expression":{"argumentTypes":[],"id":57265,"name":"InvalidDataRemainder","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":57033,"src":"4200:20:76","typeDescriptions":{"typeIdentifier":"t_function_error_pure$__$returns$_t_error_$","typeString":"function () pure returns (error)"}},"id":57266,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"4200:22:76","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_error","typeString":"error"}},"id":57267,"nodeType":"RevertStatement","src":"4193:29:76"}},{"expression":{"id":57276,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":57269,"name":"out_","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":57238,"src":"4233:4:76","typeDescriptions":{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes memory"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"arguments":[{"expression":{"id":57271,"name":"_in","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":57235,"src":"4246:3:76","typeDescriptions":{"typeIdentifier":"t_struct$_RLPItem_$57059_memory_ptr","typeString":"struct RLPReader.RLPItem memory"}},"id":57272,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"4250:3:76","memberName":"ptr","nodeType":"MemberAccess","referencedDeclaration":57058,"src":"4246:7:76","typeDescriptions":{"typeIdentifier":"t_userDefinedValueType$_MemoryPointer_$57048","typeString":"RLPReader.MemoryPointer"}},{"id":57273,"name":"itemOffset","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":57241,"src":"4255:10:76","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},{"id":57274,"name":"itemLength","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":57243,"src":"4267:10:76","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_userDefinedValueType$_MemoryPointer_$57048","typeString":"RLPReader.MemoryPointer"},{"typeIdentifier":"t_uint256","typeString":"uint256"},{"typeIdentifier":"t_uint256","typeString":"uint256"}],"id":57270,"name":"_copy","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":57577,"src":"4240:5:76","typeDescriptions":{"typeIdentifier":"t_function_internal_pure$_t_userDefinedValueType$_MemoryPointer_$57048_$_t_uint256_$_t_uint256_$returns$_t_bytes_memory_ptr_$","typeString":"function (RLPReader.MemoryPointer,uint256,uint256) pure returns (bytes memory)"}},"id":57275,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"4240:38:76","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes memory"}},"src":"4233:45:76","typeDescriptions":{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes memory"}},"id":57277,"nodeType":"ExpressionStatement","src":"4233:45:76"}]},"documentation":{"id":57232,"nodeType":"StructuredDocumentation","src":"3767:120:76","text":"@notice Reads an RLP bytes value into bytes.\n @param _in RLP bytes value.\n @return out_ Decoded bytes."},"implemented":true,"kind":"function","modifiers":[],"name":"readBytes","nameLocation":"3901:9:76","parameters":{"id":57236,"nodeType":"ParameterList","parameters":[{"constant":false,"id":57235,"mutability":"mutable","name":"_in","nameLocation":"3926:3:76","nodeType":"VariableDeclaration","scope":57279,"src":"3911:18:76","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_struct$_RLPItem_$57059_memory_ptr","typeString":"struct RLPReader.RLPItem"},"typeName":{"id":57234,"nodeType":"UserDefinedTypeName","pathNode":{"id":57233,"name":"RLPItem","nameLocations":["3911:7:76"],"nodeType":"IdentifierPath","referencedDeclaration":57059,"src":"3911:7:76"},"referencedDeclaration":57059,"src":"3911:7:76","typeDescriptions":{"typeIdentifier":"t_struct$_RLPItem_$57059_storage_ptr","typeString":"struct RLPReader.RLPItem"}},"visibility":"internal"}],"src":"3910:20:76"},"returnParameters":{"id":57239,"nodeType":"ParameterList","parameters":[{"constant":false,"id":57238,"mutability":"mutable","name":"out_","nameLocation":"3967:4:76","nodeType":"VariableDeclaration","scope":57279,"src":"3954:17:76","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes"},"typeName":{"id":57237,"name":"bytes","nodeType":"ElementaryTypeName","src":"3954:5:76","typeDescriptions":{"typeIdentifier":"t_bytes_storage_ptr","typeString":"bytes"}},"visibility":"internal"}],"src":"3953:19:76"},"scope":57578,"stateMutability":"pure","virtual":false,"visibility":"internal"},{"id":57296,"nodeType":"FunctionDefinition","src":"4416:128:76","nodes":[],"body":{"id":57295,"nodeType":"Block","src":"4495:49:76","nodes":[],"statements":[{"expression":{"id":57293,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":57287,"name":"out_","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":57285,"src":"4505:4:76","typeDescriptions":{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes memory"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"arguments":[{"arguments":[{"id":57290,"name":"_in","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":57282,"src":"4532:3:76","typeDescriptions":{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes memory"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes memory"}],"id":57289,"name":"toRLPItem","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":57094,"src":"4522:9:76","typeDescriptions":{"typeIdentifier":"t_function_internal_pure$_t_bytes_memory_ptr_$returns$_t_struct$_RLPItem_$57059_memory_ptr_$","typeString":"function (bytes memory) pure returns (struct RLPReader.RLPItem memory)"}},"id":57291,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"4522:14: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":57288,"name":"readBytes","nodeType":"Identifier","overloadedDeclarations":[57279,57296],"referencedDeclaration":57279,"src":"4512:9:76","typeDescriptions":{"typeIdentifier":"t_function_internal_pure$_t_struct$_RLPItem_$57059_memory_ptr_$returns$_t_bytes_memory_ptr_$","typeString":"function (struct RLPReader.RLPItem memory) pure returns (bytes memory)"}},"id":57292,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"4512:25:76","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes memory"}},"src":"4505:32:76","typeDescriptions":{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes memory"}},"id":57294,"nodeType":"ExpressionStatement","src":"4505:32:76"}]},"documentation":{"id":57280,"nodeType":"StructuredDocumentation","src":"4291:120:76","text":"@notice Reads an RLP bytes value into bytes.\n @param _in RLP bytes value.\n @return out_ Decoded bytes."},"implemented":true,"kind":"function","modifiers":[],"name":"readBytes","nameLocation":"4425:9:76","parameters":{"id":57283,"nodeType":"ParameterList","parameters":[{"constant":false,"id":57282,"mutability":"mutable","name":"_in","nameLocation":"4448:3:76","nodeType":"VariableDeclaration","scope":57296,"src":"4435:16:76","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes"},"typeName":{"id":57281,"name":"bytes","nodeType":"ElementaryTypeName","src":"4435:5:76","typeDescriptions":{"typeIdentifier":"t_bytes_storage_ptr","typeString":"bytes"}},"visibility":"internal"}],"src":"4434:18:76"},"returnParameters":{"id":57286,"nodeType":"ParameterList","parameters":[{"constant":false,"id":57285,"mutability":"mutable","name":"out_","nameLocation":"4489:4:76","nodeType":"VariableDeclaration","scope":57296,"src":"4476:17:76","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes"},"typeName":{"id":57284,"name":"bytes","nodeType":"ElementaryTypeName","src":"4476:5:76","typeDescriptions":{"typeIdentifier":"t_bytes_storage_ptr","typeString":"bytes"}},"visibility":"internal"}],"src":"4475:19:76"},"scope":57578,"stateMutability":"pure","virtual":false,"visibility":"internal"},{"id":57316,"nodeType":"FunctionDefinition","src":"4675:137:76","nodes":[],"body":{"id":57315,"nodeType":"Block","src":"4759:53:76","nodes":[],"statements":[{"expression":{"id":57313,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":57305,"name":"out_","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":57303,"src":"4769:4:76","typeDescriptions":{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes memory"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"arguments":[{"expression":{"id":57307,"name":"_in","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":57300,"src":"4782:3:76","typeDescriptions":{"typeIdentifier":"t_struct$_RLPItem_$57059_memory_ptr","typeString":"struct RLPReader.RLPItem memory"}},"id":57308,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"4786:3:76","memberName":"ptr","nodeType":"MemberAccess","referencedDeclaration":57058,"src":"4782:7:76","typeDescriptions":{"typeIdentifier":"t_userDefinedValueType$_MemoryPointer_$57048","typeString":"RLPReader.MemoryPointer"}},{"hexValue":"30","id":57309,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"4791:1:76","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"},{"expression":{"id":57310,"name":"_in","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":57300,"src":"4794:3:76","typeDescriptions":{"typeIdentifier":"t_struct$_RLPItem_$57059_memory_ptr","typeString":"struct RLPReader.RLPItem memory"}},"id":57311,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"4798:6:76","memberName":"length","nodeType":"MemberAccess","referencedDeclaration":57055,"src":"4794:10:76","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_userDefinedValueType$_MemoryPointer_$57048","typeString":"RLPReader.MemoryPointer"},{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},{"typeIdentifier":"t_uint256","typeString":"uint256"}],"id":57306,"name":"_copy","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":57577,"src":"4776:5:76","typeDescriptions":{"typeIdentifier":"t_function_internal_pure$_t_userDefinedValueType$_MemoryPointer_$57048_$_t_uint256_$_t_uint256_$returns$_t_bytes_memory_ptr_$","typeString":"function (RLPReader.MemoryPointer,uint256,uint256) pure returns (bytes memory)"}},"id":57312,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"4776:29:76","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes memory"}},"src":"4769:36:76","typeDescriptions":{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes memory"}},"id":57314,"nodeType":"ExpressionStatement","src":"4769:36:76"}]},"documentation":{"id":57297,"nodeType":"StructuredDocumentation","src":"4550:120:76","text":"@notice Reads the raw bytes of an RLP item.\n @param _in RLP item to read.\n @return out_ Raw RLP bytes."},"implemented":true,"kind":"function","modifiers":[],"name":"readRawBytes","nameLocation":"4684:12:76","parameters":{"id":57301,"nodeType":"ParameterList","parameters":[{"constant":false,"id":57300,"mutability":"mutable","name":"_in","nameLocation":"4712:3:76","nodeType":"VariableDeclaration","scope":57316,"src":"4697:18:76","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_struct$_RLPItem_$57059_memory_ptr","typeString":"struct RLPReader.RLPItem"},"typeName":{"id":57299,"nodeType":"UserDefinedTypeName","pathNode":{"id":57298,"name":"RLPItem","nameLocations":["4697:7:76"],"nodeType":"IdentifierPath","referencedDeclaration":57059,"src":"4697:7:76"},"referencedDeclaration":57059,"src":"4697:7:76","typeDescriptions":{"typeIdentifier":"t_struct$_RLPItem_$57059_storage_ptr","typeString":"struct RLPReader.RLPItem"}},"visibility":"internal"}],"src":"4696:20:76"},"returnParameters":{"id":57304,"nodeType":"ParameterList","parameters":[{"constant":false,"id":57303,"mutability":"mutable","name":"out_","nameLocation":"4753:4:76","nodeType":"VariableDeclaration","scope":57316,"src":"4740:17:76","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes"},"typeName":{"id":57302,"name":"bytes","nodeType":"ElementaryTypeName","src":"4740:5:76","typeDescriptions":{"typeIdentifier":"t_bytes_storage_ptr","typeString":"bytes"}},"visibility":"internal"}],"src":"4739:19:76"},"scope":57578,"stateMutability":"pure","virtual":false,"visibility":"internal"},{"id":57539,"nodeType":"FunctionDefinition","src":"5074:3092:76","nodes":[],"body":{"id":57538,"nodeType":"Block","src":"5220:2946:76","nodes":[],"statements":[{"condition":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":57333,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"expression":{"id":57330,"name":"_in","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":57320,"src":"5516:3:76","typeDescriptions":{"typeIdentifier":"t_struct$_RLPItem_$57059_memory_ptr","typeString":"struct RLPReader.RLPItem memory"}},"id":57331,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"5520:6:76","memberName":"length","nodeType":"MemberAccess","referencedDeclaration":57055,"src":"5516:10:76","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"==","rightExpression":{"hexValue":"30","id":57332,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"5530:1:76","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"},"src":"5516:15:76","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":57337,"nodeType":"IfStatement","src":"5512:39:76","trueBody":{"errorCall":{"arguments":[],"expression":{"argumentTypes":[],"id":57334,"name":"EmptyItem","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":57027,"src":"5540:9:76","typeDescriptions":{"typeIdentifier":"t_function_error_pure$__$returns$_t_error_$","typeString":"function () pure returns (error)"}},"id":57335,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"5540:11:76","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_error","typeString":"error"}},"id":57336,"nodeType":"RevertStatement","src":"5533:18:76"}},{"assignments":[57340],"declarations":[{"constant":false,"id":57340,"mutability":"mutable","name":"ptr","nameLocation":"5576:3:76","nodeType":"VariableDeclaration","scope":57538,"src":"5562:17:76","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_userDefinedValueType$_MemoryPointer_$57048","typeString":"RLPReader.MemoryPointer"},"typeName":{"id":57339,"nodeType":"UserDefinedTypeName","pathNode":{"id":57338,"name":"MemoryPointer","nameLocations":["5562:13:76"],"nodeType":"IdentifierPath","referencedDeclaration":57048,"src":"5562:13:76"},"referencedDeclaration":57048,"src":"5562:13:76","typeDescriptions":{"typeIdentifier":"t_userDefinedValueType$_MemoryPointer_$57048","typeString":"RLPReader.MemoryPointer"}},"visibility":"internal"}],"id":57343,"initialValue":{"expression":{"id":57341,"name":"_in","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":57320,"src":"5582:3:76","typeDescriptions":{"typeIdentifier":"t_struct$_RLPItem_$57059_memory_ptr","typeString":"struct RLPReader.RLPItem memory"}},"id":57342,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"5586:3:76","memberName":"ptr","nodeType":"MemberAccess","referencedDeclaration":57058,"src":"5582:7:76","typeDescriptions":{"typeIdentifier":"t_userDefinedValueType$_MemoryPointer_$57048","typeString":"RLPReader.MemoryPointer"}},"nodeType":"VariableDeclarationStatement","src":"5562:27:76"},{"assignments":[57345],"declarations":[{"constant":false,"id":57345,"mutability":"mutable","name":"prefix","nameLocation":"5607:6:76","nodeType":"VariableDeclaration","scope":57538,"src":"5599:14:76","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":57344,"name":"uint256","nodeType":"ElementaryTypeName","src":"5599:7:76","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"id":57346,"nodeType":"VariableDeclarationStatement","src":"5599:14:76"},{"AST":{"nativeSrc":"5632:53:76","nodeType":"YulBlock","src":"5632:53:76","statements":[{"nativeSrc":"5646:29:76","nodeType":"YulAssignment","src":"5646:29:76","value":{"arguments":[{"kind":"number","nativeSrc":"5661:1:76","nodeType":"YulLiteral","src":"5661:1:76","type":"","value":"0"},{"arguments":[{"name":"ptr","nativeSrc":"5670:3:76","nodeType":"YulIdentifier","src":"5670:3:76"}],"functionName":{"name":"mload","nativeSrc":"5664:5:76","nodeType":"YulIdentifier","src":"5664:5:76"},"nativeSrc":"5664:10:76","nodeType":"YulFunctionCall","src":"5664:10:76"}],"functionName":{"name":"byte","nativeSrc":"5656:4:76","nodeType":"YulIdentifier","src":"5656:4:76"},"nativeSrc":"5656:19:76","nodeType":"YulFunctionCall","src":"5656:19:76"},"variableNames":[{"name":"prefix","nativeSrc":"5646:6:76","nodeType":"YulIdentifier","src":"5646:6:76"}]}]},"evmVersion":"cancun","externalReferences":[{"declaration":57345,"isOffset":false,"isSlot":false,"src":"5646:6:76","valueSize":1},{"declaration":57340,"isOffset":false,"isSlot":false,"src":"5670:3:76","valueSize":1}],"id":57347,"nodeType":"InlineAssembly","src":"5623:62:76"},{"condition":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":57350,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":57348,"name":"prefix","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":57345,"src":"5699:6:76","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"<=","rightExpression":{"hexValue":"30783766","id":57349,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"5709:4:76","typeDescriptions":{"typeIdentifier":"t_rational_127_by_1","typeString":"int_const 127"},"value":"0x7f"},"src":"5699:14:76","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"falseBody":{"condition":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":57360,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":57358,"name":"prefix","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":57345,"src":"5814:6:76","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"<=","rightExpression":{"hexValue":"30786237","id":57359,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"5824:4:76","typeDescriptions":{"typeIdentifier":"t_rational_183_by_1","typeString":"int_const 183"},"value":"0xb7"},"src":"5814:14:76","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"falseBody":{"condition":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":57399,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":57397,"name":"prefix","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":57345,"src":"6346:6:76","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"<=","rightExpression":{"hexValue":"30786266","id":57398,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"6356:4:76","typeDescriptions":{"typeIdentifier":"t_rational_191_by_1","typeString":"int_const 191"},"value":"0xbf"},"src":"6346:14:76","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"falseBody":{"condition":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":57457,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":57455,"name":"prefix","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":57345,"src":"7117:6:76","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"<=","rightExpression":{"hexValue":"30786637","id":57456,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"7127:4:76","typeDescriptions":{"typeIdentifier":"t_rational_247_by_1","typeString":"int_const 247"},"value":"0xf7"},"src":"7117:14:76","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"falseBody":{"id":57533,"nodeType":"Block","src":"7407:753:76","statements":[{"assignments":[57480],"declarations":[{"constant":false,"id":57480,"mutability":"mutable","name":"lenOfListLen","nameLocation":"7455:12:76","nodeType":"VariableDeclaration","scope":57533,"src":"7447:20:76","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":57479,"name":"uint256","nodeType":"ElementaryTypeName","src":"7447:7:76","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"id":57484,"initialValue":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":57483,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":57481,"name":"prefix","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":57345,"src":"7470:6:76","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"-","rightExpression":{"hexValue":"30786637","id":57482,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"7479:4:76","typeDescriptions":{"typeIdentifier":"t_rational_247_by_1","typeString":"int_const 247"},"value":"0xf7"},"src":"7470:13:76","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"VariableDeclarationStatement","src":"7447:36:76"},{"condition":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":57488,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"expression":{"id":57485,"name":"_in","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":57320,"src":"7502:3:76","typeDescriptions":{"typeIdentifier":"t_struct$_RLPItem_$57059_memory_ptr","typeString":"struct RLPReader.RLPItem memory"}},"id":57486,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"7506:6:76","memberName":"length","nodeType":"MemberAccess","referencedDeclaration":57055,"src":"7502:10:76","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"<=","rightExpression":{"id":57487,"name":"lenOfListLen","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":57480,"src":"7516:12:76","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"7502:26:76","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":57492,"nodeType":"IfStatement","src":"7498:62:76","trueBody":{"errorCall":{"arguments":[],"expression":{"argumentTypes":[],"id":57489,"name":"ContentLengthMismatch","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":57039,"src":"7537:21:76","typeDescriptions":{"typeIdentifier":"t_function_error_pure$__$returns$_t_error_$","typeString":"function () pure returns (error)"}},"id":57490,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"7537:23:76","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_error","typeString":"error"}},"id":57491,"nodeType":"RevertStatement","src":"7530:30:76"}},{"assignments":[57494],"declarations":[{"constant":false,"id":57494,"mutability":"mutable","name":"firstByteOfContent","nameLocation":"7582:18:76","nodeType":"VariableDeclaration","scope":57533,"src":"7575:25:76","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_bytes1","typeString":"bytes1"},"typeName":{"id":57493,"name":"bytes1","nodeType":"ElementaryTypeName","src":"7575:6:76","typeDescriptions":{"typeIdentifier":"t_bytes1","typeString":"bytes1"}},"visibility":"internal"}],"id":57495,"nodeType":"VariableDeclarationStatement","src":"7575:25:76"},{"AST":{"nativeSrc":"7623:93:76","nodeType":"YulBlock","src":"7623:93:76","statements":[{"nativeSrc":"7641:61:76","nodeType":"YulAssignment","src":"7641:61:76","value":{"arguments":[{"arguments":[{"arguments":[{"name":"ptr","nativeSrc":"7677:3:76","nodeType":"YulIdentifier","src":"7677:3:76"},{"kind":"number","nativeSrc":"7682:1:76","nodeType":"YulLiteral","src":"7682:1:76","type":"","value":"1"}],"functionName":{"name":"add","nativeSrc":"7673:3:76","nodeType":"YulIdentifier","src":"7673:3:76"},"nativeSrc":"7673:11:76","nodeType":"YulFunctionCall","src":"7673:11:76"}],"functionName":{"name":"mload","nativeSrc":"7667:5:76","nodeType":"YulIdentifier","src":"7667:5:76"},"nativeSrc":"7667:18:76","nodeType":"YulFunctionCall","src":"7667:18:76"},{"arguments":[{"kind":"number","nativeSrc":"7691:3:76","nodeType":"YulLiteral","src":"7691:3:76","type":"","value":"248"},{"kind":"number","nativeSrc":"7696:4:76","nodeType":"YulLiteral","src":"7696:4:76","type":"","value":"0xff"}],"functionName":{"name":"shl","nativeSrc":"7687:3:76","nodeType":"YulIdentifier","src":"7687:3:76"},"nativeSrc":"7687:14:76","nodeType":"YulFunctionCall","src":"7687:14:76"}],"functionName":{"name":"and","nativeSrc":"7663:3:76","nodeType":"YulIdentifier","src":"7663:3:76"},"nativeSrc":"7663:39:76","nodeType":"YulFunctionCall","src":"7663:39:76"},"variableNames":[{"name":"firstByteOfContent","nativeSrc":"7641:18:76","nodeType":"YulIdentifier","src":"7641:18:76"}]}]},"evmVersion":"cancun","externalReferences":[{"declaration":57494,"isOffset":false,"isSlot":false,"src":"7641:18:76","valueSize":1},{"declaration":57340,"isOffset":false,"isSlot":false,"src":"7677:3:76","valueSize":1}],"id":57496,"nodeType":"InlineAssembly","src":"7614:102:76"},{"condition":{"commonType":{"typeIdentifier":"t_bytes1","typeString":"bytes1"},"id":57499,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":57497,"name":"firstByteOfContent","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":57494,"src":"7734:18:76","typeDescriptions":{"typeIdentifier":"t_bytes1","typeString":"bytes1"}},"nodeType":"BinaryOperation","operator":"==","rightExpression":{"hexValue":"30783030","id":57498,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"7756:4:76","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0x00"},"src":"7734:26:76","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":57503,"nodeType":"IfStatement","src":"7730:54:76","trueBody":{"errorCall":{"arguments":[],"expression":{"argumentTypes":[],"id":57500,"name":"InvalidHeader","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":57042,"src":"7769:13:76","typeDescriptions":{"typeIdentifier":"t_function_error_pure$__$returns$_t_error_$","typeString":"function () pure returns (error)"}},"id":57501,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"7769:15:76","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_error","typeString":"error"}},"id":57502,"nodeType":"RevertStatement","src":"7762:22:76"}},{"assignments":[57505],"declarations":[{"constant":false,"id":57505,"mutability":"mutable","name":"listLen","nameLocation":"7807:7:76","nodeType":"VariableDeclaration","scope":57533,"src":"7799:15:76","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":57504,"name":"uint256","nodeType":"ElementaryTypeName","src":"7799:7:76","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"id":57506,"nodeType":"VariableDeclarationStatement","src":"7799:15:76"},{"AST":{"nativeSrc":"7837:98:76","nodeType":"YulBlock","src":"7837:98:76","statements":[{"nativeSrc":"7855:66:76","nodeType":"YulAssignment","src":"7855:66:76","value":{"arguments":[{"arguments":[{"kind":"number","nativeSrc":"7874:3:76","nodeType":"YulLiteral","src":"7874:3:76","type":"","value":"256"},{"arguments":[{"kind":"number","nativeSrc":"7883:1:76","nodeType":"YulLiteral","src":"7883:1:76","type":"","value":"8"},{"name":"lenOfListLen","nativeSrc":"7886:12:76","nodeType":"YulIdentifier","src":"7886:12:76"}],"functionName":{"name":"mul","nativeSrc":"7879:3:76","nodeType":"YulIdentifier","src":"7879:3:76"},"nativeSrc":"7879:20:76","nodeType":"YulFunctionCall","src":"7879:20:76"}],"functionName":{"name":"sub","nativeSrc":"7870:3:76","nodeType":"YulIdentifier","src":"7870:3:76"},"nativeSrc":"7870:30:76","nodeType":"YulFunctionCall","src":"7870:30:76"},{"arguments":[{"arguments":[{"name":"ptr","nativeSrc":"7912:3:76","nodeType":"YulIdentifier","src":"7912:3:76"},{"kind":"number","nativeSrc":"7917:1:76","nodeType":"YulLiteral","src":"7917:1:76","type":"","value":"1"}],"functionName":{"name":"add","nativeSrc":"7908:3:76","nodeType":"YulIdentifier","src":"7908:3:76"},"nativeSrc":"7908:11:76","nodeType":"YulFunctionCall","src":"7908:11:76"}],"functionName":{"name":"mload","nativeSrc":"7902:5:76","nodeType":"YulIdentifier","src":"7902:5:76"},"nativeSrc":"7902:18:76","nodeType":"YulFunctionCall","src":"7902:18:76"}],"functionName":{"name":"shr","nativeSrc":"7866:3:76","nodeType":"YulIdentifier","src":"7866:3:76"},"nativeSrc":"7866:55:76","nodeType":"YulFunctionCall","src":"7866:55:76"},"variableNames":[{"name":"listLen","nativeSrc":"7855:7:76","nodeType":"YulIdentifier","src":"7855:7:76"}]}]},"evmVersion":"cancun","externalReferences":[{"declaration":57480,"isOffset":false,"isSlot":false,"src":"7886:12:76","valueSize":1},{"declaration":57505,"isOffset":false,"isSlot":false,"src":"7855:7:76","valueSize":1},{"declaration":57340,"isOffset":false,"isSlot":false,"src":"7912:3:76","valueSize":1}],"id":57507,"nodeType":"InlineAssembly","src":"7828:107:76"},{"condition":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":57510,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":57508,"name":"listLen","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":57505,"src":"7953:7:76","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"<=","rightExpression":{"hexValue":"3535","id":57509,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"7964:2:76","typeDescriptions":{"typeIdentifier":"t_rational_55_by_1","typeString":"int_const 55"},"value":"55"},"src":"7953:13:76","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":57514,"nodeType":"IfStatement","src":"7949:41:76","trueBody":{"errorCall":{"arguments":[],"expression":{"argumentTypes":[],"id":57511,"name":"InvalidHeader","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":57042,"src":"7975:13:76","typeDescriptions":{"typeIdentifier":"t_function_error_pure$__$returns$_t_error_$","typeString":"function () pure returns (error)"}},"id":57512,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"7975:15:76","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_error","typeString":"error"}},"id":57513,"nodeType":"RevertStatement","src":"7968:22:76"}},{"condition":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":57520,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"expression":{"id":57515,"name":"_in","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":57320,"src":"8009:3:76","typeDescriptions":{"typeIdentifier":"t_struct$_RLPItem_$57059_memory_ptr","typeString":"struct RLPReader.RLPItem memory"}},"id":57516,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"8013:6:76","memberName":"length","nodeType":"MemberAccess","referencedDeclaration":57055,"src":"8009:10:76","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"<=","rightExpression":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":57519,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":57517,"name":"lenOfListLen","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":57480,"src":"8023:12:76","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"+","rightExpression":{"id":57518,"name":"listLen","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":57505,"src":"8038:7:76","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"8023:22:76","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"8009:36:76","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":57524,"nodeType":"IfStatement","src":"8005:72:76","trueBody":{"errorCall":{"arguments":[],"expression":{"argumentTypes":[],"id":57521,"name":"ContentLengthMismatch","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":57039,"src":"8054:21:76","typeDescriptions":{"typeIdentifier":"t_function_error_pure$__$returns$_t_error_$","typeString":"function () pure returns (error)"}},"id":57522,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"8054:23:76","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_error","typeString":"error"}},"id":57523,"nodeType":"RevertStatement","src":"8047:30:76"}},{"expression":{"components":[{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":57527,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"hexValue":"31","id":57525,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"8100:1:76","typeDescriptions":{"typeIdentifier":"t_rational_1_by_1","typeString":"int_const 1"},"value":"1"},"nodeType":"BinaryOperation","operator":"+","rightExpression":{"id":57526,"name":"lenOfListLen","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":57480,"src":"8104:12:76","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"8100:16:76","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},{"id":57528,"name":"listLen","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":57505,"src":"8118:7:76","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},{"expression":{"id":57529,"name":"RLPItemType","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":57052,"src":"8127:11:76","typeDescriptions":{"typeIdentifier":"t_type$_t_enum$_RLPItemType_$57052_$","typeString":"type(enum RLPReader.RLPItemType)"}},"id":57530,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"memberLocation":"8139:9:76","memberName":"LIST_ITEM","nodeType":"MemberAccess","referencedDeclaration":57051,"src":"8127:21:76","typeDescriptions":{"typeIdentifier":"t_enum$_RLPItemType_$57052","typeString":"enum RLPReader.RLPItemType"}}],"id":57531,"isConstant":false,"isInlineArray":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"TupleExpression","src":"8099:50:76","typeDescriptions":{"typeIdentifier":"t_tuple$_t_uint256_$_t_uint256_$_t_enum$_RLPItemType_$57052_$","typeString":"tuple(uint256,uint256,enum RLPReader.RLPItemType)"}},"functionReturnParameters":57329,"id":57532,"nodeType":"Return","src":"8092:57:76"}]},"id":57534,"nodeType":"IfStatement","src":"7113:1047:76","trueBody":{"id":57478,"nodeType":"Block","src":"7133:268:76","statements":[{"assignments":[57459],"declarations":[{"constant":false,"id":57459,"mutability":"mutable","name":"listLen","nameLocation":"7238:7:76","nodeType":"VariableDeclaration","scope":57478,"src":"7230:15:76","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":57458,"name":"uint256","nodeType":"ElementaryTypeName","src":"7230:7:76","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"id":57463,"initialValue":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":57462,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":57460,"name":"prefix","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":57345,"src":"7248:6:76","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"-","rightExpression":{"hexValue":"30786330","id":57461,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"7257:4:76","typeDescriptions":{"typeIdentifier":"t_rational_192_by_1","typeString":"int_const 192"},"value":"0xc0"},"src":"7248:13:76","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"VariableDeclarationStatement","src":"7230:31:76"},{"condition":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":57467,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"expression":{"id":57464,"name":"_in","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":57320,"src":"7280:3:76","typeDescriptions":{"typeIdentifier":"t_struct$_RLPItem_$57059_memory_ptr","typeString":"struct RLPReader.RLPItem memory"}},"id":57465,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"7284:6:76","memberName":"length","nodeType":"MemberAccess","referencedDeclaration":57055,"src":"7280:10:76","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"<=","rightExpression":{"id":57466,"name":"listLen","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":57459,"src":"7294:7:76","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"7280:21:76","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":57471,"nodeType":"IfStatement","src":"7276:57:76","trueBody":{"errorCall":{"arguments":[],"expression":{"argumentTypes":[],"id":57468,"name":"ContentLengthMismatch","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":57039,"src":"7310:21:76","typeDescriptions":{"typeIdentifier":"t_function_error_pure$__$returns$_t_error_$","typeString":"function () pure returns (error)"}},"id":57469,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"7310:23:76","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_error","typeString":"error"}},"id":57470,"nodeType":"RevertStatement","src":"7303:30:76"}},{"expression":{"components":[{"hexValue":"31","id":57472,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"7356:1:76","typeDescriptions":{"typeIdentifier":"t_rational_1_by_1","typeString":"int_const 1"},"value":"1"},{"id":57473,"name":"listLen","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":57459,"src":"7359:7:76","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},{"expression":{"id":57474,"name":"RLPItemType","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":57052,"src":"7368:11:76","typeDescriptions":{"typeIdentifier":"t_type$_t_enum$_RLPItemType_$57052_$","typeString":"type(enum RLPReader.RLPItemType)"}},"id":57475,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"memberLocation":"7380:9:76","memberName":"LIST_ITEM","nodeType":"MemberAccess","referencedDeclaration":57051,"src":"7368:21:76","typeDescriptions":{"typeIdentifier":"t_enum$_RLPItemType_$57052","typeString":"enum RLPReader.RLPItemType"}}],"id":57476,"isConstant":false,"isInlineArray":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"TupleExpression","src":"7355:35:76","typeDescriptions":{"typeIdentifier":"t_tuple$_t_rational_1_by_1_$_t_uint256_$_t_enum$_RLPItemType_$57052_$","typeString":"tuple(int_const 1,uint256,enum RLPReader.RLPItemType)"}},"functionReturnParameters":57329,"id":57477,"nodeType":"Return","src":"7348:42:76"}]}},"id":57535,"nodeType":"IfStatement","src":"6342:1818:76","trueBody":{"id":57454,"nodeType":"Block","src":"6362:745:76","statements":[{"assignments":[57401],"declarations":[{"constant":false,"id":57401,"mutability":"mutable","name":"lenOfStrLen","nameLocation":"6412:11:76","nodeType":"VariableDeclaration","scope":57454,"src":"6404:19:76","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":57400,"name":"uint256","nodeType":"ElementaryTypeName","src":"6404:7:76","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"id":57405,"initialValue":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":57404,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":57402,"name":"prefix","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":57345,"src":"6426:6:76","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"-","rightExpression":{"hexValue":"30786237","id":57403,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"6435:4:76","typeDescriptions":{"typeIdentifier":"t_rational_183_by_1","typeString":"int_const 183"},"value":"0xb7"},"src":"6426:13:76","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"VariableDeclarationStatement","src":"6404:35:76"},{"condition":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":57409,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"expression":{"id":57406,"name":"_in","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":57320,"src":"6458:3:76","typeDescriptions":{"typeIdentifier":"t_struct$_RLPItem_$57059_memory_ptr","typeString":"struct RLPReader.RLPItem memory"}},"id":57407,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"6462:6:76","memberName":"length","nodeType":"MemberAccess","referencedDeclaration":57055,"src":"6458:10:76","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"<=","rightExpression":{"id":57408,"name":"lenOfStrLen","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":57401,"src":"6472:11:76","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"6458:25:76","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":57413,"nodeType":"IfStatement","src":"6454:61:76","trueBody":{"errorCall":{"arguments":[],"expression":{"argumentTypes":[],"id":57410,"name":"ContentLengthMismatch","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":57039,"src":"6492:21:76","typeDescriptions":{"typeIdentifier":"t_function_error_pure$__$returns$_t_error_$","typeString":"function () pure returns (error)"}},"id":57411,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"6492:23:76","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_error","typeString":"error"}},"id":57412,"nodeType":"RevertStatement","src":"6485:30:76"}},{"assignments":[57415],"declarations":[{"constant":false,"id":57415,"mutability":"mutable","name":"firstByteOfContent","nameLocation":"6537:18:76","nodeType":"VariableDeclaration","scope":57454,"src":"6530:25:76","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_bytes1","typeString":"bytes1"},"typeName":{"id":57414,"name":"bytes1","nodeType":"ElementaryTypeName","src":"6530:6:76","typeDescriptions":{"typeIdentifier":"t_bytes1","typeString":"bytes1"}},"visibility":"internal"}],"id":57416,"nodeType":"VariableDeclarationStatement","src":"6530:25:76"},{"AST":{"nativeSrc":"6578:93:76","nodeType":"YulBlock","src":"6578:93:76","statements":[{"nativeSrc":"6596:61:76","nodeType":"YulAssignment","src":"6596:61:76","value":{"arguments":[{"arguments":[{"arguments":[{"name":"ptr","nativeSrc":"6632:3:76","nodeType":"YulIdentifier","src":"6632:3:76"},{"kind":"number","nativeSrc":"6637:1:76","nodeType":"YulLiteral","src":"6637:1:76","type":"","value":"1"}],"functionName":{"name":"add","nativeSrc":"6628:3:76","nodeType":"YulIdentifier","src":"6628:3:76"},"nativeSrc":"6628:11:76","nodeType":"YulFunctionCall","src":"6628:11:76"}],"functionName":{"name":"mload","nativeSrc":"6622:5:76","nodeType":"YulIdentifier","src":"6622:5:76"},"nativeSrc":"6622:18:76","nodeType":"YulFunctionCall","src":"6622:18:76"},{"arguments":[{"kind":"number","nativeSrc":"6646:3:76","nodeType":"YulLiteral","src":"6646:3:76","type":"","value":"248"},{"kind":"number","nativeSrc":"6651:4:76","nodeType":"YulLiteral","src":"6651:4:76","type":"","value":"0xff"}],"functionName":{"name":"shl","nativeSrc":"6642:3:76","nodeType":"YulIdentifier","src":"6642:3:76"},"nativeSrc":"6642:14:76","nodeType":"YulFunctionCall","src":"6642:14:76"}],"functionName":{"name":"and","nativeSrc":"6618:3:76","nodeType":"YulIdentifier","src":"6618:3:76"},"nativeSrc":"6618:39:76","nodeType":"YulFunctionCall","src":"6618:39:76"},"variableNames":[{"name":"firstByteOfContent","nativeSrc":"6596:18:76","nodeType":"YulIdentifier","src":"6596:18:76"}]}]},"evmVersion":"cancun","externalReferences":[{"declaration":57415,"isOffset":false,"isSlot":false,"src":"6596:18:76","valueSize":1},{"declaration":57340,"isOffset":false,"isSlot":false,"src":"6632:3:76","valueSize":1}],"id":57417,"nodeType":"InlineAssembly","src":"6569:102:76"},{"condition":{"commonType":{"typeIdentifier":"t_bytes1","typeString":"bytes1"},"id":57420,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":57418,"name":"firstByteOfContent","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":57415,"src":"6689:18:76","typeDescriptions":{"typeIdentifier":"t_bytes1","typeString":"bytes1"}},"nodeType":"BinaryOperation","operator":"==","rightExpression":{"hexValue":"30783030","id":57419,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"6711:4:76","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0x00"},"src":"6689:26:76","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":57424,"nodeType":"IfStatement","src":"6685:54:76","trueBody":{"errorCall":{"arguments":[],"expression":{"argumentTypes":[],"id":57421,"name":"InvalidHeader","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":57042,"src":"6724:13:76","typeDescriptions":{"typeIdentifier":"t_function_error_pure$__$returns$_t_error_$","typeString":"function () pure returns (error)"}},"id":57422,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"6724:15:76","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_error","typeString":"error"}},"id":57423,"nodeType":"RevertStatement","src":"6717:22:76"}},{"assignments":[57426],"declarations":[{"constant":false,"id":57426,"mutability":"mutable","name":"strLen","nameLocation":"6762:6:76","nodeType":"VariableDeclaration","scope":57454,"src":"6754:14:76","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":57425,"name":"uint256","nodeType":"ElementaryTypeName","src":"6754:7:76","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"id":57427,"nodeType":"VariableDeclarationStatement","src":"6754:14:76"},{"AST":{"nativeSrc":"6791:96:76","nodeType":"YulBlock","src":"6791:96:76","statements":[{"nativeSrc":"6809:64:76","nodeType":"YulAssignment","src":"6809:64:76","value":{"arguments":[{"arguments":[{"kind":"number","nativeSrc":"6827:3:76","nodeType":"YulLiteral","src":"6827:3:76","type":"","value":"256"},{"arguments":[{"kind":"number","nativeSrc":"6836:1:76","nodeType":"YulLiteral","src":"6836:1:76","type":"","value":"8"},{"name":"lenOfStrLen","nativeSrc":"6839:11:76","nodeType":"YulIdentifier","src":"6839:11:76"}],"functionName":{"name":"mul","nativeSrc":"6832:3:76","nodeType":"YulIdentifier","src":"6832:3:76"},"nativeSrc":"6832:19:76","nodeType":"YulFunctionCall","src":"6832:19:76"}],"functionName":{"name":"sub","nativeSrc":"6823:3:76","nodeType":"YulIdentifier","src":"6823:3:76"},"nativeSrc":"6823:29:76","nodeType":"YulFunctionCall","src":"6823:29:76"},{"arguments":[{"arguments":[{"name":"ptr","nativeSrc":"6864:3:76","nodeType":"YulIdentifier","src":"6864:3:76"},{"kind":"number","nativeSrc":"6869:1:76","nodeType":"YulLiteral","src":"6869:1:76","type":"","value":"1"}],"functionName":{"name":"add","nativeSrc":"6860:3:76","nodeType":"YulIdentifier","src":"6860:3:76"},"nativeSrc":"6860:11:76","nodeType":"YulFunctionCall","src":"6860:11:76"}],"functionName":{"name":"mload","nativeSrc":"6854:5:76","nodeType":"YulIdentifier","src":"6854:5:76"},"nativeSrc":"6854:18:76","nodeType":"YulFunctionCall","src":"6854:18:76"}],"functionName":{"name":"shr","nativeSrc":"6819:3:76","nodeType":"YulIdentifier","src":"6819:3:76"},"nativeSrc":"6819:54:76","nodeType":"YulFunctionCall","src":"6819:54:76"},"variableNames":[{"name":"strLen","nativeSrc":"6809:6:76","nodeType":"YulIdentifier","src":"6809:6:76"}]}]},"evmVersion":"cancun","externalReferences":[{"declaration":57401,"isOffset":false,"isSlot":false,"src":"6839:11:76","valueSize":1},{"declaration":57340,"isOffset":false,"isSlot":false,"src":"6864:3:76","valueSize":1},{"declaration":57426,"isOffset":false,"isSlot":false,"src":"6809:6:76","valueSize":1}],"id":57428,"nodeType":"InlineAssembly","src":"6782:105:76"},{"condition":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":57431,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":57429,"name":"strLen","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":57426,"src":"6905:6:76","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"<=","rightExpression":{"hexValue":"3535","id":57430,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"6915:2:76","typeDescriptions":{"typeIdentifier":"t_rational_55_by_1","typeString":"int_const 55"},"value":"55"},"src":"6905:12:76","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":57435,"nodeType":"IfStatement","src":"6901:40:76","trueBody":{"errorCall":{"arguments":[],"expression":{"argumentTypes":[],"id":57432,"name":"InvalidHeader","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":57042,"src":"6926:13:76","typeDescriptions":{"typeIdentifier":"t_function_error_pure$__$returns$_t_error_$","typeString":"function () pure returns (error)"}},"id":57433,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"6926:15:76","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_error","typeString":"error"}},"id":57434,"nodeType":"RevertStatement","src":"6919:22:76"}},{"condition":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":57441,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"expression":{"id":57436,"name":"_in","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":57320,"src":"6960:3:76","typeDescriptions":{"typeIdentifier":"t_struct$_RLPItem_$57059_memory_ptr","typeString":"struct RLPReader.RLPItem memory"}},"id":57437,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"6964:6:76","memberName":"length","nodeType":"MemberAccess","referencedDeclaration":57055,"src":"6960:10:76","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"<=","rightExpression":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":57440,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":57438,"name":"lenOfStrLen","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":57401,"src":"6974:11:76","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"+","rightExpression":{"id":57439,"name":"strLen","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":57426,"src":"6988:6:76","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"6974:20:76","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"6960:34:76","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":57445,"nodeType":"IfStatement","src":"6956:70:76","trueBody":{"errorCall":{"arguments":[],"expression":{"argumentTypes":[],"id":57442,"name":"ContentLengthMismatch","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":57039,"src":"7003:21:76","typeDescriptions":{"typeIdentifier":"t_function_error_pure$__$returns$_t_error_$","typeString":"function () pure returns (error)"}},"id":57443,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"7003:23:76","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_error","typeString":"error"}},"id":57444,"nodeType":"RevertStatement","src":"6996:30:76"}},{"expression":{"components":[{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":57448,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"hexValue":"31","id":57446,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"7049:1:76","typeDescriptions":{"typeIdentifier":"t_rational_1_by_1","typeString":"int_const 1"},"value":"1"},"nodeType":"BinaryOperation","operator":"+","rightExpression":{"id":57447,"name":"lenOfStrLen","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":57401,"src":"7053:11:76","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"7049:15:76","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},{"id":57449,"name":"strLen","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":57426,"src":"7066:6:76","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},{"expression":{"id":57450,"name":"RLPItemType","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":57052,"src":"7074:11:76","typeDescriptions":{"typeIdentifier":"t_type$_t_enum$_RLPItemType_$57052_$","typeString":"type(enum RLPReader.RLPItemType)"}},"id":57451,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"memberLocation":"7086:9:76","memberName":"DATA_ITEM","nodeType":"MemberAccess","referencedDeclaration":57050,"src":"7074:21:76","typeDescriptions":{"typeIdentifier":"t_enum$_RLPItemType_$57052","typeString":"enum RLPReader.RLPItemType"}}],"id":57452,"isConstant":false,"isInlineArray":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"TupleExpression","src":"7048:48:76","typeDescriptions":{"typeIdentifier":"t_tuple$_t_uint256_$_t_uint256_$_t_enum$_RLPItemType_$57052_$","typeString":"tuple(uint256,uint256,enum RLPReader.RLPItemType)"}},"functionReturnParameters":57329,"id":57453,"nodeType":"Return","src":"7041:55:76"}]}},"id":57536,"nodeType":"IfStatement","src":"5810:2350:76","trueBody":{"id":57396,"nodeType":"Block","src":"5830:506:76","statements":[{"assignments":[57362],"declarations":[{"constant":false,"id":57362,"mutability":"mutable","name":"strLen","nameLocation":"5938:6:76","nodeType":"VariableDeclaration","scope":57396,"src":"5930:14:76","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":57361,"name":"uint256","nodeType":"ElementaryTypeName","src":"5930:7:76","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"id":57366,"initialValue":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":57365,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":57363,"name":"prefix","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":57345,"src":"5947:6:76","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"-","rightExpression":{"hexValue":"30783830","id":57364,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"5956:4:76","typeDescriptions":{"typeIdentifier":"t_rational_128_by_1","typeString":"int_const 128"},"value":"0x80"},"src":"5947:13:76","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"VariableDeclarationStatement","src":"5930:30:76"},{"condition":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":57370,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"expression":{"id":57367,"name":"_in","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":57320,"src":"5979:3:76","typeDescriptions":{"typeIdentifier":"t_struct$_RLPItem_$57059_memory_ptr","typeString":"struct RLPReader.RLPItem memory"}},"id":57368,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"5983:6:76","memberName":"length","nodeType":"MemberAccess","referencedDeclaration":57055,"src":"5979:10:76","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"<=","rightExpression":{"id":57369,"name":"strLen","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":57362,"src":"5993:6:76","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"5979:20:76","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":57374,"nodeType":"IfStatement","src":"5975:56:76","trueBody":{"errorCall":{"arguments":[],"expression":{"argumentTypes":[],"id":57371,"name":"ContentLengthMismatch","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":57039,"src":"6008:21:76","typeDescriptions":{"typeIdentifier":"t_function_error_pure$__$returns$_t_error_$","typeString":"function () pure returns (error)"}},"id":57372,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"6008:23:76","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_error","typeString":"error"}},"id":57373,"nodeType":"RevertStatement","src":"6001:30:76"}},{"assignments":[57376],"declarations":[{"constant":false,"id":57376,"mutability":"mutable","name":"firstByteOfContent","nameLocation":"6053:18:76","nodeType":"VariableDeclaration","scope":57396,"src":"6046:25:76","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_bytes1","typeString":"bytes1"},"typeName":{"id":57375,"name":"bytes1","nodeType":"ElementaryTypeName","src":"6046:6:76","typeDescriptions":{"typeIdentifier":"t_bytes1","typeString":"bytes1"}},"visibility":"internal"}],"id":57377,"nodeType":"VariableDeclarationStatement","src":"6046:25:76"},{"AST":{"nativeSrc":"6094:93:76","nodeType":"YulBlock","src":"6094:93:76","statements":[{"nativeSrc":"6112:61:76","nodeType":"YulAssignment","src":"6112:61:76","value":{"arguments":[{"arguments":[{"arguments":[{"name":"ptr","nativeSrc":"6148:3:76","nodeType":"YulIdentifier","src":"6148:3:76"},{"kind":"number","nativeSrc":"6153:1:76","nodeType":"YulLiteral","src":"6153:1:76","type":"","value":"1"}],"functionName":{"name":"add","nativeSrc":"6144:3:76","nodeType":"YulIdentifier","src":"6144:3:76"},"nativeSrc":"6144:11:76","nodeType":"YulFunctionCall","src":"6144:11:76"}],"functionName":{"name":"mload","nativeSrc":"6138:5:76","nodeType":"YulIdentifier","src":"6138:5:76"},"nativeSrc":"6138:18:76","nodeType":"YulFunctionCall","src":"6138:18:76"},{"arguments":[{"kind":"number","nativeSrc":"6162:3:76","nodeType":"YulLiteral","src":"6162:3:76","type":"","value":"248"},{"kind":"number","nativeSrc":"6167:4:76","nodeType":"YulLiteral","src":"6167:4:76","type":"","value":"0xff"}],"functionName":{"name":"shl","nativeSrc":"6158:3:76","nodeType":"YulIdentifier","src":"6158:3:76"},"nativeSrc":"6158:14:76","nodeType":"YulFunctionCall","src":"6158:14:76"}],"functionName":{"name":"and","nativeSrc":"6134:3:76","nodeType":"YulIdentifier","src":"6134:3:76"},"nativeSrc":"6134:39:76","nodeType":"YulFunctionCall","src":"6134:39:76"},"variableNames":[{"name":"firstByteOfContent","nativeSrc":"6112:18:76","nodeType":"YulIdentifier","src":"6112:18:76"}]}]},"evmVersion":"cancun","externalReferences":[{"declaration":57376,"isOffset":false,"isSlot":false,"src":"6112:18:76","valueSize":1},{"declaration":57340,"isOffset":false,"isSlot":false,"src":"6148:3:76","valueSize":1}],"id":57378,"nodeType":"InlineAssembly","src":"6085:102:76"},{"condition":{"commonType":{"typeIdentifier":"t_bool","typeString":"bool"},"id":57385,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":57381,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":57379,"name":"strLen","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":57362,"src":"6205:6:76","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"==","rightExpression":{"hexValue":"31","id":57380,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"6215:1:76","typeDescriptions":{"typeIdentifier":"t_rational_1_by_1","typeString":"int_const 1"},"value":"1"},"src":"6205:11:76","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"nodeType":"BinaryOperation","operator":"&&","rightExpression":{"commonType":{"typeIdentifier":"t_bytes1","typeString":"bytes1"},"id":57384,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":57382,"name":"firstByteOfContent","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":57376,"src":"6220:18:76","typeDescriptions":{"typeIdentifier":"t_bytes1","typeString":"bytes1"}},"nodeType":"BinaryOperation","operator":"<","rightExpression":{"hexValue":"30783830","id":57383,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"6241:4:76","typeDescriptions":{"typeIdentifier":"t_rational_128_by_1","typeString":"int_const 128"},"value":"0x80"},"src":"6220:25:76","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"src":"6205:40:76","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":57389,"nodeType":"IfStatement","src":"6201:68:76","trueBody":{"errorCall":{"arguments":[],"expression":{"argumentTypes":[],"id":57386,"name":"InvalidHeader","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":57042,"src":"6254:13:76","typeDescriptions":{"typeIdentifier":"t_function_error_pure$__$returns$_t_error_$","typeString":"function () pure returns (error)"}},"id":57387,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"6254:15:76","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_error","typeString":"error"}},"id":57388,"nodeType":"RevertStatement","src":"6247:22:76"}},{"expression":{"components":[{"hexValue":"31","id":57390,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"6292:1:76","typeDescriptions":{"typeIdentifier":"t_rational_1_by_1","typeString":"int_const 1"},"value":"1"},{"id":57391,"name":"strLen","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":57362,"src":"6295:6:76","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},{"expression":{"id":57392,"name":"RLPItemType","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":57052,"src":"6303:11:76","typeDescriptions":{"typeIdentifier":"t_type$_t_enum$_RLPItemType_$57052_$","typeString":"type(enum RLPReader.RLPItemType)"}},"id":57393,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"memberLocation":"6315:9:76","memberName":"DATA_ITEM","nodeType":"MemberAccess","referencedDeclaration":57050,"src":"6303:21:76","typeDescriptions":{"typeIdentifier":"t_enum$_RLPItemType_$57052","typeString":"enum RLPReader.RLPItemType"}}],"id":57394,"isConstant":false,"isInlineArray":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"TupleExpression","src":"6291:34:76","typeDescriptions":{"typeIdentifier":"t_tuple$_t_rational_1_by_1_$_t_uint256_$_t_enum$_RLPItemType_$57052_$","typeString":"tuple(int_const 1,uint256,enum RLPReader.RLPItemType)"}},"functionReturnParameters":57329,"id":57395,"nodeType":"Return","src":"6284:41:76"}]}},"id":57537,"nodeType":"IfStatement","src":"5695:2465:76","trueBody":{"id":57357,"nodeType":"Block","src":"5715:89:76","statements":[{"expression":{"components":[{"hexValue":"30","id":57351,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"5765:1:76","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"},{"hexValue":"31","id":57352,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"5768:1:76","typeDescriptions":{"typeIdentifier":"t_rational_1_by_1","typeString":"int_const 1"},"value":"1"},{"expression":{"id":57353,"name":"RLPItemType","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":57052,"src":"5771:11:76","typeDescriptions":{"typeIdentifier":"t_type$_t_enum$_RLPItemType_$57052_$","typeString":"type(enum RLPReader.RLPItemType)"}},"id":57354,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"memberLocation":"5783:9:76","memberName":"DATA_ITEM","nodeType":"MemberAccess","referencedDeclaration":57050,"src":"5771:21:76","typeDescriptions":{"typeIdentifier":"t_enum$_RLPItemType_$57052","typeString":"enum RLPReader.RLPItemType"}}],"id":57355,"isConstant":false,"isInlineArray":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"TupleExpression","src":"5764:29:76","typeDescriptions":{"typeIdentifier":"t_tuple$_t_rational_0_by_1_$_t_rational_1_by_1_$_t_enum$_RLPItemType_$57052_$","typeString":"tuple(int_const 0,int_const 1,enum RLPReader.RLPItemType)"}},"functionReturnParameters":57329,"id":57356,"nodeType":"Return","src":"5757:36:76"}]}}]},"documentation":{"id":57317,"nodeType":"StructuredDocumentation","src":"4818:251:76","text":"@notice Decodes the length of an RLP item.\n @param _in RLP item to decode.\n @return offset_ Offset of the encoded data.\n @return length_ Length of the encoded data.\n @return type_ RLP item type (LIST_ITEM or DATA_ITEM)."},"implemented":true,"kind":"function","modifiers":[],"name":"_decodeLength","nameLocation":"5083:13:76","parameters":{"id":57321,"nodeType":"ParameterList","parameters":[{"constant":false,"id":57320,"mutability":"mutable","name":"_in","nameLocation":"5112:3:76","nodeType":"VariableDeclaration","scope":57539,"src":"5097:18:76","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_struct$_RLPItem_$57059_memory_ptr","typeString":"struct RLPReader.RLPItem"},"typeName":{"id":57319,"nodeType":"UserDefinedTypeName","pathNode":{"id":57318,"name":"RLPItem","nameLocations":["5097:7:76"],"nodeType":"IdentifierPath","referencedDeclaration":57059,"src":"5097:7:76"},"referencedDeclaration":57059,"src":"5097:7:76","typeDescriptions":{"typeIdentifier":"t_struct$_RLPItem_$57059_storage_ptr","typeString":"struct RLPReader.RLPItem"}},"visibility":"internal"}],"src":"5096:20:76"},"returnParameters":{"id":57329,"nodeType":"ParameterList","parameters":[{"constant":false,"id":57323,"mutability":"mutable","name":"offset_","nameLocation":"5171:7:76","nodeType":"VariableDeclaration","scope":57539,"src":"5163:15:76","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":57322,"name":"uint256","nodeType":"ElementaryTypeName","src":"5163:7:76","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":57325,"mutability":"mutable","name":"length_","nameLocation":"5188:7:76","nodeType":"VariableDeclaration","scope":57539,"src":"5180:15:76","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":57324,"name":"uint256","nodeType":"ElementaryTypeName","src":"5180:7:76","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":57328,"mutability":"mutable","name":"type_","nameLocation":"5209:5:76","nodeType":"VariableDeclaration","scope":57539,"src":"5197:17:76","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_enum$_RLPItemType_$57052","typeString":"enum RLPReader.RLPItemType"},"typeName":{"id":57327,"nodeType":"UserDefinedTypeName","pathNode":{"id":57326,"name":"RLPItemType","nameLocations":["5197:11:76"],"nodeType":"IdentifierPath","referencedDeclaration":57052,"src":"5197:11:76"},"referencedDeclaration":57052,"src":"5197:11:76","typeDescriptions":{"typeIdentifier":"t_enum$_RLPItemType_$57052","typeString":"enum RLPReader.RLPItemType"}},"visibility":"internal"}],"src":"5162:53:76"},"scope":57578,"stateMutability":"pure","virtual":false,"visibility":"private"},{"id":57577,"nodeType":"FunctionDefinition","src":"8426:737:76","nodes":[],"body":{"id":57576,"nodeType":"Block","src":"8536:627:76","nodes":[],"statements":[{"expression":{"id":57557,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":57552,"name":"out_","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":57550,"src":"8546:4:76","typeDescriptions":{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes memory"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"arguments":[{"id":57555,"name":"_length","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":57547,"src":"8563:7:76","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"}],"id":57554,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"NewExpression","src":"8553:9:76","typeDescriptions":{"typeIdentifier":"t_function_objectcreation_pure$_t_uint256_$returns$_t_bytes_memory_ptr_$","typeString":"function (uint256) pure returns (bytes memory)"},"typeName":{"id":57553,"name":"bytes","nodeType":"ElementaryTypeName","src":"8557:5:76","typeDescriptions":{"typeIdentifier":"t_bytes_storage_ptr","typeString":"bytes"}}},"id":57556,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"8553:18:76","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes memory"}},"src":"8546:25:76","typeDescriptions":{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes memory"}},"id":57558,"nodeType":"ExpressionStatement","src":"8546:25:76"},{"condition":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":57561,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":57559,"name":"_length","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":57547,"src":"8585:7:76","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"==","rightExpression":{"hexValue":"30","id":57560,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"8596:1:76","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"},"src":"8585:12:76","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":57565,"nodeType":"IfStatement","src":"8581:54:76","trueBody":{"id":57564,"nodeType":"Block","src":"8599:36:76","statements":[{"expression":{"id":57562,"name":"out_","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":57550,"src":"8620:4:76","typeDescriptions":{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes memory"}},"functionReturnParameters":57551,"id":57563,"nodeType":"Return","src":"8613:11:76"}]}},{"assignments":[57567],"declarations":[{"constant":false,"id":57567,"mutability":"mutable","name":"src","nameLocation":"8859:3:76","nodeType":"VariableDeclaration","scope":57576,"src":"8851:11:76","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":57566,"name":"uint256","nodeType":"ElementaryTypeName","src":"8851:7:76","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"id":57574,"initialValue":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":57573,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"arguments":[{"id":57570,"name":"_src","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":57543,"src":"8886:4:76","typeDescriptions":{"typeIdentifier":"t_userDefinedValueType$_MemoryPointer_$57048","typeString":"RLPReader.MemoryPointer"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_userDefinedValueType$_MemoryPointer_$57048","typeString":"RLPReader.MemoryPointer"}],"expression":{"id":57568,"name":"MemoryPointer","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":57048,"src":"8865:13:76","typeDescriptions":{"typeIdentifier":"t_type$_t_userDefinedValueType$_MemoryPointer_$57048_$","typeString":"type(RLPReader.MemoryPointer)"}},"id":57569,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"memberLocation":"8879:6:76","memberName":"unwrap","nodeType":"MemberAccess","src":"8865:20:76","typeDescriptions":{"typeIdentifier":"t_function_unwrap_pure$_t_userDefinedValueType$_MemoryPointer_$57048_$returns$_t_uint256_$","typeString":"function (RLPReader.MemoryPointer) pure returns (uint256)"}},"id":57571,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"8865:26:76","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"+","rightExpression":{"id":57572,"name":"_offset","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":57545,"src":"8894:7:76","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"8865:36:76","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"VariableDeclarationStatement","src":"8851:50:76"},{"AST":{"nativeSrc":"8920:237:76","nodeType":"YulBlock","src":"8920:237:76","statements":[{"nativeSrc":"8934:25:76","nodeType":"YulVariableDeclaration","src":"8934:25:76","value":{"arguments":[{"name":"out_","nativeSrc":"8950:4:76","nodeType":"YulIdentifier","src":"8950:4:76"},{"kind":"number","nativeSrc":"8956:2:76","nodeType":"YulLiteral","src":"8956:2:76","type":"","value":"32"}],"functionName":{"name":"add","nativeSrc":"8946:3:76","nodeType":"YulIdentifier","src":"8946:3:76"},"nativeSrc":"8946:13:76","nodeType":"YulFunctionCall","src":"8946:13:76"},"variables":[{"name":"dest","nativeSrc":"8938:4:76","nodeType":"YulTypedName","src":"8938:4:76","type":""}]},{"nativeSrc":"8972:10:76","nodeType":"YulVariableDeclaration","src":"8972:10:76","value":{"kind":"number","nativeSrc":"8981:1:76","nodeType":"YulLiteral","src":"8981:1:76","type":"","value":"0"},"variables":[{"name":"i","nativeSrc":"8976:1:76","nodeType":"YulTypedName","src":"8976:1:76","type":""}]},{"body":{"nativeSrc":"9038:44:76","nodeType":"YulBlock","src":"9038:44:76","statements":[{"expression":{"arguments":[{"arguments":[{"name":"dest","nativeSrc":"9051:4:76","nodeType":"YulIdentifier","src":"9051:4:76"},{"name":"i","nativeSrc":"9057:1:76","nodeType":"YulIdentifier","src":"9057:1:76"}],"functionName":{"name":"add","nativeSrc":"9047:3:76","nodeType":"YulIdentifier","src":"9047:3:76"},"nativeSrc":"9047:12:76","nodeType":"YulFunctionCall","src":"9047:12:76"},{"arguments":[{"arguments":[{"name":"src","nativeSrc":"9071:3:76","nodeType":"YulIdentifier","src":"9071:3:76"},{"name":"i","nativeSrc":"9076:1:76","nodeType":"YulIdentifier","src":"9076:1:76"}],"functionName":{"name":"add","nativeSrc":"9067:3:76","nodeType":"YulIdentifier","src":"9067:3:76"},"nativeSrc":"9067:11:76","nodeType":"YulFunctionCall","src":"9067:11:76"}],"functionName":{"name":"mload","nativeSrc":"9061:5:76","nodeType":"YulIdentifier","src":"9061:5:76"},"nativeSrc":"9061:18:76","nodeType":"YulFunctionCall","src":"9061:18:76"}],"functionName":{"name":"mstore","nativeSrc":"9040:6:76","nodeType":"YulIdentifier","src":"9040:6:76"},"nativeSrc":"9040:40:76","nodeType":"YulFunctionCall","src":"9040:40:76"},"nativeSrc":"9040:40:76","nodeType":"YulExpressionStatement","src":"9040:40:76"}]},"condition":{"arguments":[{"name":"i","nativeSrc":"9006:1:76","nodeType":"YulIdentifier","src":"9006:1:76"},{"name":"_length","nativeSrc":"9009:7:76","nodeType":"YulIdentifier","src":"9009:7:76"}],"functionName":{"name":"lt","nativeSrc":"9003:2:76","nodeType":"YulIdentifier","src":"9003:2:76"},"nativeSrc":"9003:14:76","nodeType":"YulFunctionCall","src":"9003:14:76"},"nativeSrc":"8995:87:76","nodeType":"YulForLoop","post":{"nativeSrc":"9018:19:76","nodeType":"YulBlock","src":"9018:19:76","statements":[{"nativeSrc":"9020:15:76","nodeType":"YulAssignment","src":"9020:15:76","value":{"arguments":[{"name":"i","nativeSrc":"9029:1:76","nodeType":"YulIdentifier","src":"9029:1:76"},{"kind":"number","nativeSrc":"9032:2:76","nodeType":"YulLiteral","src":"9032:2:76","type":"","value":"32"}],"functionName":{"name":"add","nativeSrc":"9025:3:76","nodeType":"YulIdentifier","src":"9025:3:76"},"nativeSrc":"9025:10:76","nodeType":"YulFunctionCall","src":"9025:10:76"},"variableNames":[{"name":"i","nativeSrc":"9020:1:76","nodeType":"YulIdentifier","src":"9020:1:76"}]}]},"pre":{"nativeSrc":"8999:3:76","nodeType":"YulBlock","src":"8999:3:76","statements":[]},"src":"8995:87:76"},{"body":{"nativeSrc":"9114:33:76","nodeType":"YulBlock","src":"9114:33:76","statements":[{"expression":{"arguments":[{"arguments":[{"name":"dest","nativeSrc":"9127:4:76","nodeType":"YulIdentifier","src":"9127:4:76"},{"name":"_length","nativeSrc":"9133:7:76","nodeType":"YulIdentifier","src":"9133:7:76"}],"functionName":{"name":"add","nativeSrc":"9123:3:76","nodeType":"YulIdentifier","src":"9123:3:76"},"nativeSrc":"9123:18:76","nodeType":"YulFunctionCall","src":"9123:18:76"},{"kind":"number","nativeSrc":"9143:1:76","nodeType":"YulLiteral","src":"9143:1:76","type":"","value":"0"}],"functionName":{"name":"mstore","nativeSrc":"9116:6:76","nodeType":"YulIdentifier","src":"9116:6:76"},"nativeSrc":"9116:29:76","nodeType":"YulFunctionCall","src":"9116:29:76"},"nativeSrc":"9116:29:76","nodeType":"YulExpressionStatement","src":"9116:29:76"}]},"condition":{"arguments":[{"name":"i","nativeSrc":"9102:1:76","nodeType":"YulIdentifier","src":"9102:1:76"},{"name":"_length","nativeSrc":"9105:7:76","nodeType":"YulIdentifier","src":"9105:7:76"}],"functionName":{"name":"gt","nativeSrc":"9099:2:76","nodeType":"YulIdentifier","src":"9099:2:76"},"nativeSrc":"9099:14:76","nodeType":"YulFunctionCall","src":"9099:14:76"},"nativeSrc":"9096:51:76","nodeType":"YulIf","src":"9096:51:76"}]},"evmVersion":"cancun","externalReferences":[{"declaration":57547,"isOffset":false,"isSlot":false,"src":"9009:7:76","valueSize":1},{"declaration":57547,"isOffset":false,"isSlot":false,"src":"9105:7:76","valueSize":1},{"declaration":57547,"isOffset":false,"isSlot":false,"src":"9133:7:76","valueSize":1},{"declaration":57550,"isOffset":false,"isSlot":false,"src":"8950:4:76","valueSize":1},{"declaration":57567,"isOffset":false,"isSlot":false,"src":"9071:3:76","valueSize":1}],"id":57575,"nodeType":"InlineAssembly","src":"8911:246:76"}]},"documentation":{"id":57540,"nodeType":"StructuredDocumentation","src":"8172:249:76","text":"@notice Copies the bytes from a memory location.\n @param _src    Pointer to the location to read from.\n @param _offset Offset to start reading from.\n @param _length Number of bytes to read.\n @return out_ Copied bytes."},"implemented":true,"kind":"function","modifiers":[],"name":"_copy","nameLocation":"8435:5:76","parameters":{"id":57548,"nodeType":"ParameterList","parameters":[{"constant":false,"id":57543,"mutability":"mutable","name":"_src","nameLocation":"8455:4:76","nodeType":"VariableDeclaration","scope":57577,"src":"8441:18:76","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_userDefinedValueType$_MemoryPointer_$57048","typeString":"RLPReader.MemoryPointer"},"typeName":{"id":57542,"nodeType":"UserDefinedTypeName","pathNode":{"id":57541,"name":"MemoryPointer","nameLocations":["8441:13:76"],"nodeType":"IdentifierPath","referencedDeclaration":57048,"src":"8441:13:76"},"referencedDeclaration":57048,"src":"8441:13:76","typeDescriptions":{"typeIdentifier":"t_userDefinedValueType$_MemoryPointer_$57048","typeString":"RLPReader.MemoryPointer"}},"visibility":"internal"},{"constant":false,"id":57545,"mutability":"mutable","name":"_offset","nameLocation":"8469:7:76","nodeType":"VariableDeclaration","scope":57577,"src":"8461:15:76","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":57544,"name":"uint256","nodeType":"ElementaryTypeName","src":"8461:7:76","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":57547,"mutability":"mutable","name":"_length","nameLocation":"8486:7:76","nodeType":"VariableDeclaration","scope":57577,"src":"8478:15:76","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":57546,"name":"uint256","nodeType":"ElementaryTypeName","src":"8478:7:76","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"8440:54:76"},"returnParameters":{"id":57551,"nodeType":"ParameterList","parameters":[{"constant":false,"id":57550,"mutability":"mutable","name":"out_","nameLocation":"8530:4:76","nodeType":"VariableDeclaration","scope":57577,"src":"8517:17:76","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes"},"typeName":{"id":57549,"name":"bytes","nodeType":"ElementaryTypeName","src":"8517:5:76","typeDescriptions":{"typeIdentifier":"t_bytes_storage_ptr","typeString":"bytes"}},"visibility":"internal"}],"src":"8516:19:76"},"scope":57578,"stateMutability":"pure","virtual":false,"visibility":"private"}],"abstract":false,"baseContracts":[],"canonicalName":"RLPReader","contractDependencies":[],"contractKind":"library","documentation":{"id":57046,"nodeType":"StructuredDocumentation","src":"84:334:76","text":"@custom:attribution https://github.com/hamdiallam/Solidity-RLP\n @title RLPReader\n @notice RLPReader is a library for parsing RLP-encoded byte arrays into Solidity types. Adapted\n         from Solidity-RLP (https://github.com/hamdiallam/Solidity-RLP) by Hamdi Allam with\n         various tweaks to improve readability."},"fullyImplemented":true,"linearizedBaseContracts":[57578],"name":"RLPReader","nameLocation":"426:9:76","scope":57579,"usedErrors":[],"usedEvents":[]}],"license":"MIT"},"id":76}